@luma.gl/webgl 9.0.0-alpha.15 → 9.0.0-alpha.17

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