@luma.gl/webgl 9.0.0-alpha.2 → 9.0.0-alpha.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/dist/adapter/converters/device-parameters.d.ts +11 -1
  2. package/dist/adapter/converters/device-parameters.d.ts.map +1 -1
  3. package/dist/adapter/converters/device-parameters.js +17 -35
  4. package/dist/adapter/converters/device-parameters.js.map +1 -1
  5. package/dist/adapter/converters/renderbuffer-formats.js +1 -5
  6. package/dist/adapter/converters/renderbuffer-formats.js.map +1 -1
  7. package/dist/adapter/converters/sampler-parameters.d.ts +4 -4
  8. package/dist/adapter/converters/sampler-parameters.d.ts.map +1 -1
  9. package/dist/adapter/converters/sampler-parameters.js +19 -55
  10. package/dist/adapter/converters/sampler-parameters.js.map +1 -1
  11. package/dist/adapter/converters/texture-formats.d.ts.map +1 -1
  12. package/dist/adapter/converters/texture-formats.js +13 -66
  13. package/dist/adapter/converters/texture-formats.js.map +1 -1
  14. package/dist/adapter/converters/vertex-formats.d.ts.map +1 -1
  15. package/dist/adapter/converters/vertex-formats.js +2 -8
  16. package/dist/adapter/converters/vertex-formats.js.map +1 -1
  17. package/dist/adapter/device-helpers/device-features.d.ts.map +1 -1
  18. package/dist/adapter/device-helpers/device-features.js +13 -20
  19. package/dist/adapter/device-helpers/device-features.js.map +1 -1
  20. package/dist/adapter/device-helpers/device-limits.js +1 -4
  21. package/dist/adapter/device-helpers/device-limits.js.map +1 -1
  22. package/dist/adapter/device-helpers/get-device-info.js +8 -10
  23. package/dist/adapter/device-helpers/get-device-info.js.map +1 -1
  24. package/dist/adapter/device-helpers/is-old-ie.js +2 -1
  25. package/dist/adapter/device-helpers/is-old-ie.js.map +1 -1
  26. package/dist/adapter/helpers/attribute-utils.js +0 -17
  27. package/dist/adapter/helpers/attribute-utils.js.map +1 -1
  28. package/dist/adapter/helpers/get-shader-info.d.ts +9 -0
  29. package/dist/adapter/helpers/get-shader-info.d.ts.map +1 -0
  30. package/dist/adapter/helpers/get-shader-info.js +25 -0
  31. package/dist/adapter/helpers/get-shader-info.js.map +1 -0
  32. package/dist/adapter/helpers/get-shader-layout.d.ts +1 -1
  33. package/dist/adapter/helpers/get-shader-layout.d.ts.map +1 -1
  34. package/dist/adapter/helpers/get-shader-layout.js +41 -67
  35. package/dist/adapter/helpers/get-shader-layout.js.map +1 -1
  36. package/dist/adapter/helpers/parse-shader-compiler-log.d.ts +1 -1
  37. package/dist/adapter/helpers/parse-shader-compiler-log.d.ts.map +1 -1
  38. package/dist/adapter/helpers/parse-shader-compiler-log.js +0 -7
  39. package/dist/adapter/helpers/parse-shader-compiler-log.js.map +1 -1
  40. package/dist/adapter/helpers/set-uniform.d.ts.map +1 -1
  41. package/dist/adapter/helpers/set-uniform.js +1 -31
  42. package/dist/adapter/helpers/set-uniform.js.map +1 -1
  43. package/dist/adapter/helpers/uniforms.d.ts +1 -1
  44. package/dist/adapter/helpers/uniforms.d.ts.map +1 -1
  45. package/dist/adapter/helpers/uniforms.js +4 -14
  46. package/dist/adapter/helpers/uniforms.js.map +1 -1
  47. package/dist/adapter/objects/constants-to-keys.d.ts.map +1 -1
  48. package/dist/adapter/objects/constants-to-keys.js +0 -7
  49. package/dist/adapter/objects/constants-to-keys.js.map +1 -1
  50. package/dist/adapter/objects/webgl-renderbuffer.d.ts.map +1 -1
  51. package/dist/adapter/objects/webgl-renderbuffer.js +5 -21
  52. package/dist/adapter/objects/webgl-renderbuffer.js.map +1 -1
  53. package/dist/adapter/objects/webgl-resource.d.ts +2 -4
  54. package/dist/adapter/objects/webgl-resource.d.ts.map +1 -1
  55. package/dist/adapter/objects/webgl-resource.js +14 -67
  56. package/dist/adapter/objects/webgl-resource.js.map +1 -1
  57. package/dist/adapter/objects/webgl-vertex-array-object.d.ts +1 -1
  58. package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +1 -1
  59. package/dist/adapter/objects/webgl-vertex-array-object.js +6 -16
  60. package/dist/adapter/objects/webgl-vertex-array-object.js.map +1 -1
  61. package/dist/adapter/resources/webgl-buffer.d.ts +1 -2
  62. package/dist/adapter/resources/webgl-buffer.d.ts.map +1 -1
  63. package/dist/adapter/resources/webgl-buffer.js +17 -48
  64. package/dist/adapter/resources/webgl-buffer.js.map +1 -1
  65. package/dist/adapter/resources/webgl-command-buffer.js +2 -17
  66. package/dist/adapter/resources/webgl-command-buffer.js.map +1 -1
  67. package/dist/adapter/resources/webgl-command-encoder.d.ts.map +1 -1
  68. package/dist/adapter/resources/webgl-command-encoder.js +1 -14
  69. package/dist/adapter/resources/webgl-command-encoder.js.map +1 -1
  70. package/dist/adapter/resources/webgl-external-texture.js.map +1 -1
  71. package/dist/adapter/resources/webgl-framebuffer.d.ts +1 -1
  72. package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -1
  73. package/dist/adapter/resources/webgl-framebuffer.js +9 -67
  74. package/dist/adapter/resources/webgl-framebuffer.js.map +1 -1
  75. package/dist/adapter/resources/webgl-render-pass.d.ts +1 -1
  76. package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -1
  77. package/dist/adapter/resources/webgl-render-pass.js +2 -7
  78. package/dist/adapter/resources/webgl-render-pass.js.map +1 -1
  79. package/dist/adapter/resources/webgl-render-pipeline.d.ts +1 -1
  80. package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -1
  81. package/dist/adapter/resources/webgl-render-pipeline.js +50 -139
  82. package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -1
  83. package/dist/adapter/resources/webgl-sampler.d.ts +3 -2
  84. package/dist/adapter/resources/webgl-sampler.d.ts.map +1 -1
  85. package/dist/adapter/resources/webgl-sampler.js +4 -12
  86. package/dist/adapter/resources/webgl-sampler.js.map +1 -1
  87. package/dist/adapter/resources/webgl-shader.d.ts +1 -2
  88. package/dist/adapter/resources/webgl-shader.d.ts.map +1 -1
  89. package/dist/adapter/resources/webgl-shader.js +7 -20
  90. package/dist/adapter/resources/webgl-shader.js.map +1 -1
  91. package/dist/adapter/resources/webgl-texture.d.ts +23 -23
  92. package/dist/adapter/resources/webgl-texture.d.ts.map +1 -1
  93. package/dist/adapter/resources/webgl-texture.js +65 -182
  94. package/dist/adapter/resources/webgl-texture.js.map +1 -1
  95. package/dist/adapter/webgl-canvas-context.d.ts.map +1 -1
  96. package/dist/adapter/webgl-canvas-context.js +5 -18
  97. package/dist/adapter/webgl-canvas-context.js.map +1 -1
  98. package/dist/adapter/webgl-device.d.ts +45 -29
  99. package/dist/adapter/webgl-device.d.ts.map +1 -1
  100. package/dist/adapter/webgl-device.js +107 -108
  101. package/dist/adapter/webgl-device.js.map +1 -1
  102. package/dist/classic/accessor.d.ts.map +1 -1
  103. package/dist/classic/accessor.js +11 -35
  104. package/dist/classic/accessor.js.map +1 -1
  105. package/dist/classic/buffer.d.ts +0 -1
  106. package/dist/classic/buffer.d.ts.map +1 -1
  107. package/dist/classic/buffer.js +29 -86
  108. package/dist/classic/buffer.js.map +1 -1
  109. package/dist/classic/typed-array-utils.d.ts +1 -1
  110. package/dist/classic/typed-array-utils.d.ts.map +1 -1
  111. package/dist/classic/typed-array-utils.js +0 -20
  112. package/dist/classic/typed-array-utils.js.map +1 -1
  113. package/dist/context/context/{create-context.d.ts → create-browser-context.d.ts} +2 -1
  114. package/dist/context/context/create-browser-context.d.ts.map +1 -0
  115. package/dist/context/context/{create-context.js → create-browser-context.js} +19 -15
  116. package/dist/context/context/create-browser-context.js.map +1 -0
  117. package/dist/context/context/create-headless-context.d.ts +9 -0
  118. package/dist/context/context/create-headless-context.d.ts.map +1 -0
  119. package/dist/context/context/create-headless-context.js +42 -0
  120. package/dist/context/context/create-headless-context.js.map +1 -0
  121. package/dist/context/context/webgl-checks.js +0 -3
  122. package/dist/context/context/webgl-checks.js.map +1 -1
  123. package/dist/context/debug/spector.d.ts +1 -0
  124. package/dist/context/debug/spector.d.ts.map +1 -1
  125. package/dist/context/debug/spector.js +7 -19
  126. package/dist/context/debug/spector.js.map +1 -1
  127. package/dist/context/debug/webgl-developer-tools.d.ts +1 -1
  128. package/dist/context/debug/webgl-developer-tools.d.ts.map +1 -1
  129. package/dist/context/debug/webgl-developer-tools.js +8 -32
  130. package/dist/context/debug/webgl-developer-tools.js.map +1 -1
  131. package/dist/context/parameters/unified-parameter-api.d.ts +6 -5
  132. package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -1
  133. package/dist/context/parameters/unified-parameter-api.js +8 -18
  134. package/dist/context/parameters/unified-parameter-api.js.map +1 -1
  135. package/dist/context/parameters/webgl-parameter-tables.d.ts +103 -103
  136. package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -1
  137. package/dist/context/parameters/webgl-parameter-tables.js +16 -34
  138. package/dist/context/parameters/webgl-parameter-tables.js.map +1 -1
  139. package/dist/context/polyfill/context-data.d.ts +13 -0
  140. package/dist/context/polyfill/context-data.d.ts.map +1 -0
  141. package/dist/context/polyfill/context-data.js +12 -0
  142. package/dist/context/polyfill/context-data.js.map +1 -0
  143. package/dist/context/polyfill/get-parameter-polyfill.d.ts +1 -1
  144. package/dist/context/polyfill/get-parameter-polyfill.d.ts.map +1 -1
  145. package/dist/context/polyfill/get-parameter-polyfill.js +1 -6
  146. package/dist/context/polyfill/get-parameter-polyfill.js.map +1 -1
  147. package/dist/context/polyfill/polyfill-context.js +20 -28
  148. package/dist/context/polyfill/polyfill-context.js.map +1 -1
  149. package/dist/context/polyfill/polyfill-table.d.ts +8 -8
  150. package/dist/context/polyfill/polyfill-table.d.ts.map +1 -1
  151. package/dist/context/polyfill/polyfill-table.js +8 -30
  152. package/dist/context/polyfill/polyfill-table.js.map +1 -1
  153. package/dist/context/polyfill/polyfill-vertex-array-object.d.ts.map +1 -1
  154. package/dist/context/polyfill/polyfill-vertex-array-object.js +0 -70
  155. package/dist/context/polyfill/polyfill-vertex-array-object.js.map +1 -1
  156. package/dist/context/state-tracker/deep-array-equal.js +0 -4
  157. package/dist/context/state-tracker/deep-array-equal.js.map +1 -1
  158. package/dist/context/state-tracker/track-context-state.d.ts.map +1 -1
  159. package/dist/context/state-tracker/track-context-state.js +15 -50
  160. package/dist/context/state-tracker/track-context-state.js.map +1 -1
  161. package/dist/context/state-tracker/with-parameters.d.ts +2 -1
  162. package/dist/context/state-tracker/with-parameters.d.ts.map +1 -1
  163. package/dist/context/state-tracker/with-parameters.js +7 -9
  164. package/dist/context/state-tracker/with-parameters.js.map +1 -1
  165. package/dist/dist.dev.js +9205 -0
  166. package/dist/index.cjs +5948 -0
  167. package/dist/index.d.ts +6 -6
  168. package/dist/index.d.ts.map +1 -1
  169. package/dist/index.js +24 -26
  170. package/dist/index.js.map +1 -1
  171. package/dist/types/webgl.d.ts +8 -7
  172. package/dist/types/webgl.d.ts.map +1 -1
  173. package/dist/types/webgl.js.map +1 -1
  174. package/dist/types.js.map +1 -1
  175. package/dist.min.js +36 -0
  176. package/package.json +18 -9
  177. package/src/adapter/converters/device-parameters.ts +44 -15
  178. package/src/adapter/converters/sampler-parameters.ts +18 -7
  179. package/src/adapter/converters/texture-formats.ts +18 -16
  180. package/src/adapter/converters/vertex-formats.ts +1 -0
  181. package/src/adapter/device-helpers/device-features.ts +9 -2
  182. package/src/adapter/device-helpers/device-limits.ts +1 -1
  183. package/src/adapter/device-helpers/get-device-info.ts +12 -8
  184. package/src/adapter/helpers/get-shader-info.ts +37 -0
  185. package/src/adapter/helpers/get-shader-layout.ts +58 -36
  186. package/src/adapter/helpers/parse-shader-compiler-log.ts +2 -2
  187. package/src/adapter/helpers/set-uniform.ts +3 -1
  188. package/src/adapter/helpers/uniforms.ts +21 -10
  189. package/src/adapter/objects/constants-to-keys.ts +4 -1
  190. package/src/adapter/objects/webgl-renderbuffer.ts +5 -5
  191. package/src/adapter/objects/webgl-resource.ts +7 -12
  192. package/src/adapter/objects/webgl-vertex-array-object.ts +5 -5
  193. package/src/adapter/resources/webgl-buffer.ts +14 -14
  194. package/src/adapter/resources/webgl-command-encoder.ts +5 -5
  195. package/src/adapter/resources/webgl-framebuffer.ts +14 -11
  196. package/src/adapter/resources/webgl-render-pass.ts +2 -1
  197. package/src/adapter/resources/webgl-render-pipeline.ts +83 -71
  198. package/src/adapter/resources/webgl-sampler.ts +10 -4
  199. package/src/adapter/resources/webgl-shader.ts +9 -8
  200. package/src/adapter/resources/webgl-texture.ts +51 -41
  201. package/src/adapter/webgl-canvas-context.ts +5 -6
  202. package/src/adapter/webgl-device.ts +144 -60
  203. package/src/classic/accessor.ts +1 -14
  204. package/src/classic/buffer.ts +14 -21
  205. package/src/classic/typed-array-utils.ts +4 -2
  206. package/src/context/context/{create-context.ts → create-browser-context.ts} +17 -7
  207. package/src/context/context/create-headless-context.ts +48 -0
  208. package/src/context/debug/spector.ts +6 -5
  209. package/src/context/debug/webgl-developer-tools.ts +13 -13
  210. package/src/context/parameters/unified-parameter-api.ts +17 -11
  211. package/src/context/parameters/webgl-parameter-tables.ts +113 -94
  212. package/src/context/polyfill/context-data.ts +27 -0
  213. package/src/context/polyfill/get-parameter-polyfill.ts +7 -6
  214. package/src/context/polyfill/polyfill-context.ts +6 -8
  215. package/src/context/polyfill/polyfill-table.ts +16 -14
  216. package/src/context/polyfill/polyfill-vertex-array-object.ts +2 -0
  217. package/src/context/state-tracker/track-context-state.ts +13 -12
  218. package/src/context/state-tracker/with-parameters.ts +8 -2
  219. package/src/index.ts +14 -12
  220. package/src/types/webgl.ts +10 -7
  221. package/dist/bundle.d.ts +0 -2
  222. package/dist/bundle.d.ts.map +0 -1
  223. package/dist/bundle.js +0 -5
  224. package/dist/bundle.js.map +0 -1
  225. package/dist/context/context/context-state.d.ts +0 -18
  226. package/dist/context/context/context-state.d.ts.map +0 -1
  227. package/dist/context/context/context-state.js +0 -26
  228. package/dist/context/context/context-state.js.map +0 -1
  229. package/dist/context/context/create-context.d.ts.map +0 -1
  230. package/dist/context/context/create-context.js.map +0 -1
  231. package/dist/context/context/device-pixels.d.ts +0 -25
  232. package/dist/context/context/device-pixels.d.ts.map +0 -1
  233. package/dist/context/context/device-pixels.js +0 -98
  234. package/dist/context/context/device-pixels.js.map +0 -1
  235. package/dist/es5/adapter/converters/device-parameters.js +0 -170
  236. package/dist/es5/adapter/converters/device-parameters.js.map +0 -1
  237. package/dist/es5/adapter/converters/renderbuffer-formats.js +0 -163
  238. package/dist/es5/adapter/converters/renderbuffer-formats.js.map +0 -1
  239. package/dist/es5/adapter/converters/sampler-parameters.js +0 -226
  240. package/dist/es5/adapter/converters/sampler-parameters.js.map +0 -1
  241. package/dist/es5/adapter/converters/texture-formats.js +0 -1031
  242. package/dist/es5/adapter/converters/texture-formats.js.map +0 -1
  243. package/dist/es5/adapter/converters/vertex-formats.js +0 -45
  244. package/dist/es5/adapter/converters/vertex-formats.js.map +0 -1
  245. package/dist/es5/adapter/device-helpers/device-features.js +0 -144
  246. package/dist/es5/adapter/device-helpers/device-features.js.map +0 -1
  247. package/dist/es5/adapter/device-helpers/device-limits.js +0 -64
  248. package/dist/es5/adapter/device-helpers/device-limits.js.map +0 -1
  249. package/dist/es5/adapter/device-helpers/get-device-info.js +0 -55
  250. package/dist/es5/adapter/device-helpers/get-device-info.js.map +0 -1
  251. package/dist/es5/adapter/device-helpers/is-old-ie.js +0 -16
  252. package/dist/es5/adapter/device-helpers/is-old-ie.js.map +0 -1
  253. package/dist/es5/adapter/helpers/attribute-utils.js +0 -91
  254. package/dist/es5/adapter/helpers/attribute-utils.js.map +0 -1
  255. package/dist/es5/adapter/helpers/get-shader-layout.js +0 -371
  256. package/dist/es5/adapter/helpers/get-shader-layout.js.map +0 -1
  257. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js +0 -72
  258. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js.map +0 -1
  259. package/dist/es5/adapter/helpers/set-uniform.js +0 -125
  260. package/dist/es5/adapter/helpers/set-uniform.js.map +0 -1
  261. package/dist/es5/adapter/helpers/uniforms.js +0 -112
  262. package/dist/es5/adapter/helpers/uniforms.js.map +0 -1
  263. package/dist/es5/adapter/objects/constants-to-keys.js +0 -54
  264. package/dist/es5/adapter/objects/constants-to-keys.js.map +0 -1
  265. package/dist/es5/adapter/objects/webgl-renderbuffer.js +0 -150
  266. package/dist/es5/adapter/objects/webgl-renderbuffer.js.map +0 -1
  267. package/dist/es5/adapter/objects/webgl-resource.js +0 -292
  268. package/dist/es5/adapter/objects/webgl-resource.js.map +0 -1
  269. package/dist/es5/adapter/objects/webgl-vertex-array-object.js +0 -137
  270. package/dist/es5/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  271. package/dist/es5/adapter/resources/webgl-buffer.js +0 -243
  272. package/dist/es5/adapter/resources/webgl-buffer.js.map +0 -1
  273. package/dist/es5/adapter/resources/webgl-command-buffer.js +0 -96
  274. package/dist/es5/adapter/resources/webgl-command-buffer.js.map +0 -1
  275. package/dist/es5/adapter/resources/webgl-command-encoder.js +0 -98
  276. package/dist/es5/adapter/resources/webgl-command-encoder.js.map +0 -1
  277. package/dist/es5/adapter/resources/webgl-external-texture.js +0 -2
  278. package/dist/es5/adapter/resources/webgl-external-texture.js.map +0 -1
  279. package/dist/es5/adapter/resources/webgl-framebuffer.js +0 -345
  280. package/dist/es5/adapter/resources/webgl-framebuffer.js.map +0 -1
  281. package/dist/es5/adapter/resources/webgl-render-pass.js +0 -61
  282. package/dist/es5/adapter/resources/webgl-render-pass.js.map +0 -1
  283. package/dist/es5/adapter/resources/webgl-render-pipeline.js +0 -505
  284. package/dist/es5/adapter/resources/webgl-render-pipeline.js.map +0 -1
  285. package/dist/es5/adapter/resources/webgl-sampler.js +0 -96
  286. package/dist/es5/adapter/resources/webgl-sampler.js.map +0 -1
  287. package/dist/es5/adapter/resources/webgl-shader.js +0 -149
  288. package/dist/es5/adapter/resources/webgl-shader.js.map +0 -1
  289. package/dist/es5/adapter/resources/webgl-texture.js +0 -986
  290. package/dist/es5/adapter/resources/webgl-texture.js.map +0 -1
  291. package/dist/es5/adapter/webgl-canvas-context.js +0 -97
  292. package/dist/es5/adapter/webgl-canvas-context.js.map +0 -1
  293. package/dist/es5/adapter/webgl-device.js +0 -399
  294. package/dist/es5/adapter/webgl-device.js.map +0 -1
  295. package/dist/es5/bundle.js +0 -7
  296. package/dist/es5/bundle.js.map +0 -1
  297. package/dist/es5/classic/accessor.js +0 -181
  298. package/dist/es5/classic/accessor.js.map +0 -1
  299. package/dist/es5/classic/buffer.js +0 -470
  300. package/dist/es5/classic/buffer.js.map +0 -1
  301. package/dist/es5/classic/typed-array-utils.js +0 -126
  302. package/dist/es5/classic/typed-array-utils.js.map +0 -1
  303. package/dist/es5/context/context/context-state.js +0 -31
  304. package/dist/es5/context/context/context-state.js.map +0 -1
  305. package/dist/es5/context/context/create-context.js +0 -69
  306. package/dist/es5/context/context/create-context.js.map +0 -1
  307. package/dist/es5/context/context/device-pixels.js +0 -115
  308. package/dist/es5/context/context/device-pixels.js.map +0 -1
  309. package/dist/es5/context/context/webgl-checks.js +0 -54
  310. package/dist/es5/context/context/webgl-checks.js.map +0 -1
  311. package/dist/es5/context/debug/spector.js +0 -133
  312. package/dist/es5/context/debug/spector.js.map +0 -1
  313. package/dist/es5/context/debug/webgl-developer-tools.js +0 -198
  314. package/dist/es5/context/debug/webgl-developer-tools.js.map +0 -1
  315. package/dist/es5/context/parameters/unified-parameter-api.js +0 -97
  316. package/dist/es5/context/parameters/unified-parameter-api.js.map +0 -1
  317. package/dist/es5/context/parameters/webgl-parameter-tables.js +0 -392
  318. package/dist/es5/context/parameters/webgl-parameter-tables.js.map +0 -1
  319. package/dist/es5/context/polyfill/get-parameter-polyfill.js +0 -81
  320. package/dist/es5/context/polyfill/get-parameter-polyfill.js.map +0 -1
  321. package/dist/es5/context/polyfill/polyfill-context.js +0 -135
  322. package/dist/es5/context/polyfill/polyfill-context.js.map +0 -1
  323. package/dist/es5/context/polyfill/polyfill-table.js +0 -166
  324. package/dist/es5/context/polyfill/polyfill-table.js.map +0 -1
  325. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js +0 -341
  326. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js.map +0 -1
  327. package/dist/es5/context/state-tracker/deep-array-equal.js +0 -28
  328. package/dist/es5/context/state-tracker/deep-array-equal.js.map +0 -1
  329. package/dist/es5/context/state-tracker/track-context-state.js +0 -211
  330. package/dist/es5/context/state-tracker/track-context-state.js.map +0 -1
  331. package/dist/es5/context/state-tracker/with-parameters.js +0 -44
  332. package/dist/es5/context/state-tracker/with-parameters.js.map +0 -1
  333. package/dist/es5/index.js +0 -276
  334. package/dist/es5/index.js.map +0 -1
  335. package/dist/es5/init.js +0 -10
  336. package/dist/es5/init.js.map +0 -1
  337. package/dist/es5/types/webgl.js +0 -6
  338. package/dist/es5/types/webgl.js.map +0 -1
  339. package/dist/es5/types.js +0 -2
  340. package/dist/es5/types.js.map +0 -1
  341. package/dist/esm/adapter/converters/device-parameters.js +0 -155
  342. package/dist/esm/adapter/converters/device-parameters.js.map +0 -1
  343. package/dist/esm/adapter/converters/renderbuffer-formats.js +0 -185
  344. package/dist/esm/adapter/converters/renderbuffer-formats.js.map +0 -1
  345. package/dist/esm/adapter/converters/sampler-parameters.js +0 -208
  346. package/dist/esm/adapter/converters/sampler-parameters.js.map +0 -1
  347. package/dist/esm/adapter/converters/texture-formats.js +0 -954
  348. package/dist/esm/adapter/converters/texture-formats.js.map +0 -1
  349. package/dist/esm/adapter/converters/vertex-formats.js +0 -35
  350. package/dist/esm/adapter/converters/vertex-formats.js.map +0 -1
  351. package/dist/esm/adapter/device-helpers/device-features.js +0 -102
  352. package/dist/esm/adapter/device-helpers/device-features.js.map +0 -1
  353. package/dist/esm/adapter/device-helpers/device-limits.js +0 -91
  354. package/dist/esm/adapter/device-helpers/device-limits.js.map +0 -1
  355. package/dist/esm/adapter/device-helpers/get-device-info.js +0 -44
  356. package/dist/esm/adapter/device-helpers/get-device-info.js.map +0 -1
  357. package/dist/esm/adapter/device-helpers/is-old-ie.js +0 -8
  358. package/dist/esm/adapter/device-helpers/is-old-ie.js.map +0 -1
  359. package/dist/esm/adapter/helpers/attribute-utils.js +0 -81
  360. package/dist/esm/adapter/helpers/attribute-utils.js.map +0 -1
  361. package/dist/esm/adapter/helpers/get-shader-layout.js +0 -306
  362. package/dist/esm/adapter/helpers/get-shader-layout.js.map +0 -1
  363. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js +0 -37
  364. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js.map +0 -1
  365. package/dist/esm/adapter/helpers/set-uniform.js +0 -115
  366. package/dist/esm/adapter/helpers/set-uniform.js.map +0 -1
  367. package/dist/esm/adapter/helpers/uniforms.js +0 -99
  368. package/dist/esm/adapter/helpers/uniforms.js.map +0 -1
  369. package/dist/esm/adapter/objects/constants-to-keys.js +0 -42
  370. package/dist/esm/adapter/objects/constants-to-keys.js.map +0 -1
  371. package/dist/esm/adapter/objects/webgl-renderbuffer.js +0 -94
  372. package/dist/esm/adapter/objects/webgl-renderbuffer.js.map +0 -1
  373. package/dist/esm/adapter/objects/webgl-resource.js +0 -216
  374. package/dist/esm/adapter/objects/webgl-resource.js.map +0 -1
  375. package/dist/esm/adapter/objects/webgl-vertex-array-object.js +0 -84
  376. package/dist/esm/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  377. package/dist/esm/adapter/resources/webgl-buffer.js +0 -164
  378. package/dist/esm/adapter/resources/webgl-buffer.js.map +0 -1
  379. package/dist/esm/adapter/resources/webgl-command-buffer.js +0 -65
  380. package/dist/esm/adapter/resources/webgl-command-buffer.js.map +0 -1
  381. package/dist/esm/adapter/resources/webgl-command-encoder.js +0 -53
  382. package/dist/esm/adapter/resources/webgl-command-encoder.js.map +0 -1
  383. package/dist/esm/adapter/resources/webgl-external-texture.js +0 -2
  384. package/dist/esm/adapter/resources/webgl-external-texture.js.map +0 -1
  385. package/dist/esm/adapter/resources/webgl-framebuffer.js +0 -265
  386. package/dist/esm/adapter/resources/webgl-framebuffer.js.map +0 -1
  387. package/dist/esm/adapter/resources/webgl-render-pass.js +0 -19
  388. package/dist/esm/adapter/resources/webgl-render-pass.js.map +0 -1
  389. package/dist/esm/adapter/resources/webgl-render-pipeline.js +0 -400
  390. package/dist/esm/adapter/resources/webgl-render-pipeline.js.map +0 -1
  391. package/dist/esm/adapter/resources/webgl-sampler.js +0 -50
  392. package/dist/esm/adapter/resources/webgl-sampler.js.map +0 -1
  393. package/dist/esm/adapter/resources/webgl-shader.js +0 -75
  394. package/dist/esm/adapter/resources/webgl-shader.js.map +0 -1
  395. package/dist/esm/adapter/resources/webgl-texture.js +0 -831
  396. package/dist/esm/adapter/resources/webgl-texture.js.map +0 -1
  397. package/dist/esm/adapter/webgl-canvas-context.js +0 -54
  398. package/dist/esm/adapter/webgl-canvas-context.js.map +0 -1
  399. package/dist/esm/adapter/webgl-device.js +0 -280
  400. package/dist/esm/adapter/webgl-device.js.map +0 -1
  401. package/dist/esm/bundle.js +0 -5
  402. package/dist/esm/bundle.js.map +0 -1
  403. package/dist/esm/classic/accessor.js +0 -144
  404. package/dist/esm/classic/accessor.js.map +0 -1
  405. package/dist/esm/classic/buffer.js +0 -384
  406. package/dist/esm/classic/buffer.js.map +0 -1
  407. package/dist/esm/classic/typed-array-utils.js +0 -112
  408. package/dist/esm/classic/typed-array-utils.js.map +0 -1
  409. package/dist/esm/context/context/context-state.js +0 -26
  410. package/dist/esm/context/context/context-state.js.map +0 -1
  411. package/dist/esm/context/context/create-context.js +0 -49
  412. package/dist/esm/context/context/create-context.js.map +0 -1
  413. package/dist/esm/context/context/device-pixels.js +0 -98
  414. package/dist/esm/context/context/device-pixels.js.map +0 -1
  415. package/dist/esm/context/context/webgl-checks.js +0 -34
  416. package/dist/esm/context/context/webgl-checks.js.map +0 -1
  417. package/dist/esm/context/debug/spector.js +0 -76
  418. package/dist/esm/context/debug/spector.js.map +0 -1
  419. package/dist/esm/context/debug/webgl-developer-tools.js +0 -121
  420. package/dist/esm/context/debug/webgl-developer-tools.js.map +0 -1
  421. package/dist/esm/context/parameters/unified-parameter-api.js +0 -65
  422. package/dist/esm/context/parameters/unified-parameter-api.js.map +0 -1
  423. package/dist/esm/context/parameters/webgl-parameter-tables.js +0 -445
  424. package/dist/esm/context/parameters/webgl-parameter-tables.js.map +0 -1
  425. package/dist/esm/context/polyfill/get-parameter-polyfill.js +0 -91
  426. package/dist/esm/context/polyfill/get-parameter-polyfill.js.map +0 -1
  427. package/dist/esm/context/polyfill/polyfill-context.js +0 -92
  428. package/dist/esm/context/polyfill/polyfill-context.js.map +0 -1
  429. package/dist/esm/context/polyfill/polyfill-table.js +0 -160
  430. package/dist/esm/context/polyfill/polyfill-table.js.map +0 -1
  431. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js +0 -335
  432. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js.map +0 -1
  433. package/dist/esm/context/state-tracker/deep-array-equal.js +0 -21
  434. package/dist/esm/context/state-tracker/deep-array-equal.js.map +0 -1
  435. package/dist/esm/context/state-tracker/track-context-state.js +0 -183
  436. package/dist/esm/context/state-tracker/track-context-state.js.map +0 -1
  437. package/dist/esm/context/state-tracker/with-parameters.js +0 -36
  438. package/dist/esm/context/state-tracker/with-parameters.js.map +0 -1
  439. package/dist/esm/index.js +0 -27
  440. package/dist/esm/index.js.map +0 -1
  441. package/dist/esm/init.js +0 -4
  442. package/dist/esm/init.js.map +0 -1
  443. package/dist/esm/types/webgl.js +0 -2
  444. package/dist/esm/types/webgl.js.map +0 -1
  445. package/dist/esm/types.js +0 -2
  446. package/dist/esm/types.js.map +0 -1
  447. package/dist/init.d.ts +0 -2
  448. package/dist/init.d.ts.map +0 -1
  449. package/dist/init.js +0 -4
  450. package/dist/init.js.map +0 -1
  451. package/src/bundle.ts +0 -4
  452. package/src/context/context/context-state.ts +0 -41
  453. package/src/context/context/device-pixels.ts +0 -152
  454. package/src/init.ts +0 -4
@@ -1,1031 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.checkTextureFeature = checkTextureFeature;
9
- exports.getTextureFeatures = getTextureFeatures;
10
- exports.isTextureFormatSupported = isTextureFormatSupported;
11
- exports.getTextureFormatSupport = getTextureFormatSupport;
12
- exports.isTextureFormatFilterable = isTextureFormatFilterable;
13
- exports.isTextureFormatRenderable = isTextureFormatRenderable;
14
- exports.getWebGLTextureFormat = getWebGLTextureFormat;
15
- exports.getWebGLTextureParameters = getWebGLTextureParameters;
16
- exports.getWebGLDepthStencilAttachment = getWebGLDepthStencilAttachment;
17
- exports._checkFloat32ColorAttachment = _checkFloat32ColorAttachment;
18
- exports.getTextureFormatBytesPerPixel = getTextureFormatBytesPerPixel;
19
- exports.getWebGLDataType = getWebGLDataType;
20
- exports.TEXTURE_FORMATS = void 0;
21
-
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
25
-
26
- var _api = require("@luma.gl/api");
27
-
28
- var _constants = _interopRequireDefault(require("@luma.gl/constants"));
29
-
30
- var _webglChecks = require("../../context/context/webgl-checks");
31
-
32
- var _DATA_FORMAT_CHANNELS, _TYPE_SIZES;
33
-
34
- var texture_compression_bc = 'texture-compression-bc';
35
- var texture_compression_astc = 'texture-compression-astc';
36
- var texture_compression_etc2 = 'texture-compression-etc2';
37
- var texture_compression_etc1_webgl = 'texture-compression-etc1-webgl';
38
- var texture_compression_pvrtc_webgl = 'texture-compression-pvrtc-webgl';
39
- var texture_compression_atc_webgl = 'texture-compression-atc-webgl';
40
- var X_S3TC = 'WEBGL_compressed_texture_s3tc';
41
- var X_S3TC_SRGB = 'WEBGL_compressed_texture_s3tc_srgb';
42
- var X_RGTC = 'EXT_texture_compression_rgtc';
43
- var X_BPTC = 'EXT_texture_compression_bptc';
44
- var X_ETC2 = 'WEBGL_compressed_texture_etc';
45
- var X_ASTC = 'WEBGL_compressed_texture_astc';
46
- var X_ETC1 = 'WEBGL_compressed_texture_etc1';
47
- var X_PVRTC = 'WEBGL_compressed_texture_pvrtc';
48
- var X_ATC = 'WEBGL_compressed_texture_atc';
49
- var EXT_SRGB = 'EXT_sRGB';
50
- var EXT_TEXTURE_NORM16 = 'EXT_texture_norm16';
51
- var EXT_FLOAT_WEBGL1 = 'WEBGL_color_buffer_float';
52
- var EXT_FLOAT_RENDER_WEBGL2 = 'EXT_color_buffer_float';
53
- var EXT_HALF_FLOAT_WEBGL1 = 'WEBGL_color_buffer_half_float';
54
-
55
- var checkExtension = function checkExtension(gl, extension) {
56
- return gl.getExtension(extension);
57
- };
58
-
59
- var checkExtensions = function checkExtensions(gl, extensions) {
60
- return extensions.every(function (extension) {
61
- return gl.getExtension(extension);
62
- });
63
- };
64
-
65
- var TEXTURE_FEATURE_CHECKS = {
66
- 'texture-blend-float-webgl1': function textureBlendFloatWebgl1(gl) {
67
- return (0, _webglChecks.isWebGL2)(gl) ? true : checkExtension(gl, 'EXT_float_blend');
68
- },
69
- 'texture-formats-srgb-webgl1': function textureFormatsSrgbWebgl1(gl) {
70
- return (0, _webglChecks.isWebGL2)(gl) ? true : checkExtension(gl, EXT_SRGB);
71
- },
72
- 'texture-formats-depth-webgl1': function textureFormatsDepthWebgl1(gl) {
73
- return (0, _webglChecks.isWebGL2)(gl) ? true : checkExtension(gl, 'WEBGL_depth_texture');
74
- },
75
- 'texture-formats-float32-webgl1': function textureFormatsFloat32Webgl1(gl) {
76
- return (0, _webglChecks.isWebGL2)(gl) ? true : checkExtension(gl, 'OES_texture_float');
77
- },
78
- 'texture-formats-float16-webgl1': function textureFormatsFloat16Webgl1(gl) {
79
- return (0, _webglChecks.isWebGL2)(gl) ? true : checkExtension(gl, 'OES_texture_half_float');
80
- },
81
- 'texture-formats-norm16-webgl': function textureFormatsNorm16Webgl(gl) {
82
- return (0, _webglChecks.isWebGL2)(gl) ? checkExtension(gl, EXT_TEXTURE_NORM16) : false;
83
- },
84
- 'texture-filter-linear-float32-webgl': function textureFilterLinearFloat32Webgl(gl) {
85
- return checkExtension(gl, 'OES_texture_float_linear');
86
- },
87
- 'texture-filter-linear-float16-webgl': function textureFilterLinearFloat16Webgl(gl) {
88
- return checkExtension(gl, 'OES_texture_half_float_linear');
89
- },
90
- 'texture-filter-anisotropic-webgl': function textureFilterAnisotropicWebgl(gl) {
91
- return checkExtension(gl, 'EXT_texture_filter_anisotropic');
92
- },
93
- 'texture-renderable-float32-webgl': function textureRenderableFloat32Webgl(gl) {
94
- return checkExtension(gl, 'EXT_color_buffer_float');
95
- },
96
- 'texture-renderable-float16-webgl': function textureRenderableFloat16Webgl(gl) {
97
- return checkExtension(gl, 'EXT_color_buffer_half_float');
98
- },
99
- 'texture-compression-bc': function textureCompressionBc(gl) {
100
- return checkExtensions(gl, [X_S3TC, X_S3TC_SRGB, X_RGTC, X_BPTC]);
101
- },
102
- 'texture-compression-bc5-webgl': function textureCompressionBc5Webgl(gl) {
103
- return checkExtensions(gl, [X_RGTC]);
104
- },
105
- 'texture-compression-etc2': function textureCompressionEtc2(gl) {
106
- return checkExtensions(gl, [X_ETC2]);
107
- },
108
- 'texture-compression-astc': function textureCompressionAstc(gl) {
109
- return checkExtensions(gl, [X_ASTC]);
110
- },
111
- 'texture-compression-etc1-webgl': function textureCompressionEtc1Webgl(gl) {
112
- return checkExtensions(gl, [X_ETC1]);
113
- },
114
- 'texture-compression-pvrtc-webgl': function textureCompressionPvrtcWebgl(gl) {
115
- return checkExtensions(gl, [X_PVRTC]);
116
- },
117
- 'texture-compression-atc-webgl': function textureCompressionAtcWebgl(gl) {
118
- return checkExtensions(gl, [X_ATC]);
119
- }
120
- };
121
-
122
- function checkTextureFeature(gl, feature) {
123
- var _TEXTURE_FEATURE_CHEC;
124
-
125
- return (_TEXTURE_FEATURE_CHEC = TEXTURE_FEATURE_CHECKS[feature]) === null || _TEXTURE_FEATURE_CHEC === void 0 ? void 0 : _TEXTURE_FEATURE_CHEC.call(TEXTURE_FEATURE_CHECKS, gl);
126
- }
127
-
128
- var checkTextureFeatures = function checkTextureFeatures(gl, features) {
129
- return features.every(function (feature) {
130
- return checkTextureFeature(gl, feature);
131
- });
132
- };
133
-
134
- function getTextureFeatures(gl) {
135
- var textureFeatures = Object.keys(TEXTURE_FEATURE_CHECKS);
136
- return textureFeatures.filter(function (feature) {
137
- return checkTextureFeature(gl, feature);
138
- });
139
- }
140
-
141
- var TEXTURE_FORMATS = {
142
- 'rgb8unorm-unsized': {
143
- gl: _constants.default.RGB,
144
- gl1: _constants.default.RGB,
145
- b: 4,
146
- c: 2,
147
- bpp: 4,
148
- dataFormat: _constants.default.RGB,
149
- types: [_constants.default.UNSIGNED_BYTE, _constants.default.UNSIGNED_SHORT_5_6_5]
150
- },
151
- 'rgba8unorm-unsized': {
152
- gl: _constants.default.RGBA,
153
- gl1: _constants.default.RGBA,
154
- b: 4,
155
- c: 2,
156
- bpp: 4,
157
- dataFormat: _constants.default.RGBA,
158
- types: [_constants.default.UNSIGNED_BYTE, _constants.default.UNSIGNED_SHORT_4_4_4_4, _constants.default.UNSIGNED_SHORT_5_5_5_1]
159
- },
160
- 'r8unorm': {
161
- gl: _constants.default.R8,
162
- b: 1,
163
- c: 1
164
- },
165
- 'r8snorm': {
166
- gl: _constants.default.R8_SNORM,
167
- b: 1,
168
- c: 1
169
- },
170
- 'r8uint': {
171
- gl: _constants.default.R8UI,
172
- b: 1,
173
- c: 1
174
- },
175
- 'r8sint': {
176
- gl: _constants.default.R8I,
177
- b: 1,
178
- c: 1
179
- },
180
- 'rg8unorm': {
181
- gl: _constants.default.RG8,
182
- b: 2,
183
- c: 2
184
- },
185
- 'rg8snorm': {
186
- gl: _constants.default.RG8_SNORM,
187
- b: 2,
188
- c: 2
189
- },
190
- 'rg8uint': {
191
- gl: _constants.default.RG8UI,
192
- b: 2,
193
- c: 2
194
- },
195
- 'rg8sint': {
196
- gl: _constants.default.RG8I,
197
- b: 2,
198
- c: 2
199
- },
200
- 'r16uint': {
201
- gl: _constants.default.R16UI,
202
- b: 2,
203
- c: 1
204
- },
205
- 'r16sint': {
206
- gl: _constants.default.R16I,
207
- b: 2,
208
- c: 1
209
- },
210
- 'r16float': {
211
- gl: _constants.default.R16F,
212
- b: 2,
213
- c: 1,
214
- render: 'texture-renderable-float16-webgl',
215
- filter: 'texture-filter-linear-float16-webgl'
216
- },
217
- 'r16unorm-webgl': {
218
- gl: _constants.default.R16_EXT,
219
- b: 2,
220
- c: 1,
221
- f: 'texture-formats-norm16-webgl'
222
- },
223
- 'r16snorm-webgl': {
224
- gl: _constants.default.R16_SNORM_EXT,
225
- b: 2,
226
- c: 1,
227
- f: 'texture-formats-norm16-webgl'
228
- },
229
- 'rgba4unorm-webgl': {
230
- gl: _constants.default.RGBA4,
231
- b: 2,
232
- c: 4,
233
- wgpu: false
234
- },
235
- 'rgb565unorm-webgl': {
236
- gl: _constants.default.RGB565,
237
- b: 2,
238
- c: 4,
239
- wgpu: false
240
- },
241
- 'rgb5a1unorm-webgl': {
242
- gl: _constants.default.RGB5_A1,
243
- b: 2,
244
- c: 4,
245
- wgpu: false
246
- },
247
- 'rbg8unorm-webgl': {
248
- gl: _constants.default.RGB8,
249
- b: 3,
250
- c: 3,
251
- wgpu: false
252
- },
253
- 'rbg8snorm-webgl': {
254
- gl: _constants.default.RGB8_SNORM,
255
- b: 3,
256
- c: 3,
257
- wgpu: false
258
- },
259
- 'rgba8unorm': {
260
- gl: _constants.default.RGBA8,
261
- gl1: _constants.default.RGBA,
262
- b: 4,
263
- c: 2,
264
- bpp: 4
265
- },
266
- 'rgba8unorm-srgb': {
267
- gl: _constants.default.SRGB8_ALPHA8,
268
- gl1: _constants.default.SRGB_ALPHA_EXT,
269
- b: 4,
270
- c: 4,
271
- gl1ext: EXT_SRGB,
272
- bpp: 4
273
- },
274
- 'rgba8snorm': {
275
- gl: _constants.default.RGBA8_SNORM,
276
- b: 4,
277
- c: 4
278
- },
279
- 'rgba8uint': {
280
- gl: _constants.default.RGBA8UI,
281
- b: 4,
282
- c: 4,
283
- bpp: 4
284
- },
285
- 'rgba8sint': {
286
- gl: _constants.default.RGBA8I,
287
- b: 4,
288
- c: 4,
289
- bpp: 4
290
- },
291
- 'bgra8unorm': {
292
- b: 4,
293
- c: 4
294
- },
295
- 'bgra8unorm-srgb': {
296
- b: 4,
297
- c: 4
298
- },
299
- 'rg16uint': {
300
- gl: _constants.default.RG16UI,
301
- b: 4,
302
- c: 1,
303
- bpp: 4
304
- },
305
- 'rg16sint': {
306
- gl: _constants.default.RG16I,
307
- b: 4,
308
- c: 2,
309
- bpp: 4
310
- },
311
- 'rg16float': {
312
- gl: _constants.default.RG16F,
313
- bpp: 4,
314
- b: 4,
315
- c: 2,
316
- render: 'texture-renderable-float16-webgl',
317
- filter: 'texture-filter-linear-float16-webgl'
318
- },
319
- 'rg16unorm-webgl': {
320
- gl: _constants.default.RG16_EXT,
321
- b: 2,
322
- c: 2,
323
- f: 'texture-formats-norm16-webgl'
324
- },
325
- 'rg16snorm-webgl': {
326
- gl: _constants.default.RG16_SNORM_EXT,
327
- b: 2,
328
- c: 2,
329
- f: 'texture-formats-norm16-webgl'
330
- },
331
- 'r32uint': {
332
- gl: _constants.default.R32UI,
333
- b: 4,
334
- c: 1,
335
- bpp: 4
336
- },
337
- 'r32sint': {
338
- gl: _constants.default.R32I,
339
- b: 4,
340
- c: 1,
341
- bpp: 4
342
- },
343
- 'r32float': {
344
- gl: _constants.default.R32F,
345
- bpp: 4,
346
- b: 4,
347
- c: 1,
348
- render: 'texture-renderable-float32-webgl',
349
- filter: 'texture-filter-linear-float32-webgl'
350
- },
351
- 'rgb9e5ufloat': {
352
- gl: _constants.default.RGB9_E5,
353
- b: 4,
354
- c: 3,
355
- p: 1,
356
- render: 'texture-renderable-float16-webgl',
357
- filter: 'texture-filter-linear-float16-webgl'
358
- },
359
- 'rg11b10ufloat': {
360
- gl: _constants.default.R11F_G11F_B10F,
361
- b: 4,
362
- c: 3,
363
- p: 1,
364
- render: 'texture-renderable-float32-webgl'
365
- },
366
- 'rgb10a2unorm': {
367
- gl: _constants.default.RGB10_A2,
368
- b: 4,
369
- c: 4,
370
- p: 1
371
- },
372
- 'rgb10a2unorm-webgl': {
373
- b: 4,
374
- c: 4,
375
- gl: _constants.default.RGB10_A2UI,
376
- p: 1,
377
- wgpu: false,
378
- bpp: 4
379
- },
380
- 'rgb16unorm-webgl': {
381
- gl: _constants.default.RGB16_EXT,
382
- b: 2,
383
- c: 3,
384
- f: 'texture-formats-norm16-webgl'
385
- },
386
- 'rgb16snorm-webgl': {
387
- gl: _constants.default.RGB16_SNORM_EXT,
388
- b: 2,
389
- c: 3,
390
- f: 'texture-formats-norm16-webgl'
391
- },
392
- 'rg32uint': {
393
- gl: _constants.default.RG32UI,
394
- b: 8,
395
- c: 2
396
- },
397
- 'rg32sint': {
398
- gl: _constants.default.RG32I,
399
- b: 8,
400
- c: 2
401
- },
402
- 'rg32float': {
403
- gl: _constants.default.RG32F,
404
- b: 8,
405
- c: 2,
406
- render: 'texture-renderable-float32-webgl',
407
- filter: 'texture-filter-linear-float32-webgl'
408
- },
409
- 'rgba16uint': {
410
- gl: _constants.default.RGBA16UI,
411
- b: 8,
412
- c: 4
413
- },
414
- 'rgba16sint': {
415
- gl: _constants.default.RGBA16I,
416
- b: 8,
417
- c: 4
418
- },
419
- 'rgba16float': {
420
- gl: _constants.default.RGBA16F,
421
- gl1: _constants.default.RGBA,
422
- b: 8,
423
- c: 4,
424
- render: 'texture-renderable-float16-webgl',
425
- filter: 'texture-filter-linear-float16-webgl'
426
- },
427
- 'rgba16unorm-webgl': {
428
- gl: _constants.default.RGBA16_EXT,
429
- b: 2,
430
- c: 4,
431
- f: 'texture-formats-norm16-webgl'
432
- },
433
- 'rgba16snorm-webgl': {
434
- gl: _constants.default.RGBA16_SNORM_EXT,
435
- b: 2,
436
- c: 4,
437
- f: 'texture-formats-norm16-webgl'
438
- },
439
- 'rgb32float-webgl': {
440
- gl: _constants.default.RGB32F,
441
- gl1: _constants.default.RGB,
442
- render: 'texture-renderable-float32-webgl',
443
- filter: 'texture-filter-linear-float32-webgl',
444
- gl2ext: EXT_FLOAT_RENDER_WEBGL2,
445
- gl1ext: EXT_FLOAT_WEBGL1,
446
- dataFormat: _constants.default.RGB,
447
- types: [_constants.default.FLOAT]
448
- },
449
- 'rgba32uint': {
450
- gl: _constants.default.RGBA32UI,
451
- b: 16,
452
- c: 4
453
- },
454
- 'rgba32sint': {
455
- gl: _constants.default.RGBA32I,
456
- b: 16,
457
- c: 4
458
- },
459
- 'rgba32float': {
460
- gl: _constants.default.RGBA32F,
461
- gl1: _constants.default.RGBA,
462
- b: 16,
463
- c: 4,
464
- render: 'texture-renderable-float32-webgl',
465
- filter: 'texture-filter-linear-float32-webgl'
466
- },
467
- 'stencil8': {
468
- gl: _constants.default.STENCIL_INDEX8,
469
- b: 1,
470
- c: 1,
471
- attachment: _constants.default.STENCIL_ATTACHMENT
472
- },
473
- 'depth16unorm': {
474
- gl: _constants.default.DEPTH_COMPONENT16,
475
- gl1: _constants.default.DEPTH_COMPONENT16,
476
- b: 2,
477
- c: 1,
478
- attachment: _constants.default.DEPTH_ATTACHMENT
479
- },
480
- 'depth24plus': {
481
- gl: _constants.default.DEPTH_COMPONENT24,
482
- b: 3,
483
- c: 1,
484
- attachment: _constants.default.DEPTH_ATTACHMENT
485
- },
486
- 'depth32float': {
487
- gl: _constants.default.DEPTH_COMPONENT32F,
488
- b: 4,
489
- c: 1,
490
- attachment: _constants.default.DEPTH_ATTACHMENT
491
- },
492
- 'depth24plus-stencil8': {
493
- b: 4,
494
- gl: _constants.default.UNSIGNED_INT_24_8,
495
- gl1: _constants.default.DEPTH_STENCIL,
496
- c: 2,
497
- p: 1,
498
- attachment: _constants.default.DEPTH_STENCIL_ATTACHMENT
499
- },
500
- 'depth24unorm-stencil8': {
501
- gl: _constants.default.DEPTH24_STENCIL8,
502
- b: 4,
503
- c: 2,
504
- p: 1,
505
- attachment: _constants.default.DEPTH_STENCIL_ATTACHMENT
506
- },
507
- "depth32float-stencil8": {
508
- gl: _constants.default.DEPTH32F_STENCIL8,
509
- b: 5,
510
- c: 2,
511
- p: 1,
512
- attachment: _constants.default.DEPTH_STENCIL_ATTACHMENT
513
- },
514
- 'bc1-rgb-unorm-webgl': {
515
- gl: _constants.default.COMPRESSED_RGB_S3TC_DXT1_EXT,
516
- x: X_S3TC,
517
- f: texture_compression_bc
518
- },
519
- 'bc1-rgb-unorm-srgb-webgl': {
520
- gl: _constants.default.COMPRESSED_SRGB_S3TC_DXT1_EXT,
521
- x: X_S3TC_SRGB,
522
- f: texture_compression_bc
523
- },
524
- 'bc1-rgba-unorm': {
525
- gl: _constants.default.COMPRESSED_RGBA_S3TC_DXT1_EXT,
526
- x: X_S3TC,
527
- f: texture_compression_bc
528
- },
529
- 'bc1-rgba-unorm-srgb': {
530
- gl: _constants.default.COMPRESSED_SRGB_S3TC_DXT1_EXT,
531
- x: X_S3TC_SRGB,
532
- f: texture_compression_bc
533
- },
534
- 'bc2-rgba-unorm': {
535
- gl: _constants.default.COMPRESSED_RGBA_S3TC_DXT3_EXT,
536
- x: X_S3TC,
537
- f: texture_compression_bc
538
- },
539
- 'bc2-rgba-unorm-srgb': {
540
- gl: _constants.default.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
541
- x: X_S3TC_SRGB,
542
- f: texture_compression_bc
543
- },
544
- 'bc3-rgba-unorm': {
545
- gl: _constants.default.COMPRESSED_RGBA_S3TC_DXT5_EXT,
546
- x: X_S3TC,
547
- f: texture_compression_bc
548
- },
549
- 'bc3-rgba-unorm-srgb': {
550
- gl: _constants.default.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
551
- x: X_S3TC_SRGB,
552
- f: texture_compression_bc
553
- },
554
- 'bc4-r-unorm': {
555
- gl: _constants.default.COMPRESSED_RED_RGTC1_EXT,
556
- x: X_RGTC,
557
- f: texture_compression_bc
558
- },
559
- 'bc4-r-snorm': {
560
- gl: _constants.default.COMPRESSED_SIGNED_RED_RGTC1_EXT,
561
- x: X_RGTC,
562
- f: texture_compression_bc
563
- },
564
- 'bc5-rg-unorm': {
565
- gl: _constants.default.COMPRESSED_RED_GREEN_RGTC2_EXT,
566
- x: X_RGTC,
567
- f: texture_compression_bc
568
- },
569
- 'bc5-rg-snorm': {
570
- gl: _constants.default.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
571
- x: X_RGTC,
572
- f: texture_compression_bc
573
- },
574
- 'bc6h-rgb-ufloat': {
575
- gl: _constants.default.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT,
576
- x: X_BPTC,
577
- f: texture_compression_bc
578
- },
579
- 'bc6h-rgb-float': {
580
- gl: _constants.default.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT,
581
- x: X_BPTC,
582
- f: texture_compression_bc
583
- },
584
- 'bc7-rgba-unorm': {
585
- gl: _constants.default.COMPRESSED_RGBA_BPTC_UNORM_EXT,
586
- x: X_BPTC,
587
- f: texture_compression_bc
588
- },
589
- 'bc7-rgba-unorm-srgb': {
590
- gl: _constants.default.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT,
591
- x: X_BPTC,
592
- f: texture_compression_bc
593
- },
594
- 'etc2-rgb8unorm': {
595
- gl: _constants.default.COMPRESSED_RGB8_ETC2,
596
- f: texture_compression_etc2
597
- },
598
- 'etc2-rgb8unorm-srgb': {
599
- gl: _constants.default.COMPRESSED_SRGB8_ETC2,
600
- f: texture_compression_etc2
601
- },
602
- 'etc2-rgb8a1unorm': {
603
- gl: _constants.default.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
604
- f: texture_compression_etc2
605
- },
606
- 'etc2-rgb8a1unorm-srgb': {
607
- gl: _constants.default.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
608
- f: texture_compression_etc2
609
- },
610
- 'etc2-rgba8unorm': {
611
- gl: _constants.default.COMPRESSED_RGBA8_ETC2_EAC,
612
- f: texture_compression_etc2
613
- },
614
- 'etc2-rgba8unorm-srgb': {
615
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
616
- f: texture_compression_etc2
617
- },
618
- 'eac-r11unorm': {
619
- gl: _constants.default.COMPRESSED_R11_EAC,
620
- f: texture_compression_etc2
621
- },
622
- 'eac-r11snorm': {
623
- gl: _constants.default.COMPRESSED_SIGNED_R11_EAC,
624
- f: texture_compression_etc2
625
- },
626
- 'eac-rg11unorm': {
627
- gl: _constants.default.COMPRESSED_RG11_EAC,
628
- f: texture_compression_etc2
629
- },
630
- 'eac-rg11snorm': {
631
- gl: _constants.default.COMPRESSED_SIGNED_RG11_EAC,
632
- f: texture_compression_etc2
633
- },
634
- 'astc-4x4-unorm': {
635
- gl: _constants.default.COMPRESSED_RGBA_ASTC_4x4_KHR,
636
- f: texture_compression_astc
637
- },
638
- 'astc-4x4-unorm-srgb': {
639
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
640
- f: texture_compression_astc
641
- },
642
- 'astc-5x4-unorm': {
643
- gl: _constants.default.COMPRESSED_RGBA_ASTC_5x4_KHR,
644
- f: texture_compression_astc
645
- },
646
- 'astc-5x4-unorm-srgb': {
647
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR,
648
- f: texture_compression_astc
649
- },
650
- 'astc-5x5-unorm': {
651
- gl: _constants.default.COMPRESSED_RGBA_ASTC_5x5_KHR,
652
- f: texture_compression_astc
653
- },
654
- 'astc-5x5-unorm-srgb': {
655
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
656
- f: texture_compression_astc
657
- },
658
- 'astc-6x5-unorm': {
659
- gl: _constants.default.COMPRESSED_RGBA_ASTC_6x5_KHR,
660
- f: texture_compression_astc
661
- },
662
- 'astc-6x5-unorm-srgb': {
663
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
664
- f: texture_compression_astc
665
- },
666
- 'astc-6x6-unorm': {
667
- gl: _constants.default.COMPRESSED_RGBA_ASTC_6x6_KHR,
668
- f: texture_compression_astc
669
- },
670
- 'astc-6x6-unorm-srgb': {
671
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
672
- f: texture_compression_astc
673
- },
674
- 'astc-8x5-unorm': {
675
- gl: _constants.default.COMPRESSED_RGBA_ASTC_8x5_KHR,
676
- f: texture_compression_astc
677
- },
678
- 'astc-8x5-unorm-srgb': {
679
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
680
- f: texture_compression_astc
681
- },
682
- 'astc-8x6-unorm': {
683
- gl: _constants.default.COMPRESSED_RGBA_ASTC_8x6_KHR,
684
- f: texture_compression_astc
685
- },
686
- 'astc-8x6-unorm-srgb': {
687
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
688
- f: texture_compression_astc
689
- },
690
- 'astc-8x8-unorm': {
691
- gl: _constants.default.COMPRESSED_RGBA_ASTC_8x8_KHR,
692
- f: texture_compression_astc
693
- },
694
- 'astc-8x8-unorm-srgb': {
695
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
696
- f: texture_compression_astc
697
- },
698
- 'astc-10x5-unorm': {
699
- gl: _constants.default.COMPRESSED_RGBA_ASTC_10x10_KHR,
700
- f: texture_compression_astc
701
- },
702
- 'astc-10x5-unorm-srgb': {
703
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
704
- f: texture_compression_astc
705
- },
706
- 'astc-10x6-unorm': {
707
- gl: _constants.default.COMPRESSED_RGBA_ASTC_10x6_KHR,
708
- f: texture_compression_astc
709
- },
710
- 'astc-10x6-unorm-srgb': {
711
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
712
- f: texture_compression_astc
713
- },
714
- 'astc-10x8-unorm': {
715
- gl: _constants.default.COMPRESSED_RGBA_ASTC_10x8_KHR,
716
- f: texture_compression_astc
717
- },
718
- 'astc-10x8-unorm-srgb': {
719
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
720
- f: texture_compression_astc
721
- },
722
- 'astc-10x10-unorm': {
723
- gl: _constants.default.COMPRESSED_RGBA_ASTC_10x10_KHR,
724
- f: texture_compression_astc
725
- },
726
- 'astc-10x10-unorm-srgb': {
727
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
728
- f: texture_compression_astc
729
- },
730
- 'astc-12x10-unorm': {
731
- gl: _constants.default.COMPRESSED_RGBA_ASTC_12x10_KHR,
732
- f: texture_compression_astc
733
- },
734
- 'astc-12x10-unorm-srgb': {
735
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
736
- f: texture_compression_astc
737
- },
738
- 'astc-12x12-unorm': {
739
- gl: _constants.default.COMPRESSED_RGBA_ASTC_12x12_KHR,
740
- f: texture_compression_astc
741
- },
742
- 'astc-12x12-unorm-srgb': {
743
- gl: _constants.default.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
744
- f: texture_compression_astc
745
- },
746
- 'pvrtc-rgb4unorm-webgl': {
747
- gl: _constants.default.COMPRESSED_RGB_PVRTC_4BPPV1_IMG,
748
- f: texture_compression_pvrtc_webgl
749
- },
750
- 'pvrtc-rgba4unorm-webgl': {
751
- gl: _constants.default.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
752
- f: texture_compression_pvrtc_webgl
753
- },
754
- 'pvrtc-rbg2unorm-webgl': {
755
- gl: _constants.default.COMPRESSED_RGB_PVRTC_2BPPV1_IMG,
756
- f: texture_compression_pvrtc_webgl
757
- },
758
- 'pvrtc-rgba2unorm-webgl': {
759
- gl: _constants.default.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
760
- f: texture_compression_pvrtc_webgl
761
- },
762
- 'etc1-rbg-unorm-webgl': {
763
- gl: _constants.default.COMPRESSED_RGB_ETC1_WEBGL,
764
- f: texture_compression_etc1_webgl
765
- },
766
- 'atc-rgb-unorm-webgl': {
767
- gl: _constants.default.COMPRESSED_RGB_ATC_WEBGL,
768
- f: texture_compression_atc_webgl
769
- },
770
- 'atc-rgba-unorm-webgl': {
771
- gl: _constants.default.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,
772
- f: texture_compression_atc_webgl
773
- },
774
- 'atc-rgbai-unorm-webgl': {
775
- gl: _constants.default.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL,
776
- f: texture_compression_atc_webgl
777
- }
778
- };
779
- exports.TEXTURE_FORMATS = TEXTURE_FORMATS;
780
-
781
- function getTextureFormat(format) {
782
- if (typeof format === 'string') {
783
- return format;
784
- }
785
-
786
- var entry = Object.entries(TEXTURE_FORMATS).find(function (_ref) {
787
- var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
788
- entry = _ref2[1];
789
-
790
- return entry.gl === format || entry.gl1 === format;
791
- });
792
-
793
- if (!entry) {
794
- throw new Error("Unknown texture format ".concat(format));
795
- }
796
-
797
- return entry[0];
798
- }
799
-
800
- function isTextureFormatSupported(gl, formatOrGL) {
801
- var format = getTextureFormat(formatOrGL);
802
- var info = TEXTURE_FORMATS[format];
803
-
804
- if (!info) {
805
- return false;
806
- }
807
-
808
- if ((0, _webglChecks.isWebGL2)(gl) ? info.gl === undefined : info.gl1 === undefined) {
809
- return false;
810
- }
811
-
812
- var extension = info.x || ((0, _webglChecks.isWebGL2)(gl) ? info.gl2ext || info.gl1ext : info.gl1ext);
813
-
814
- if (extension) {
815
- return Boolean(gl.getExtension(extension));
816
- }
817
-
818
- return true;
819
- }
820
-
821
- function getTextureFormatSupport(gl, formatOrGL) {
822
- var format = getTextureFormat(formatOrGL);
823
- var info = TEXTURE_FORMATS[format];
824
-
825
- if (!info) {
826
- return {
827
- supported: false
828
- };
829
- }
830
-
831
- var decoded;
832
-
833
- try {
834
- decoded = (0, _api.decodeTextureFormat)(format);
835
- } catch (_unused) {}
836
-
837
- var supported = (0, _webglChecks.isWebGL2)(gl) ? info.gl === undefined : info.gl1 === undefined;
838
- supported = supported && checkTextureFeatures(gl, [info.f]);
839
- var filterable = info.filter ? checkTextureFeatures(gl, [info.filter]) : decoded && !decoded.signed;
840
- var renderable = info.filter ? checkTextureFeatures(gl, [info.render]) : decoded && !decoded.signed;
841
- return {
842
- supported: supported,
843
- renderable: supported && checkTextureFeatures(gl, [info.render]),
844
- filterable: supported && checkTextureFeatures(gl, [info.filter]),
845
- blendable: false,
846
- storable: false
847
- };
848
- }
849
-
850
- function isTextureFormatFilterable(gl, formatOrGL) {
851
- var format = getTextureFormat(formatOrGL);
852
-
853
- if (!isTextureFormatSupported(gl, format)) {
854
- return false;
855
- }
856
-
857
- try {
858
- var decoded = (0, _api.decodeTextureFormat)(format);
859
-
860
- if (decoded.signed) {
861
- return false;
862
- }
863
- } catch (_unused2) {
864
- return false;
865
- }
866
-
867
- if (format.endsWith('32float')) {
868
- return Boolean(gl.getExtension('OES_texture_float_linear'));
869
- }
870
-
871
- if (format.endsWith('16float')) {
872
- return Boolean(gl.getExtension('OES_texture_half_float_linear'));
873
- }
874
-
875
- return true;
876
- }
877
-
878
- function isTextureFormatRenderable(gl, formatOrGL) {
879
- var format = getTextureFormat(formatOrGL);
880
-
881
- if (!isTextureFormatSupported(gl, format)) {
882
- return false;
883
- }
884
-
885
- if (typeof format === 'number') {
886
- return false;
887
- }
888
-
889
- return true;
890
- }
891
-
892
- function getWebGLTextureFormat(gl, formatOrGL) {
893
- var format = getTextureFormat(formatOrGL);
894
- var formatInfo = TEXTURE_FORMATS[format];
895
- var webglFormat = (0, _webglChecks.isWebGL2)(gl) ? formatInfo === null || formatInfo === void 0 ? void 0 : formatInfo.gl : formatInfo === null || formatInfo === void 0 ? void 0 : formatInfo.gl1;
896
-
897
- if (typeof format === 'number') {
898
- return webglFormat || format;
899
- }
900
-
901
- if (webglFormat === undefined) {
902
- throw new Error("Unsupported texture format ".concat(format));
903
- }
904
-
905
- return webglFormat;
906
- }
907
-
908
- function getWebGLTextureParameters(gl, formatOrGL) {
909
- var format = getTextureFormat(formatOrGL);
910
- var webglFormat = getWebGLTextureFormat(gl, format);
911
- var decoded = (0, _api.decodeTextureFormat)(format);
912
- return {
913
- format: webglFormat,
914
- dataFormat: getWebGLPixelDataFormat(decoded.format, decoded.integer, decoded.normalized, webglFormat),
915
- type: getWebGLDataType(decoded.dataType),
916
- compressed: decoded.compressed
917
- };
918
- }
919
-
920
- function getWebGLDepthStencilAttachment(formatOrGL) {
921
- var format = getTextureFormat(formatOrGL);
922
-
923
- if (typeof format === 'number') {
924
- throw new Error('unsupported depth stencil format');
925
- }
926
-
927
- var info = TEXTURE_FORMATS[format];
928
- var attachment = info.attachment;
929
-
930
- if (!attachment) {
931
- throw new Error('not a depth stencil format');
932
- }
933
-
934
- return attachment;
935
- }
936
-
937
- function _checkFloat32ColorAttachment(gl) {
938
- var internalFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : gl.RGBA;
939
- var srcFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _constants.default.RGBA;
940
- var srcType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : _constants.default.UNSIGNED_BYTE;
941
- var texture;
942
- var framebuffer;
943
-
944
- try {
945
- texture = gl.createTexture();
946
- gl.bindTexture(_constants.default.TEXTURE_2D, texture);
947
- var level = 0;
948
- var width = 1;
949
- var height = 1;
950
- var border = 0;
951
- var pixel = new Uint8Array([0, 0, 255, 255]);
952
- gl.texImage2D(gl.TEXTURE_2D, level, internalFormat, width, height, border, srcFormat, srcType, pixel);
953
- framebuffer = gl.createFramebuffer();
954
- gl.bindFramebuffer(_constants.default.FRAMEBUFFER, framebuffer);
955
- gl.framebufferTexture2D(_constants.default.FRAMEBUFFER, _constants.default.COLOR_ATTACHMENT0, _constants.default.TEXTURE_2D, texture, 0);
956
-
957
- var status = gl.checkFramebufferStatus(_constants.default.FRAMEBUFFER) === _constants.default.FRAMEBUFFER_COMPLETE;
958
-
959
- gl.bindTexture(_constants.default.TEXTURE_2D, null);
960
- return status;
961
- } finally {
962
- gl.deleteTexture(texture);
963
- gl.deleteFramebuffer(framebuffer);
964
- }
965
- }
966
-
967
- var DATA_FORMAT_CHANNELS = (_DATA_FORMAT_CHANNELS = {}, (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RED, 1), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RED_INTEGER, 1), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RG, 2), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RG_INTEGER, 2), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RGB, 3), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RGB_INTEGER, 3), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RGBA, 4), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.RGBA_INTEGER, 4), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.DEPTH_COMPONENT, 1), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.DEPTH_STENCIL, 1), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.ALPHA, 1), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.LUMINANCE, 1), (0, _defineProperty2.default)(_DATA_FORMAT_CHANNELS, _constants.default.LUMINANCE_ALPHA, 2), _DATA_FORMAT_CHANNELS);
968
- var TYPE_SIZES = (_TYPE_SIZES = {}, (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.FLOAT, 4), (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.UNSIGNED_INT, 4), (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.INT, 4), (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.UNSIGNED_SHORT, 2), (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.SHORT, 2), (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.HALF_FLOAT, 2), (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.BYTE, 1), (0, _defineProperty2.default)(_TYPE_SIZES, _constants.default.UNSIGNED_BYTE, 1), _TYPE_SIZES);
969
-
970
- function getTextureFormatBytesPerPixel(gl, formatOrGL) {
971
- var format = getTextureFormat(formatOrGL);
972
- var params = getWebGLTextureParameters(gl, format);
973
- var channels = DATA_FORMAT_CHANNELS[params.dataFormat] || 4;
974
- var channelSize = TYPE_SIZES[params.type] || 1;
975
- return channels * channelSize;
976
- }
977
-
978
- function getWebGLPixelDataFormat(dataFormat, integer, normalized, format) {
979
- if (format === _constants.default.RGBA || format === _constants.default.RGB) {
980
- return format;
981
- }
982
-
983
- switch (dataFormat) {
984
- case 'r':
985
- return integer && !normalized ? _constants.default.RED_INTEGER : _constants.default.RED;
986
-
987
- case 'rg':
988
- return integer && !normalized ? _constants.default.RG_INTEGER : _constants.default.RG;
989
-
990
- case 'rgb':
991
- return integer && !normalized ? _constants.default.RGB_INTEGER : _constants.default.RGB;
992
-
993
- case 'rgba':
994
- return integer && !normalized ? _constants.default.RGBA_INTEGER : _constants.default.RGBA;
995
-
996
- default:
997
- return _constants.default.RGBA;
998
- }
999
- }
1000
-
1001
- function getWebGLDataType(dataType) {
1002
- switch (dataType) {
1003
- case 'uint8':
1004
- return _constants.default.UNSIGNED_BYTE;
1005
-
1006
- case 'sint8':
1007
- return _constants.default.BYTE;
1008
-
1009
- case 'uint16':
1010
- return _constants.default.UNSIGNED_SHORT;
1011
-
1012
- case 'sint16':
1013
- return _constants.default.SHORT;
1014
-
1015
- case 'uint32':
1016
- return _constants.default.UNSIGNED_INT;
1017
-
1018
- case 'sint32':
1019
- return _constants.default.INT;
1020
-
1021
- case 'float16':
1022
- return _constants.default.HALF_FLOAT;
1023
-
1024
- case 'float32':
1025
- return _constants.default.FLOAT;
1026
-
1027
- default:
1028
- return _constants.default.UNSIGNED_BYTE;
1029
- }
1030
- }
1031
- //# sourceMappingURL=texture-formats.js.map