@luma.gl/webgl 8.6.0-alpha.3 → 9.0.0-alpha.2

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 (731) hide show
  1. package/README.md +3 -67
  2. package/dist/adapter/converters/device-parameters.d.ts +17 -0
  3. package/dist/adapter/converters/device-parameters.d.ts.map +1 -0
  4. package/dist/{esm/adapter/converters/set-device-parameters.js → adapter/converters/device-parameters.js} +36 -5
  5. package/dist/adapter/converters/device-parameters.js.map +1 -0
  6. package/dist/{classes → adapter/converters}/renderbuffer-formats.d.ts +0 -0
  7. package/dist/adapter/converters/renderbuffer-formats.d.ts.map +1 -0
  8. package/dist/{esm/classes → adapter/converters}/renderbuffer-formats.js +1 -1
  9. package/dist/adapter/converters/renderbuffer-formats.js.map +1 -0
  10. package/dist/adapter/converters/sampler-parameters.d.ts +19 -0
  11. package/dist/adapter/converters/sampler-parameters.d.ts.map +1 -0
  12. package/dist/adapter/converters/sampler-parameters.js +208 -0
  13. package/dist/adapter/converters/sampler-parameters.js.map +1 -0
  14. package/dist/adapter/converters/texture-formats.d.ts +93 -0
  15. package/dist/adapter/converters/texture-formats.d.ts.map +1 -0
  16. package/dist/adapter/converters/texture-formats.js +954 -0
  17. package/dist/adapter/converters/texture-formats.js.map +1 -0
  18. package/dist/adapter/converters/vertex-formats.d.ts +4 -0
  19. package/dist/adapter/converters/vertex-formats.d.ts.map +1 -0
  20. package/dist/adapter/converters/vertex-formats.js +35 -0
  21. package/dist/adapter/converters/vertex-formats.js.map +1 -0
  22. package/dist/adapter/device-helpers/device-features.d.ts +3 -6
  23. package/dist/adapter/device-helpers/device-features.d.ts.map +1 -1
  24. package/dist/adapter/device-helpers/device-features.js +27 -48
  25. package/dist/adapter/device-helpers/device-features.js.map +1 -1
  26. package/dist/adapter/device-helpers/device-limits.d.ts +1 -0
  27. package/dist/adapter/device-helpers/device-limits.d.ts.map +1 -1
  28. package/dist/adapter/device-helpers/device-limits.js +1 -0
  29. package/dist/adapter/device-helpers/device-limits.js.map +1 -1
  30. package/dist/adapter/device-helpers/get-device-info.js +7 -7
  31. package/dist/adapter/device-helpers/get-device-info.js.map +1 -1
  32. package/dist/adapter/helpers/attribute-utils.d.ts +11 -0
  33. package/dist/adapter/helpers/attribute-utils.d.ts.map +1 -0
  34. package/dist/adapter/helpers/attribute-utils.js +81 -0
  35. package/dist/adapter/helpers/attribute-utils.js.map +1 -0
  36. package/dist/adapter/helpers/get-shader-layout.d.ts +55 -0
  37. package/dist/adapter/helpers/get-shader-layout.d.ts.map +1 -0
  38. package/dist/adapter/helpers/get-shader-layout.js +306 -0
  39. package/dist/adapter/helpers/get-shader-layout.js.map +1 -0
  40. package/dist/{webgl-utils → adapter/helpers}/parse-shader-compiler-log.d.ts +0 -0
  41. package/dist/adapter/helpers/parse-shader-compiler-log.d.ts.map +1 -0
  42. package/dist/{esm/webgl-utils → adapter/helpers}/parse-shader-compiler-log.js +0 -0
  43. package/dist/adapter/helpers/parse-shader-compiler-log.js.map +1 -0
  44. package/dist/adapter/helpers/set-uniform.d.ts +4 -0
  45. package/dist/adapter/helpers/set-uniform.d.ts.map +1 -0
  46. package/dist/adapter/helpers/set-uniform.js +115 -0
  47. package/dist/adapter/helpers/set-uniform.js.map +1 -0
  48. package/dist/adapter/helpers/uniforms.d.ts +26 -0
  49. package/dist/adapter/helpers/uniforms.d.ts.map +1 -0
  50. package/dist/adapter/helpers/uniforms.js +99 -0
  51. package/dist/adapter/helpers/uniforms.js.map +1 -0
  52. package/dist/adapter/objects/constants-to-keys.d.ts +5 -0
  53. package/dist/adapter/objects/constants-to-keys.d.ts.map +1 -0
  54. package/dist/{esm/webgl-utils → adapter/objects}/constants-to-keys.js +1 -0
  55. package/dist/adapter/objects/constants-to-keys.js.map +1 -0
  56. package/dist/adapter/objects/webgl-renderbuffer.d.ts +40 -0
  57. package/dist/adapter/objects/webgl-renderbuffer.d.ts.map +1 -0
  58. package/dist/{esm/classes/renderbuffer.js → adapter/objects/webgl-renderbuffer.js} +38 -72
  59. package/dist/adapter/objects/webgl-renderbuffer.js.map +1 -0
  60. package/dist/{classes → adapter/objects}/webgl-resource.d.ts +15 -14
  61. package/dist/adapter/objects/webgl-resource.d.ts.map +1 -0
  62. package/dist/{esm/classes → adapter/objects}/webgl-resource.js +7 -3
  63. package/dist/adapter/objects/webgl-resource.js.map +1 -0
  64. package/dist/adapter/objects/webgl-vertex-array-object.d.ts +27 -0
  65. package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +1 -0
  66. package/dist/adapter/objects/webgl-vertex-array-object.js +84 -0
  67. package/dist/adapter/objects/webgl-vertex-array-object.js.map +1 -0
  68. package/dist/adapter/resources/webgl-buffer.d.ts +27 -0
  69. package/dist/adapter/resources/webgl-buffer.d.ts.map +1 -0
  70. package/dist/adapter/resources/webgl-buffer.js +164 -0
  71. package/dist/adapter/resources/webgl-buffer.js.map +1 -0
  72. package/dist/adapter/resources/webgl-command-buffer.d.ts +25 -0
  73. package/dist/adapter/resources/webgl-command-buffer.d.ts.map +1 -0
  74. package/dist/adapter/resources/webgl-command-buffer.js +65 -0
  75. package/dist/adapter/resources/webgl-command-buffer.js.map +1 -0
  76. package/dist/adapter/resources/webgl-command-encoder.d.ts +18 -0
  77. package/dist/adapter/resources/webgl-command-encoder.d.ts.map +1 -0
  78. package/dist/adapter/resources/webgl-command-encoder.js +53 -0
  79. package/dist/adapter/resources/webgl-command-encoder.js.map +1 -0
  80. package/dist/adapter/resources/webgl-external-texture.d.ts +1 -0
  81. package/dist/adapter/resources/webgl-external-texture.d.ts.map +1 -0
  82. package/dist/adapter/resources/webgl-external-texture.js +2 -0
  83. package/dist/{es5/helpers/program-bindings.js.map → adapter/resources/webgl-external-texture.js.map} +1 -1
  84. package/dist/adapter/resources/webgl-framebuffer.d.ts +40 -0
  85. package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -0
  86. package/dist/adapter/resources/webgl-framebuffer.js +265 -0
  87. package/dist/adapter/resources/webgl-framebuffer.js.map +1 -0
  88. package/dist/adapter/resources/webgl-render-pass.d.ts +11 -0
  89. package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -0
  90. package/dist/adapter/resources/webgl-render-pass.js +19 -0
  91. package/dist/adapter/resources/webgl-render-pass.js.map +1 -0
  92. package/dist/adapter/resources/webgl-render-pipeline.d.ts +55 -0
  93. package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -0
  94. package/dist/adapter/resources/webgl-render-pipeline.js +400 -0
  95. package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -0
  96. package/dist/adapter/resources/webgl-sampler.d.ts +20 -0
  97. package/dist/adapter/resources/webgl-sampler.d.ts.map +1 -0
  98. package/dist/adapter/resources/webgl-sampler.js +50 -0
  99. package/dist/adapter/resources/webgl-sampler.js.map +1 -0
  100. package/dist/adapter/{webgl-shader.d.ts → resources/webgl-shader.d.ts} +3 -6
  101. package/dist/adapter/resources/webgl-shader.d.ts.map +1 -0
  102. package/dist/adapter/{webgl-shader.js → resources/webgl-shader.js} +13 -20
  103. package/dist/adapter/resources/webgl-shader.js.map +1 -0
  104. package/dist/adapter/resources/webgl-texture.d.ts +193 -0
  105. package/dist/adapter/resources/webgl-texture.d.ts.map +1 -0
  106. package/dist/{esm/classes/texture.js → adapter/resources/webgl-texture.js} +274 -229
  107. package/dist/adapter/resources/webgl-texture.js.map +1 -0
  108. package/dist/adapter/webgl-canvas-context.d.ts +36 -0
  109. package/dist/adapter/webgl-canvas-context.d.ts.map +1 -0
  110. package/dist/adapter/webgl-canvas-context.js +54 -0
  111. package/dist/adapter/webgl-canvas-context.js.map +1 -0
  112. package/dist/adapter/webgl-device.d.ts +58 -77
  113. package/dist/adapter/webgl-device.d.ts.map +1 -1
  114. package/dist/adapter/webgl-device.js +185 -113
  115. package/dist/adapter/webgl-device.js.map +1 -1
  116. package/dist/classic/accessor.d.ts +32 -0
  117. package/dist/classic/accessor.d.ts.map +1 -0
  118. package/dist/{classes → classic}/accessor.js +33 -1
  119. package/dist/classic/accessor.js.map +1 -0
  120. package/dist/{classes/webgl-buffer.d.ts → classic/buffer.d.ts} +28 -33
  121. package/dist/classic/buffer.d.ts.map +1 -0
  122. package/dist/{esm/classes/webgl-buffer.js → classic/buffer.js} +53 -51
  123. package/dist/classic/buffer.js.map +1 -0
  124. package/dist/{webgl-utils → classic}/typed-array-utils.d.ts +3 -2
  125. package/dist/classic/typed-array-utils.d.ts.map +1 -0
  126. package/dist/{esm/webgl-utils → classic}/typed-array-utils.js +0 -0
  127. package/dist/classic/typed-array-utils.js.map +1 -0
  128. package/dist/context/context/context-state.d.ts.map +1 -1
  129. package/dist/context/context/context-state.js +1 -1
  130. package/dist/context/context/context-state.js.map +1 -1
  131. package/dist/context/context/create-context.d.ts +1 -0
  132. package/dist/context/context/create-context.d.ts.map +1 -1
  133. package/dist/context/context/create-context.js +12 -0
  134. package/dist/context/context/create-context.js.map +1 -1
  135. package/dist/context/context/device-pixels.d.ts +1 -1
  136. package/dist/context/context/device-pixels.d.ts.map +1 -1
  137. package/dist/context/context/device-pixels.js.map +1 -1
  138. package/dist/context/debug/spector.d.ts +18 -0
  139. package/dist/context/debug/spector.d.ts.map +1 -0
  140. package/dist/context/debug/spector.js +76 -0
  141. package/dist/context/debug/spector.js.map +1 -0
  142. package/dist/context/debug/webgl-developer-tools.d.ts +19 -0
  143. package/dist/context/debug/webgl-developer-tools.d.ts.map +1 -0
  144. package/dist/context/debug/webgl-developer-tools.js +121 -0
  145. package/dist/context/debug/webgl-developer-tools.js.map +1 -0
  146. package/dist/context/parameters/unified-parameter-api.d.ts +3 -2
  147. package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -1
  148. package/dist/context/parameters/unified-parameter-api.js +4 -4
  149. package/dist/context/parameters/unified-parameter-api.js.map +1 -1
  150. package/dist/context/parameters/webgl-parameter-tables.d.ts +40 -36
  151. package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -1
  152. package/dist/context/parameters/webgl-parameter-tables.js.map +1 -1
  153. package/dist/context/polyfill/get-parameter-polyfill.js.map +1 -1
  154. package/dist/context/polyfill/polyfill-context.js +4 -3
  155. package/dist/context/polyfill/polyfill-context.js.map +1 -1
  156. package/dist/context/state-tracker/deep-array-equal.d.ts.map +1 -1
  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 +25 -11
  160. package/dist/context/state-tracker/track-context-state.js.map +1 -1
  161. package/dist/es5/adapter/converters/{set-device-parameters.js → device-parameters.js} +37 -5
  162. package/dist/es5/adapter/converters/device-parameters.js.map +1 -0
  163. package/dist/es5/{classes → adapter/converters}/renderbuffer-formats.js +1 -1
  164. package/dist/es5/adapter/converters/renderbuffer-formats.js.map +1 -0
  165. package/dist/es5/adapter/converters/sampler-parameters.js +226 -0
  166. package/dist/es5/adapter/converters/sampler-parameters.js.map +1 -0
  167. package/dist/es5/adapter/converters/texture-formats.js +1031 -0
  168. package/dist/es5/adapter/converters/texture-formats.js.map +1 -0
  169. package/dist/es5/adapter/converters/vertex-formats.js +45 -0
  170. package/dist/es5/adapter/converters/vertex-formats.js.map +1 -0
  171. package/dist/es5/adapter/device-helpers/device-features.js +46 -54
  172. package/dist/es5/adapter/device-helpers/device-features.js.map +1 -1
  173. package/dist/es5/adapter/device-helpers/device-limits.js +1 -1
  174. package/dist/es5/adapter/device-helpers/device-limits.js.map +1 -1
  175. package/dist/es5/adapter/device-helpers/get-device-info.js +7 -7
  176. package/dist/es5/adapter/device-helpers/get-device-info.js.map +1 -1
  177. package/dist/es5/adapter/helpers/attribute-utils.js +91 -0
  178. package/dist/es5/adapter/helpers/attribute-utils.js.map +1 -0
  179. package/dist/es5/{helpers/get-program-bindings.js → adapter/helpers/get-shader-layout.js} +184 -87
  180. package/dist/es5/adapter/helpers/get-shader-layout.js.map +1 -0
  181. package/dist/es5/{webgl-utils → adapter/helpers}/parse-shader-compiler-log.js +0 -0
  182. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js.map +1 -0
  183. package/dist/es5/adapter/helpers/set-uniform.js +125 -0
  184. package/dist/es5/adapter/helpers/set-uniform.js.map +1 -0
  185. package/dist/es5/adapter/helpers/uniforms.js +112 -0
  186. package/dist/es5/adapter/helpers/uniforms.js.map +1 -0
  187. package/dist/es5/{webgl-utils → adapter/objects}/constants-to-keys.js +1 -0
  188. package/dist/es5/adapter/objects/constants-to-keys.js.map +1 -0
  189. package/dist/es5/{classes/renderbuffer.js → adapter/objects/webgl-renderbuffer.js} +48 -98
  190. package/dist/es5/adapter/objects/webgl-renderbuffer.js.map +1 -0
  191. package/dist/es5/{classes → adapter/objects}/webgl-resource.js +8 -3
  192. package/dist/es5/adapter/objects/webgl-resource.js.map +1 -0
  193. package/dist/es5/adapter/objects/webgl-vertex-array-object.js +137 -0
  194. package/dist/es5/adapter/objects/webgl-vertex-array-object.js.map +1 -0
  195. package/dist/es5/adapter/resources/webgl-buffer.js +243 -0
  196. package/dist/es5/adapter/resources/webgl-buffer.js.map +1 -0
  197. package/dist/es5/adapter/resources/webgl-command-buffer.js +96 -0
  198. package/dist/es5/adapter/resources/webgl-command-buffer.js.map +1 -0
  199. package/dist/es5/adapter/resources/webgl-command-encoder.js +98 -0
  200. package/dist/es5/adapter/resources/webgl-command-encoder.js.map +1 -0
  201. package/dist/es5/adapter/resources/webgl-external-texture.js +2 -0
  202. package/dist/{esm/helpers/program-bindings.js.map → es5/adapter/resources/webgl-external-texture.js.map} +1 -1
  203. package/dist/es5/adapter/resources/webgl-framebuffer.js +345 -0
  204. package/dist/es5/adapter/resources/webgl-framebuffer.js.map +1 -0
  205. package/dist/es5/{classes/texture-2d.js → adapter/resources/webgl-render-pass.js} +25 -45
  206. package/dist/es5/adapter/resources/webgl-render-pass.js.map +1 -0
  207. package/dist/es5/adapter/resources/webgl-render-pipeline.js +505 -0
  208. package/dist/es5/adapter/resources/webgl-render-pipeline.js.map +1 -0
  209. package/dist/es5/adapter/resources/webgl-sampler.js +96 -0
  210. package/dist/es5/adapter/resources/webgl-sampler.js.map +1 -0
  211. package/dist/es5/adapter/{webgl-shader.js → resources/webgl-shader.js} +12 -18
  212. package/dist/es5/adapter/resources/webgl-shader.js.map +1 -0
  213. package/dist/es5/{classes/texture.js → adapter/resources/webgl-texture.js} +336 -260
  214. package/dist/es5/adapter/resources/webgl-texture.js.map +1 -0
  215. package/dist/es5/adapter/webgl-canvas-context.js +97 -0
  216. package/dist/es5/adapter/webgl-canvas-context.js.map +1 -0
  217. package/dist/es5/adapter/webgl-device.js +255 -135
  218. package/dist/es5/adapter/webgl-device.js.map +1 -1
  219. package/dist/es5/{classes → classic}/accessor.js +25 -1
  220. package/dist/es5/classic/accessor.js.map +1 -0
  221. package/dist/es5/{classes/webgl-buffer.js → classic/buffer.js} +74 -66
  222. package/dist/es5/classic/buffer.js.map +1 -0
  223. package/dist/es5/{webgl-utils → classic}/typed-array-utils.js +0 -0
  224. package/dist/es5/classic/typed-array-utils.js.map +1 -0
  225. package/dist/es5/context/context/context-state.js +1 -1
  226. package/dist/es5/context/context/context-state.js.map +1 -1
  227. package/dist/es5/context/context/create-context.js +12 -0
  228. package/dist/es5/context/context/create-context.js.map +1 -1
  229. package/dist/es5/context/context/device-pixels.js.map +1 -1
  230. package/dist/es5/context/debug/spector.js +133 -0
  231. package/dist/es5/context/debug/spector.js.map +1 -0
  232. package/dist/es5/context/debug/webgl-developer-tools.js +198 -0
  233. package/dist/es5/context/debug/webgl-developer-tools.js.map +1 -0
  234. package/dist/es5/context/parameters/unified-parameter-api.js +7 -5
  235. package/dist/es5/context/parameters/unified-parameter-api.js.map +1 -1
  236. package/dist/es5/context/parameters/webgl-parameter-tables.js.map +1 -1
  237. package/dist/es5/context/polyfill/get-parameter-polyfill.js.map +1 -1
  238. package/dist/es5/context/polyfill/polyfill-context.js +4 -3
  239. package/dist/es5/context/polyfill/polyfill-context.js.map +1 -1
  240. package/dist/es5/context/state-tracker/deep-array-equal.js.map +1 -1
  241. package/dist/es5/context/state-tracker/track-context-state.js +26 -11
  242. package/dist/es5/context/state-tracker/track-context-state.js.map +1 -1
  243. package/dist/es5/index.js +66 -238
  244. package/dist/es5/index.js.map +1 -1
  245. package/dist/es5/init.js +1 -41
  246. package/dist/es5/init.js.map +1 -1
  247. package/dist/es5/{context/parameters/webgl-parameters.js → types/webgl.js} +1 -1
  248. package/dist/es5/types/webgl.js.map +1 -0
  249. package/dist/{adapter/converters/set-device-parameters.js → esm/adapter/converters/device-parameters.js} +36 -5
  250. package/dist/esm/adapter/converters/device-parameters.js.map +1 -0
  251. package/dist/{classes → esm/adapter/converters}/renderbuffer-formats.js +1 -1
  252. package/dist/esm/adapter/converters/renderbuffer-formats.js.map +1 -0
  253. package/dist/esm/adapter/converters/sampler-parameters.js +208 -0
  254. package/dist/esm/adapter/converters/sampler-parameters.js.map +1 -0
  255. package/dist/esm/adapter/converters/texture-formats.js +954 -0
  256. package/dist/esm/adapter/converters/texture-formats.js.map +1 -0
  257. package/dist/esm/adapter/converters/vertex-formats.js +35 -0
  258. package/dist/esm/adapter/converters/vertex-formats.js.map +1 -0
  259. package/dist/esm/adapter/device-helpers/device-features.js +27 -48
  260. package/dist/esm/adapter/device-helpers/device-features.js.map +1 -1
  261. package/dist/esm/adapter/device-helpers/device-limits.js +1 -0
  262. package/dist/esm/adapter/device-helpers/device-limits.js.map +1 -1
  263. package/dist/esm/adapter/device-helpers/get-device-info.js +7 -7
  264. package/dist/esm/adapter/device-helpers/get-device-info.js.map +1 -1
  265. package/dist/esm/adapter/helpers/attribute-utils.js +81 -0
  266. package/dist/esm/adapter/helpers/attribute-utils.js.map +1 -0
  267. package/dist/esm/adapter/helpers/get-shader-layout.js +306 -0
  268. package/dist/esm/adapter/helpers/get-shader-layout.js.map +1 -0
  269. package/dist/{webgl-utils → esm/adapter/helpers}/parse-shader-compiler-log.js +0 -0
  270. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js.map +1 -0
  271. package/dist/esm/adapter/helpers/set-uniform.js +115 -0
  272. package/dist/esm/adapter/helpers/set-uniform.js.map +1 -0
  273. package/dist/esm/adapter/helpers/uniforms.js +99 -0
  274. package/dist/esm/adapter/helpers/uniforms.js.map +1 -0
  275. package/dist/{webgl-utils → esm/adapter/objects}/constants-to-keys.js +1 -0
  276. package/dist/esm/adapter/objects/constants-to-keys.js.map +1 -0
  277. package/dist/{classes/renderbuffer.js → esm/adapter/objects/webgl-renderbuffer.js} +38 -72
  278. package/dist/esm/adapter/objects/webgl-renderbuffer.js.map +1 -0
  279. package/dist/{classes → esm/adapter/objects}/webgl-resource.js +7 -3
  280. package/dist/esm/adapter/objects/webgl-resource.js.map +1 -0
  281. package/dist/esm/adapter/objects/webgl-vertex-array-object.js +84 -0
  282. package/dist/esm/adapter/objects/webgl-vertex-array-object.js.map +1 -0
  283. package/dist/esm/adapter/resources/webgl-buffer.js +164 -0
  284. package/dist/esm/adapter/resources/webgl-buffer.js.map +1 -0
  285. package/dist/esm/adapter/resources/webgl-command-buffer.js +65 -0
  286. package/dist/esm/adapter/resources/webgl-command-buffer.js.map +1 -0
  287. package/dist/esm/adapter/resources/webgl-command-encoder.js +53 -0
  288. package/dist/esm/adapter/resources/webgl-command-encoder.js.map +1 -0
  289. package/dist/esm/adapter/resources/webgl-external-texture.js +2 -0
  290. package/dist/{helpers/program-bindings.js.map → esm/adapter/resources/webgl-external-texture.js.map} +1 -1
  291. package/dist/esm/adapter/resources/webgl-framebuffer.js +265 -0
  292. package/dist/esm/adapter/resources/webgl-framebuffer.js.map +1 -0
  293. package/dist/esm/adapter/resources/webgl-render-pass.js +19 -0
  294. package/dist/esm/adapter/resources/webgl-render-pass.js.map +1 -0
  295. package/dist/esm/adapter/resources/webgl-render-pipeline.js +400 -0
  296. package/dist/esm/adapter/resources/webgl-render-pipeline.js.map +1 -0
  297. package/dist/esm/adapter/resources/webgl-sampler.js +50 -0
  298. package/dist/esm/adapter/resources/webgl-sampler.js.map +1 -0
  299. package/dist/esm/adapter/{webgl-shader.js → resources/webgl-shader.js} +13 -20
  300. package/dist/esm/adapter/resources/webgl-shader.js.map +1 -0
  301. package/dist/{classes/texture.js → esm/adapter/resources/webgl-texture.js} +274 -229
  302. package/dist/esm/adapter/resources/webgl-texture.js.map +1 -0
  303. package/dist/esm/adapter/webgl-canvas-context.js +54 -0
  304. package/dist/esm/adapter/webgl-canvas-context.js.map +1 -0
  305. package/dist/esm/adapter/webgl-device.js +185 -113
  306. package/dist/esm/adapter/webgl-device.js.map +1 -1
  307. package/dist/esm/{classes → classic}/accessor.js +33 -1
  308. package/dist/esm/classic/accessor.js.map +1 -0
  309. package/dist/{classes/webgl-buffer.js → esm/classic/buffer.js} +53 -51
  310. package/dist/esm/classic/buffer.js.map +1 -0
  311. package/dist/{webgl-utils → esm/classic}/typed-array-utils.js +0 -0
  312. package/dist/esm/classic/typed-array-utils.js.map +1 -0
  313. package/dist/esm/context/context/context-state.js +1 -1
  314. package/dist/esm/context/context/context-state.js.map +1 -1
  315. package/dist/esm/context/context/create-context.js +12 -0
  316. package/dist/esm/context/context/create-context.js.map +1 -1
  317. package/dist/esm/context/context/device-pixels.js.map +1 -1
  318. package/dist/esm/context/debug/spector.js +76 -0
  319. package/dist/esm/context/debug/spector.js.map +1 -0
  320. package/dist/esm/context/debug/webgl-developer-tools.js +121 -0
  321. package/dist/esm/context/debug/webgl-developer-tools.js.map +1 -0
  322. package/dist/esm/context/parameters/unified-parameter-api.js +4 -4
  323. package/dist/esm/context/parameters/unified-parameter-api.js.map +1 -1
  324. package/dist/esm/context/parameters/webgl-parameter-tables.js.map +1 -1
  325. package/dist/esm/context/polyfill/get-parameter-polyfill.js.map +1 -1
  326. package/dist/esm/context/polyfill/polyfill-context.js +4 -3
  327. package/dist/esm/context/polyfill/polyfill-context.js.map +1 -1
  328. package/dist/esm/context/state-tracker/deep-array-equal.js.map +1 -1
  329. package/dist/esm/context/state-tracker/track-context-state.js +25 -11
  330. package/dist/esm/context/state-tracker/track-context-state.js.map +1 -1
  331. package/dist/esm/index.js +19 -29
  332. package/dist/esm/index.js.map +1 -1
  333. package/dist/esm/init.js +2 -31
  334. package/dist/esm/init.js.map +1 -1
  335. package/dist/esm/types/webgl.js +2 -0
  336. package/dist/esm/types/webgl.js.map +1 -0
  337. package/dist/index.d.ts +22 -43
  338. package/dist/index.d.ts.map +1 -1
  339. package/dist/index.js +19 -29
  340. package/dist/index.js.map +1 -1
  341. package/dist/init.d.ts +1 -4
  342. package/dist/init.d.ts.map +1 -1
  343. package/dist/init.js +2 -31
  344. package/dist/init.js.map +1 -1
  345. package/dist/types/webgl.d.ts +144 -0
  346. package/dist/types/webgl.d.ts.map +1 -0
  347. package/dist/types/webgl.js +2 -0
  348. package/dist/types/webgl.js.map +1 -0
  349. package/package.json +5 -5
  350. package/src/adapter/converters/{set-device-parameters.ts → device-parameters.ts} +52 -9
  351. package/src/{classes → adapter/converters}/renderbuffer-formats.ts +1 -1
  352. package/src/adapter/converters/sampler-parameters.ts +175 -0
  353. package/src/adapter/converters/texture-formats.ts +633 -0
  354. package/src/adapter/converters/vertex-formats.ts +22 -0
  355. package/src/adapter/device-helpers/device-features.ts +46 -123
  356. package/src/adapter/device-helpers/device-limits.ts +5 -2
  357. package/src/adapter/device-helpers/get-device-info.ts +8 -8
  358. package/src/adapter/helpers/attribute-utils.ts +61 -0
  359. package/src/adapter/helpers/get-shader-layout.ts +388 -0
  360. package/src/{webgl-utils → adapter/helpers}/parse-shader-compiler-log.ts +0 -0
  361. package/src/adapter/helpers/set-uniform.ts +87 -0
  362. package/src/adapter/helpers/uniforms.ts +110 -0
  363. package/src/{webgl-utils → adapter/objects}/constants-to-keys.ts +6 -3
  364. package/src/adapter/objects/webgl-renderbuffer.ts +104 -0
  365. package/src/{classes → adapter/objects}/webgl-resource.ts +23 -17
  366. package/src/adapter/objects/webgl-vertex-array-object.ts +111 -0
  367. package/src/adapter/resources/webgl-buffer.ts +219 -0
  368. package/src/adapter/resources/webgl-command-buffer.ts +94 -0
  369. package/src/adapter/resources/webgl-command-encoder.ts +58 -0
  370. package/src/adapter/resources/webgl-external-texture.ts +92 -0
  371. package/src/adapter/resources/webgl-framebuffer.ts +279 -0
  372. package/src/adapter/resources/webgl-render-pass.ts +23 -0
  373. package/src/adapter/resources/webgl-render-pipeline.ts +413 -0
  374. package/src/adapter/resources/webgl-sampler.ts +54 -0
  375. package/src/adapter/{webgl-shader.ts → resources/webgl-shader.ts} +14 -20
  376. package/src/adapter/resources/webgl-texture.ts +1023 -0
  377. package/src/adapter/webgl-canvas-context.ts +74 -0
  378. package/src/adapter/webgl-device.ts +229 -285
  379. package/{dist/esm/classes/accessor.ts.disabled → src/classic/accessor.ts} +50 -36
  380. package/src/{classes/webgl-buffer.ts → classic/buffer.ts} +69 -77
  381. package/src/{webgl-utils → classic}/typed-array-utils.ts +3 -1
  382. package/src/context/context/context-state.ts +4 -2
  383. package/src/context/context/create-context.ts +28 -1
  384. package/src/context/context/device-pixels.ts +9 -4
  385. package/src/context/debug/spector.ts +92 -0
  386. package/src/context/debug/webgl-developer-tools.ts +162 -0
  387. package/src/context/parameters/unified-parameter-api.ts +6 -4
  388. package/src/context/parameters/webgl-parameter-tables.ts +38 -36
  389. package/src/context/polyfill/get-parameter-polyfill.ts +1 -1
  390. package/src/context/polyfill/polyfill-context.ts +4 -3
  391. package/src/context/state-tracker/deep-array-equal.ts +1 -1
  392. package/src/context/state-tracker/track-context-state.ts +27 -20
  393. package/src/index.ts +33 -91
  394. package/src/init.ts +2 -46
  395. package/src/types/webgl.ts +283 -0
  396. package/dist/adapter/converters/set-device-parameters.d.ts +0 -5
  397. package/dist/adapter/converters/set-device-parameters.d.ts.map +0 -1
  398. package/dist/adapter/converters/set-device-parameters.js.map +0 -1
  399. package/dist/adapter/converters/webgpu-texture-formats.d.ts +0 -281
  400. package/dist/adapter/converters/webgpu-texture-formats.d.ts.map +0 -1
  401. package/dist/adapter/converters/webgpu-texture-formats.js +0 -285
  402. package/dist/adapter/converters/webgpu-texture-formats.js.map +0 -1
  403. package/dist/adapter/webgl-shader.d.ts.map +0 -1
  404. package/dist/adapter/webgl-shader.js.map +0 -1
  405. package/dist/classes/accessor.d.ts +0 -28
  406. package/dist/classes/accessor.d.ts.map +0 -1
  407. package/dist/classes/accessor.js.map +0 -1
  408. package/dist/classes/accessor.ts.disabled +0 -159
  409. package/dist/classes/clear.d.ts +0 -17
  410. package/dist/classes/clear.d.ts.map +0 -1
  411. package/dist/classes/clear.js +0 -105
  412. package/dist/classes/clear.js.map +0 -1
  413. package/dist/classes/copy-and-blit.d.ts +0 -86
  414. package/dist/classes/copy-and-blit.d.ts.map +0 -1
  415. package/dist/classes/copy-and-blit.js +0 -338
  416. package/dist/classes/copy-and-blit.js.map +0 -1
  417. package/dist/classes/framebuffer.d.ts +0 -139
  418. package/dist/classes/framebuffer.d.ts.map +0 -1
  419. package/dist/classes/framebuffer.js +0 -656
  420. package/dist/classes/framebuffer.js.map +0 -1
  421. package/dist/classes/program-configuration.d.ts +0 -24
  422. package/dist/classes/program-configuration.d.ts.map +0 -1
  423. package/dist/classes/program-configuration.js +0 -73
  424. package/dist/classes/program-configuration.js.map +0 -1
  425. package/dist/classes/program.d.ts +0 -66
  426. package/dist/classes/program.d.ts.map +0 -1
  427. package/dist/classes/program.js +0 -379
  428. package/dist/classes/program.js.map +0 -1
  429. package/dist/classes/query.d.ts +0 -27
  430. package/dist/classes/query.d.ts.map +0 -1
  431. package/dist/classes/query.js +0 -145
  432. package/dist/classes/query.js.map +0 -1
  433. package/dist/classes/renderbuffer-formats.d.ts.map +0 -1
  434. package/dist/classes/renderbuffer-formats.js.map +0 -1
  435. package/dist/classes/renderbuffer.d.ts +0 -60
  436. package/dist/classes/renderbuffer.d.ts.map +0 -1
  437. package/dist/classes/renderbuffer.js.map +0 -1
  438. package/dist/classes/shader.d.ts +0 -42
  439. package/dist/classes/shader.d.ts.map +0 -1
  440. package/dist/classes/shader.js +0 -118
  441. package/dist/classes/shader.js.map +0 -1
  442. package/dist/classes/texture-2d.d.ts +0 -9
  443. package/dist/classes/texture-2d.d.ts.map +0 -1
  444. package/dist/classes/texture-2d.js +0 -36
  445. package/dist/classes/texture-2d.js.map +0 -1
  446. package/dist/classes/texture-3d.d.ts +0 -29
  447. package/dist/classes/texture-3d.d.ts.map +0 -1
  448. package/dist/classes/texture-3d.js +0 -76
  449. package/dist/classes/texture-3d.js.map +0 -1
  450. package/dist/classes/texture-cube.d.ts +0 -28
  451. package/dist/classes/texture-cube.d.ts.map +0 -1
  452. package/dist/classes/texture-cube.js +0 -130
  453. package/dist/classes/texture-cube.js.map +0 -1
  454. package/dist/classes/texture-formats.d.ts +0 -37
  455. package/dist/classes/texture-formats.d.ts.map +0 -1
  456. package/dist/classes/texture-formats.js +0 -98
  457. package/dist/classes/texture-formats.js.map +0 -1
  458. package/dist/classes/texture.d.ts +0 -123
  459. package/dist/classes/texture.d.ts.map +0 -1
  460. package/dist/classes/texture.js.map +0 -1
  461. package/dist/classes/transform-feedback.d.ts +0 -33
  462. package/dist/classes/transform-feedback.d.ts.map +0 -1
  463. package/dist/classes/transform-feedback.js +0 -198
  464. package/dist/classes/transform-feedback.js.map +0 -1
  465. package/dist/classes/uniform-buffer-layout.d.ts +0 -17
  466. package/dist/classes/uniform-buffer-layout.d.ts.map +0 -1
  467. package/dist/classes/uniform-buffer-layout.js +0 -104
  468. package/dist/classes/uniform-buffer-layout.js.map +0 -1
  469. package/dist/classes/uniforms.d.ts +0 -37
  470. package/dist/classes/uniforms.d.ts.map +0 -1
  471. package/dist/classes/uniforms.js +0 -250
  472. package/dist/classes/uniforms.js.map +0 -1
  473. package/dist/classes/vertex-array-object.d.ts +0 -76
  474. package/dist/classes/vertex-array-object.d.ts.map +0 -1
  475. package/dist/classes/vertex-array-object.js +0 -261
  476. package/dist/classes/vertex-array-object.js.map +0 -1
  477. package/dist/classes/vertex-array.d.ts +0 -75
  478. package/dist/classes/vertex-array.d.ts.map +0 -1
  479. package/dist/classes/vertex-array.js +0 -408
  480. package/dist/classes/vertex-array.js.map +0 -1
  481. package/dist/classes/webgl-buffer.d.ts.map +0 -1
  482. package/dist/classes/webgl-buffer.js.map +0 -1
  483. package/dist/classes/webgl-resource.d.ts.map +0 -1
  484. package/dist/classes/webgl-resource.js.map +0 -1
  485. package/dist/context/context/get-canvas.d.ts +0 -13
  486. package/dist/context/context/get-canvas.d.ts.map +0 -1
  487. package/dist/context/context/get-canvas.js +0 -31
  488. package/dist/context/context/get-canvas.js.map +0 -1
  489. package/dist/context/context/resize-context.d.ts +0 -20
  490. package/dist/context/context/resize-context.d.ts.map +0 -1
  491. package/dist/context/context/resize-context.js +0 -15
  492. package/dist/context/context/resize-context.js.map +0 -1
  493. package/dist/context/parameters/webgl-parameters.d.ts +0 -144
  494. package/dist/context/parameters/webgl-parameters.d.ts.map +0 -1
  495. package/dist/context/parameters/webgl-parameters.js +0 -2
  496. package/dist/context/parameters/webgl-parameters.js.map +0 -1
  497. package/dist/debug/debug-program-configuration.d.ts +0 -2
  498. package/dist/debug/debug-program-configuration.d.ts.map +0 -1
  499. package/dist/debug/debug-program-configuration.js +0 -40
  500. package/dist/debug/debug-program-configuration.js.map +0 -1
  501. package/dist/debug/debug-uniforms.d.ts +0 -12
  502. package/dist/debug/debug-uniforms.d.ts.map +0 -1
  503. package/dist/debug/debug-uniforms.js +0 -108
  504. package/dist/debug/debug-uniforms.js.map +0 -1
  505. package/dist/debug/debug-vertex-array.d.ts +0 -5
  506. package/dist/debug/debug-vertex-array.d.ts.map +0 -1
  507. package/dist/debug/debug-vertex-array.js +0 -118
  508. package/dist/debug/debug-vertex-array.js.map +0 -1
  509. package/dist/es5/adapter/converters/set-device-parameters.js.map +0 -1
  510. package/dist/es5/adapter/converters/webgpu-texture-formats.js +0 -296
  511. package/dist/es5/adapter/converters/webgpu-texture-formats.js.map +0 -1
  512. package/dist/es5/adapter/webgl-shader.js.map +0 -1
  513. package/dist/es5/classes/accessor.d.ts +0 -28
  514. package/dist/es5/classes/accessor.js.map +0 -1
  515. package/dist/es5/classes/accessor.ts.disabled +0 -159
  516. package/dist/es5/classes/clear.js +0 -135
  517. package/dist/es5/classes/clear.js.map +0 -1
  518. package/dist/es5/classes/copy-and-blit.js +0 -382
  519. package/dist/es5/classes/copy-and-blit.js.map +0 -1
  520. package/dist/es5/classes/framebuffer.js +0 -807
  521. package/dist/es5/classes/framebuffer.js.map +0 -1
  522. package/dist/es5/classes/program-configuration.js +0 -119
  523. package/dist/es5/classes/program-configuration.js.map +0 -1
  524. package/dist/es5/classes/program.js +0 -471
  525. package/dist/es5/classes/program.js.map +0 -1
  526. package/dist/es5/classes/query.js +0 -222
  527. package/dist/es5/classes/query.js.map +0 -1
  528. package/dist/es5/classes/renderbuffer-formats.js.map +0 -1
  529. package/dist/es5/classes/renderbuffer.js.map +0 -1
  530. package/dist/es5/classes/shader.js +0 -195
  531. package/dist/es5/classes/shader.js.map +0 -1
  532. package/dist/es5/classes/texture-2d.js.map +0 -1
  533. package/dist/es5/classes/texture-3d.js +0 -142
  534. package/dist/es5/classes/texture-3d.js.map +0 -1
  535. package/dist/es5/classes/texture-cube.js +0 -202
  536. package/dist/es5/classes/texture-cube.js.map +0 -1
  537. package/dist/es5/classes/texture-formats.js +0 -87
  538. package/dist/es5/classes/texture-formats.js.map +0 -1
  539. package/dist/es5/classes/texture.js.map +0 -1
  540. package/dist/es5/classes/transform-feedback.js +0 -267
  541. package/dist/es5/classes/transform-feedback.js.map +0 -1
  542. package/dist/es5/classes/uniform-buffer-layout.js +0 -130
  543. package/dist/es5/classes/uniform-buffer-layout.js.map +0 -1
  544. package/dist/es5/classes/uniforms.js +0 -232
  545. package/dist/es5/classes/uniforms.js.map +0 -1
  546. package/dist/es5/classes/vertex-array-object.js +0 -337
  547. package/dist/es5/classes/vertex-array-object.js.map +0 -1
  548. package/dist/es5/classes/vertex-array.js +0 -465
  549. package/dist/es5/classes/vertex-array.js.map +0 -1
  550. package/dist/es5/classes/webgl-buffer.js.map +0 -1
  551. package/dist/es5/classes/webgl-resource.js.map +0 -1
  552. package/dist/es5/context/context/get-canvas.js +0 -40
  553. package/dist/es5/context/context/get-canvas.js.map +0 -1
  554. package/dist/es5/context/context/resize-context.js +0 -23
  555. package/dist/es5/context/context/resize-context.js.map +0 -1
  556. package/dist/es5/context/parameters/webgl-parameters.js.map +0 -1
  557. package/dist/es5/debug/debug-program-configuration.js +0 -76
  558. package/dist/es5/debug/debug-program-configuration.js.map +0 -1
  559. package/dist/es5/debug/debug-uniforms.js +0 -156
  560. package/dist/es5/debug/debug-uniforms.js.map +0 -1
  561. package/dist/es5/debug/debug-vertex-array.js +0 -126
  562. package/dist/es5/debug/debug-vertex-array.js.map +0 -1
  563. package/dist/es5/helpers/get-program-bindings.js.map +0 -1
  564. package/dist/es5/helpers/program-bindings.js +0 -2
  565. package/dist/es5/types/accessor.d.ts +0 -29
  566. package/dist/es5/webgl-utils/attribute-utils.js +0 -186
  567. package/dist/es5/webgl-utils/attribute-utils.js.map +0 -1
  568. package/dist/es5/webgl-utils/constants-to-keys.js.map +0 -1
  569. package/dist/es5/webgl-utils/format-utils.js +0 -58
  570. package/dist/es5/webgl-utils/format-utils.js.map +0 -1
  571. package/dist/es5/webgl-utils/get-error.js +0 -49
  572. package/dist/es5/webgl-utils/get-error.js.map +0 -1
  573. package/dist/es5/webgl-utils/index.js +0 -74
  574. package/dist/es5/webgl-utils/index.js.map +0 -1
  575. package/dist/es5/webgl-utils/parse-shader-compiler-log.js.map +0 -1
  576. package/dist/es5/webgl-utils/request-animation-frame.js +0 -16
  577. package/dist/es5/webgl-utils/request-animation-frame.js.map +0 -1
  578. package/dist/es5/webgl-utils/texture-utils.js +0 -61
  579. package/dist/es5/webgl-utils/texture-utils.js.map +0 -1
  580. package/dist/es5/webgl-utils/typed-array-utils.js.map +0 -1
  581. package/dist/esm/adapter/converters/set-device-parameters.js.map +0 -1
  582. package/dist/esm/adapter/converters/webgpu-texture-formats.js +0 -285
  583. package/dist/esm/adapter/converters/webgpu-texture-formats.js.map +0 -1
  584. package/dist/esm/adapter/webgl-shader.js.map +0 -1
  585. package/dist/esm/classes/accessor.d.ts +0 -28
  586. package/dist/esm/classes/accessor.js.map +0 -1
  587. package/dist/esm/classes/clear.js +0 -105
  588. package/dist/esm/classes/clear.js.map +0 -1
  589. package/dist/esm/classes/copy-and-blit.js +0 -338
  590. package/dist/esm/classes/copy-and-blit.js.map +0 -1
  591. package/dist/esm/classes/framebuffer.js +0 -656
  592. package/dist/esm/classes/framebuffer.js.map +0 -1
  593. package/dist/esm/classes/program-configuration.js +0 -73
  594. package/dist/esm/classes/program-configuration.js.map +0 -1
  595. package/dist/esm/classes/program.js +0 -379
  596. package/dist/esm/classes/program.js.map +0 -1
  597. package/dist/esm/classes/query.js +0 -145
  598. package/dist/esm/classes/query.js.map +0 -1
  599. package/dist/esm/classes/renderbuffer-formats.js.map +0 -1
  600. package/dist/esm/classes/renderbuffer.js.map +0 -1
  601. package/dist/esm/classes/shader.js +0 -118
  602. package/dist/esm/classes/shader.js.map +0 -1
  603. package/dist/esm/classes/texture-2d.js +0 -36
  604. package/dist/esm/classes/texture-2d.js.map +0 -1
  605. package/dist/esm/classes/texture-3d.js +0 -76
  606. package/dist/esm/classes/texture-3d.js.map +0 -1
  607. package/dist/esm/classes/texture-cube.js +0 -130
  608. package/dist/esm/classes/texture-cube.js.map +0 -1
  609. package/dist/esm/classes/texture-formats.js +0 -98
  610. package/dist/esm/classes/texture-formats.js.map +0 -1
  611. package/dist/esm/classes/texture.js.map +0 -1
  612. package/dist/esm/classes/transform-feedback.js +0 -198
  613. package/dist/esm/classes/transform-feedback.js.map +0 -1
  614. package/dist/esm/classes/uniform-buffer-layout.js +0 -104
  615. package/dist/esm/classes/uniform-buffer-layout.js.map +0 -1
  616. package/dist/esm/classes/uniforms.js +0 -250
  617. package/dist/esm/classes/uniforms.js.map +0 -1
  618. package/dist/esm/classes/vertex-array-object.js +0 -261
  619. package/dist/esm/classes/vertex-array-object.js.map +0 -1
  620. package/dist/esm/classes/vertex-array.js +0 -408
  621. package/dist/esm/classes/vertex-array.js.map +0 -1
  622. package/dist/esm/classes/webgl-buffer.js.map +0 -1
  623. package/dist/esm/classes/webgl-resource.js.map +0 -1
  624. package/dist/esm/context/context/get-canvas.js +0 -31
  625. package/dist/esm/context/context/get-canvas.js.map +0 -1
  626. package/dist/esm/context/context/resize-context.js +0 -15
  627. package/dist/esm/context/context/resize-context.js.map +0 -1
  628. package/dist/esm/context/parameters/webgl-parameters.js +0 -2
  629. package/dist/esm/context/parameters/webgl-parameters.js.map +0 -1
  630. package/dist/esm/debug/debug-program-configuration.js +0 -40
  631. package/dist/esm/debug/debug-program-configuration.js.map +0 -1
  632. package/dist/esm/debug/debug-uniforms.js +0 -108
  633. package/dist/esm/debug/debug-uniforms.js.map +0 -1
  634. package/dist/esm/debug/debug-vertex-array.js +0 -118
  635. package/dist/esm/debug/debug-vertex-array.js.map +0 -1
  636. package/dist/esm/helpers/get-program-bindings.js +0 -228
  637. package/dist/esm/helpers/get-program-bindings.js.map +0 -1
  638. package/dist/esm/helpers/program-bindings.js +0 -2
  639. package/dist/esm/types/accessor.d.ts +0 -29
  640. package/dist/esm/webgl-utils/attribute-utils.js +0 -182
  641. package/dist/esm/webgl-utils/attribute-utils.js.map +0 -1
  642. package/dist/esm/webgl-utils/constants-to-keys.js.map +0 -1
  643. package/dist/esm/webgl-utils/format-utils.js +0 -45
  644. package/dist/esm/webgl-utils/format-utils.js.map +0 -1
  645. package/dist/esm/webgl-utils/get-error.js +0 -41
  646. package/dist/esm/webgl-utils/get-error.js.map +0 -1
  647. package/dist/esm/webgl-utils/index.js +0 -5
  648. package/dist/esm/webgl-utils/index.js.map +0 -1
  649. package/dist/esm/webgl-utils/parse-shader-compiler-log.js.map +0 -1
  650. package/dist/esm/webgl-utils/request-animation-frame.js +0 -7
  651. package/dist/esm/webgl-utils/request-animation-frame.js.map +0 -1
  652. package/dist/esm/webgl-utils/texture-utils.js +0 -48
  653. package/dist/esm/webgl-utils/texture-utils.js.map +0 -1
  654. package/dist/esm/webgl-utils/typed-array-utils.js.map +0 -1
  655. package/dist/helpers/get-program-bindings.d.ts +0 -8
  656. package/dist/helpers/get-program-bindings.d.ts.map +0 -1
  657. package/dist/helpers/get-program-bindings.js +0 -228
  658. package/dist/helpers/get-program-bindings.js.map +0 -1
  659. package/dist/helpers/program-bindings.d.ts +0 -41
  660. package/dist/helpers/program-bindings.d.ts.map +0 -1
  661. package/dist/helpers/program-bindings.js +0 -2
  662. package/dist/types/accessor.d.ts +0 -29
  663. package/dist/webgl-utils/attribute-utils.d.ts +0 -18
  664. package/dist/webgl-utils/attribute-utils.d.ts.map +0 -1
  665. package/dist/webgl-utils/attribute-utils.js +0 -182
  666. package/dist/webgl-utils/attribute-utils.js.map +0 -1
  667. package/dist/webgl-utils/constants-to-keys.d.ts +0 -4
  668. package/dist/webgl-utils/constants-to-keys.d.ts.map +0 -1
  669. package/dist/webgl-utils/constants-to-keys.js.map +0 -1
  670. package/dist/webgl-utils/format-utils.d.ts +0 -3
  671. package/dist/webgl-utils/format-utils.d.ts.map +0 -1
  672. package/dist/webgl-utils/format-utils.js +0 -45
  673. package/dist/webgl-utils/format-utils.js.map +0 -1
  674. package/dist/webgl-utils/get-error.d.ts +0 -3
  675. package/dist/webgl-utils/get-error.d.ts.map +0 -1
  676. package/dist/webgl-utils/get-error.js +0 -41
  677. package/dist/webgl-utils/get-error.js.map +0 -1
  678. package/dist/webgl-utils/index.d.ts +0 -5
  679. package/dist/webgl-utils/index.d.ts.map +0 -1
  680. package/dist/webgl-utils/index.js +0 -5
  681. package/dist/webgl-utils/index.js.map +0 -1
  682. package/dist/webgl-utils/parse-shader-compiler-log.d.ts.map +0 -1
  683. package/dist/webgl-utils/parse-shader-compiler-log.js.map +0 -1
  684. package/dist/webgl-utils/request-animation-frame.d.ts +0 -4
  685. package/dist/webgl-utils/request-animation-frame.d.ts.map +0 -1
  686. package/dist/webgl-utils/request-animation-frame.js +0 -7
  687. package/dist/webgl-utils/request-animation-frame.js.map +0 -1
  688. package/dist/webgl-utils/texture-utils.d.ts +0 -15
  689. package/dist/webgl-utils/texture-utils.d.ts.map +0 -1
  690. package/dist/webgl-utils/texture-utils.js +0 -48
  691. package/dist/webgl-utils/texture-utils.js.map +0 -1
  692. package/dist/webgl-utils/typed-array-utils.d.ts.map +0 -1
  693. package/dist/webgl-utils/typed-array-utils.js.map +0 -1
  694. package/src/.DS_Store +0 -0
  695. package/src/adapter/converters/webgpu-texture-formats.ts +0 -167
  696. package/src/classes/accessor.d.ts +0 -28
  697. package/src/classes/accessor.js +0 -129
  698. package/src/classes/accessor.ts.disabled +0 -159
  699. package/src/classes/clear.ts +0 -108
  700. package/src/classes/copy-and-blit.ts +0 -460
  701. package/src/classes/framebuffer.ts +0 -763
  702. package/src/classes/program-configuration.ts +0 -77
  703. package/src/classes/program.ts +0 -431
  704. package/src/classes/query.ts +0 -171
  705. package/src/classes/renderbuffer.ts +0 -154
  706. package/src/classes/shader.ts +0 -129
  707. package/src/classes/texture-2d.ts +0 -35
  708. package/src/classes/texture-3d.ts +0 -123
  709. package/src/classes/texture-cube.ts +0 -162
  710. package/src/classes/texture-formats.ts +0 -171
  711. package/src/classes/texture.ts +0 -965
  712. package/src/classes/transform-feedback.ts +0 -191
  713. package/src/classes/uniform-buffer-layout.ts +0 -113
  714. package/src/classes/uniforms.ts +0 -394
  715. package/src/classes/vertex-array-object.ts +0 -339
  716. package/src/classes/vertex-array.ts +0 -484
  717. package/src/context/context/get-canvas.ts +0 -37
  718. package/src/context/context/resize-context.ts +0 -37
  719. package/src/context/parameters/webgl-parameters.ts +0 -197
  720. package/src/debug/debug-program-configuration.ts +0 -32
  721. package/src/debug/debug-uniforms.ts +0 -100
  722. package/src/debug/debug-vertex-array.ts +0 -123
  723. package/src/helpers/get-program-bindings.ts +0 -244
  724. package/src/helpers/program-bindings.ts +0 -46
  725. package/src/types/accessor.d.ts +0 -29
  726. package/src/webgl-utils/attribute-utils.ts +0 -171
  727. package/src/webgl-utils/format-utils.ts +0 -43
  728. package/src/webgl-utils/get-error.ts +0 -56
  729. package/src/webgl-utils/index.ts +0 -12
  730. package/src/webgl-utils/request-animation-frame.ts +0 -14
  731. package/src/webgl-utils/texture-utils.ts +0 -60
@@ -1,46 +0,0 @@
1
- import {Accessor} from '../types/accessor';
2
-
3
- /** Describes an attribute binding for a program */
4
- export type AttributeBinding = {
5
- location: number;
6
- name: string;
7
- accessor: Accessor;
8
- }
9
-
10
- /** Describes a varying binding for a program */
11
- export type VaryingBinding = {
12
- location: number;
13
- name: string;
14
- accessor: Accessor;
15
- }
16
-
17
- /** Describes a uniform block binding for a program */
18
- export type UniformBlockBinding = {
19
- location: number;
20
- name: string;
21
- byteLength: number;
22
- vertex: boolean;
23
- fragment: boolean;
24
- uniformCount: number;
25
- uniformIndices: number[];
26
- }
27
-
28
- /** Describes a uniform (sampler etc) binding for a program */
29
- export type UniformBinding = {
30
- location: number;
31
- name: string;
32
- size: number;
33
- type: number;
34
- isArray: boolean;
35
- }
36
-
37
- /**
38
- * Holds metadata describing attribute configurations for a program's shaders
39
- */
40
- export type ProgramBindings = {
41
- readonly attributes: AttributeBinding[];
42
- readonly varyings: VaryingBinding[];
43
- readonly uniformBlocks: UniformBlockBinding[];
44
- // Note - samplers are always in unform bindings, even if uniform blocks are used
45
- readonly uniforms: UniformBinding[];
46
- }
@@ -1,29 +0,0 @@
1
- // ACCESSORS
2
-
3
- /**
4
- * Attribute descriptor object
5
- */
6
- export type Accessor = {
7
- format?: string;
8
- offset?: number;
9
- location?: number;
10
-
11
- // can now be described with single WebGPU-style `format` string
12
- type?: number;
13
- size?: number;
14
- normalized?: boolean;
15
- integer?: boolean;
16
-
17
- // deprecated - now shared between accessors in the surrounding BufferAccessor object
18
- stride?: number;
19
- divisor?: number;
20
- };
21
-
22
- /**
23
- * List of attribute descriptors for one interleaved buffer
24
- */
25
- export type BufferAccessors = {
26
- stride?: number;
27
- stepMode?: 'vertex' | 'instance';
28
- attributes: Accessor[];
29
- }
@@ -1,171 +0,0 @@
1
- import {assert} from '@luma.gl/api';
2
-
3
- const GL_BYTE = 0x1400;
4
- const GL_UNSIGNED_BYTE = 0x1401;
5
- const GL_SHORT = 0x1402;
6
- const GL_UNSIGNED_SHORT = 0x1403;
7
-
8
- const GL_POINTS = 0x0;
9
- const GL_LINES = 0x1;
10
- const GL_LINE_LOOP = 0x2;
11
- const GL_LINE_STRIP = 0x3;
12
- const GL_TRIANGLES = 0x4;
13
- const GL_TRIANGLE_STRIP = 0x5;
14
- const GL_TRIANGLE_FAN = 0x6;
15
-
16
- // Local constants - these will "collapse" during minification
17
- const GL_FLOAT = 0x1406;
18
- const GL_FLOAT_VEC2 = 0x8b50;
19
- const GL_FLOAT_VEC3 = 0x8b51;
20
- const GL_FLOAT_VEC4 = 0x8b52;
21
-
22
- const GL_INT = 0x1404;
23
- const GL_INT_VEC2 = 0x8b53;
24
- const GL_INT_VEC3 = 0x8b54;
25
- const GL_INT_VEC4 = 0x8b55;
26
-
27
- const GL_UNSIGNED_INT = 0x1405;
28
- const GL_UNSIGNED_INT_VEC2 = 0x8dc6;
29
- const GL_UNSIGNED_INT_VEC3 = 0x8dc7;
30
- const GL_UNSIGNED_INT_VEC4 = 0x8dc8;
31
-
32
- const GL_BOOL = 0x8b56;
33
- const GL_BOOL_VEC2 = 0x8b57;
34
- const GL_BOOL_VEC3 = 0x8b58;
35
- const GL_BOOL_VEC4 = 0x8b59;
36
-
37
- const GL_FLOAT_MAT2 = 0x8b5a;
38
- const GL_FLOAT_MAT3 = 0x8b5b;
39
- const GL_FLOAT_MAT4 = 0x8b5c;
40
-
41
- const GL_FLOAT_MAT2x3 = 0x8b65;
42
- const GL_FLOAT_MAT2x4 = 0x8b66;
43
- const GL_FLOAT_MAT3x2 = 0x8b67;
44
- const GL_FLOAT_MAT3x4 = 0x8b68;
45
- const GL_FLOAT_MAT4x2 = 0x8b69;
46
- const GL_FLOAT_MAT4x3 = 0x8b6a;
47
-
48
- // Composite types table
49
- const COMPOSITE_GL_TYPES = {
50
- [GL_FLOAT]: [GL_FLOAT, 1, 'float'],
51
- [GL_FLOAT_VEC2]: [GL_FLOAT, 2, 'vec2'],
52
- [GL_FLOAT_VEC3]: [GL_FLOAT, 3, 'vec3'],
53
- [GL_FLOAT_VEC4]: [GL_FLOAT, 4, 'vec4'],
54
-
55
- [GL_INT]: [GL_INT, 1, 'int'],
56
- [GL_INT_VEC2]: [GL_INT, 2, 'ivec2'],
57
- [GL_INT_VEC3]: [GL_INT, 3, 'ivec3'],
58
- [GL_INT_VEC4]: [GL_INT, 4, 'ivec4'],
59
-
60
- [GL_UNSIGNED_INT]: [GL_UNSIGNED_INT, 1, 'uint'],
61
- [GL_UNSIGNED_INT_VEC2]: [GL_UNSIGNED_INT, 2, 'uvec2'],
62
- [GL_UNSIGNED_INT_VEC3]: [GL_UNSIGNED_INT, 3, 'uvec3'],
63
- [GL_UNSIGNED_INT_VEC4]: [GL_UNSIGNED_INT, 4, 'uvec4'],
64
-
65
- [GL_BOOL]: [GL_FLOAT, 1, 'bool'],
66
- [GL_BOOL_VEC2]: [GL_FLOAT, 2, 'bvec2'],
67
- [GL_BOOL_VEC3]: [GL_FLOAT, 3, 'bvec3'],
68
- [GL_BOOL_VEC4]: [GL_FLOAT, 4, 'bvec4'],
69
-
70
- [GL_FLOAT_MAT2]: [GL_FLOAT, 8, 'mat2'], // 4
71
- [GL_FLOAT_MAT2x3]: [GL_FLOAT, 8, 'mat2x3'], // 6
72
- [GL_FLOAT_MAT2x4]: [GL_FLOAT, 8, 'mat2x4'], // 8
73
-
74
- [GL_FLOAT_MAT3]: [GL_FLOAT, 12, 'mat3'], // 9
75
- [GL_FLOAT_MAT3x2]: [GL_FLOAT, 12, 'mat3x2'], // 6
76
- [GL_FLOAT_MAT3x4]: [GL_FLOAT, 12, 'mat3x4'], // 12
77
-
78
- [GL_FLOAT_MAT4]: [GL_FLOAT, 16, 'mat4'], // 16
79
- [GL_FLOAT_MAT4x2]: [GL_FLOAT, 16, 'mat4x2'], // 8
80
- [GL_FLOAT_MAT4x3]: [GL_FLOAT, 16, 'mat4x3'] // 12
81
- };
82
-
83
- // Counts the number of complete primitives given a number of vertices and a drawMode
84
- export function getPrimitiveDrawMode(drawMode) {
85
- switch (drawMode) {
86
- case GL_POINTS:
87
- return GL_POINTS;
88
- case GL_LINES:
89
- return GL_LINES;
90
- case GL_LINE_STRIP:
91
- return GL_LINES;
92
- case GL_LINE_LOOP:
93
- return GL_LINES;
94
- case GL_TRIANGLES:
95
- return GL_TRIANGLES;
96
- case GL_TRIANGLE_STRIP:
97
- return GL_TRIANGLES;
98
- case GL_TRIANGLE_FAN:
99
- return GL_TRIANGLES;
100
- default:
101
- assert(false);
102
- return 0;
103
- }
104
- }
105
-
106
- // Counts the number of complete "primitives" given a number of vertices and a drawMode
107
- export function getPrimitiveCount({drawMode, vertexCount}) {
108
- switch (drawMode) {
109
- case GL_POINTS:
110
- case GL_LINE_LOOP:
111
- return vertexCount;
112
- case GL_LINES:
113
- return vertexCount / 2;
114
- case GL_LINE_STRIP:
115
- return vertexCount - 1;
116
- case GL_TRIANGLES:
117
- return vertexCount / 3;
118
- case GL_TRIANGLE_STRIP:
119
- case GL_TRIANGLE_FAN:
120
- return vertexCount - 2;
121
- default:
122
- assert(false);
123
- return 0;
124
- }
125
- }
126
-
127
- // Counts the number of vertices after splitting the vertex stream into separate "primitives"
128
- export function getVertexCount({drawMode, vertexCount}) {
129
- const primitiveCount = getPrimitiveCount({drawMode, vertexCount});
130
- switch (getPrimitiveDrawMode(drawMode)) {
131
- case GL_POINTS:
132
- return primitiveCount;
133
- case GL_LINES:
134
- return primitiveCount * 2;
135
- case GL_TRIANGLES:
136
- return primitiveCount * 3;
137
- default:
138
- assert(false);
139
- return 0;
140
- }
141
- }
142
-
143
- // Decomposes a composite type GL.VEC3 into a basic type (GL.FLOAT) and components (3)
144
- export function decomposeCompositeGLType(compositeGLType) {
145
- const typeAndSize = COMPOSITE_GL_TYPES[compositeGLType];
146
- if (!typeAndSize) {
147
- return null;
148
- }
149
- const [type, components] = typeAndSize;
150
- return {type, components};
151
- }
152
-
153
- export function getCompositeGLType(type, components) {
154
- switch (type) {
155
- case GL_BYTE:
156
- case GL_UNSIGNED_BYTE:
157
- case GL_SHORT:
158
- case GL_UNSIGNED_SHORT:
159
- type = GL_FLOAT;
160
- break;
161
- default:
162
- }
163
-
164
- for (const glType in COMPOSITE_GL_TYPES) {
165
- const [compType, compComponents, name] = COMPOSITE_GL_TYPES[glType];
166
- if (compType === type && compComponents === components) {
167
- return {glType, name};
168
- }
169
- }
170
- return null;
171
- }
@@ -1,43 +0,0 @@
1
- import {assert} from '@luma.gl/api';
2
- import GL from '@luma.gl/constants';
3
-
4
- // Returns number of components in a specific readPixels WebGL format
5
- export function glFormatToComponents(format) {
6
- switch (format) {
7
- case GL.ALPHA:
8
- case GL.R32F:
9
- case GL.RED:
10
- return 1;
11
- case GL.RG32F:
12
- case GL.RG:
13
- return 2;
14
- case GL.RGB:
15
- case GL.RGB32F:
16
- return 3;
17
- case GL.RGBA:
18
- case GL.RGBA32F:
19
- return 4;
20
- // TODO: Add support for additional WebGL2 formats
21
- default:
22
- assert(false);
23
- return 0;
24
- }
25
- }
26
-
27
- // Return byte count for given readPixels WebGL type
28
- export function glTypeToBytes(type) {
29
- switch (type) {
30
- case GL.UNSIGNED_BYTE:
31
- return 1;
32
- case GL.UNSIGNED_SHORT_5_6_5:
33
- case GL.UNSIGNED_SHORT_4_4_4_4:
34
- case GL.UNSIGNED_SHORT_5_5_5_1:
35
- return 2;
36
- case GL.FLOAT:
37
- return 4;
38
- // TODO: Add support for additional WebGL2 types
39
- default:
40
- assert(false);
41
- return 0;
42
- }
43
- }
@@ -1,56 +0,0 @@
1
- // Helper definitions for validation of webgl parameters
2
- /* eslint-disable no-inline-comments, max-len */
3
-
4
- // Errors - Constants returned from getError().
5
- const GL_NO_ERROR = 0; // Returned from getError.
6
- const GL_INVALID_ENUM = 0x0500; // Returned from getError.
7
- const GL_INVALID_VALUE = 0x0501; // Returned from getError.
8
- const GL_INVALID_OPERATION = 0x0502; // Returned from getError.
9
- const GL_OUT_OF_MEMORY = 0x0505; // Returned from getError.
10
- const GL_CONTEXT_LOST_WEBGL = 0x9242; // Returned from getError.
11
- const GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506;
12
-
13
- // GL errors
14
-
15
- const GL_ERROR_MESSAGES = {
16
- // If the WebGL context is lost, this error is returned on the
17
- // first call to getError. Afterwards and until the context has been
18
- // restored, it returns gl.NO_ERROR.
19
- [GL_CONTEXT_LOST_WEBGL]: 'WebGL context lost',
20
- // An unacceptable value has been specified for an enumerated argument.
21
- [GL_INVALID_ENUM]: 'WebGL invalid enumerated argument',
22
- // A numeric argument is out of range.
23
- [GL_INVALID_VALUE]: 'WebGL invalid value',
24
- // The specified command is not allowed for the current state.
25
- [GL_INVALID_OPERATION]: 'WebGL invalid operation',
26
- // The currently bound framebuffer is not framebuffer complete
27
- // when trying to render to or to read from it.
28
- [GL_INVALID_FRAMEBUFFER_OPERATION]: 'WebGL invalid framebuffer operation',
29
- // Not enough memory is left to execute the command.
30
- [GL_OUT_OF_MEMORY]: 'WebGL out of memory'
31
- };
32
-
33
- function glGetErrorMessage(gl, glError) {
34
- return GL_ERROR_MESSAGES[glError] || `WebGL unknown error ${glError}`;
35
- }
36
-
37
- // Returns an Error representing the Latest webGl error or null
38
- export function glGetError(gl) {
39
- // Loop to ensure all errors are cleared
40
- const errorStack = [];
41
- let glError = gl.getError();
42
- while (glError !== GL_NO_ERROR) {
43
- errorStack.push(glGetErrorMessage(gl, glError));
44
- glError = gl.getError();
45
- }
46
- return errorStack.length ? new Error(errorStack.join('\n')) : null;
47
- }
48
-
49
- export function glCheckError(gl) {
50
- if (gl.debug) {
51
- const error = glGetError(gl);
52
- if (error) {
53
- throw error;
54
- }
55
- }
56
- }
@@ -1,12 +0,0 @@
1
- export {requestAnimationFrame, cancelAnimationFrame} from './request-animation-frame';
2
-
3
- export {
4
- getGLTypeFromTypedArray,
5
- getTypedArrayFromGLType,
6
- flipRows,
7
- scalePixels
8
- } from './typed-array-utils';
9
-
10
- export {getKeyValue, getKey, getKeyType} from './constants-to-keys';
11
-
12
- export {cloneTextureFrom} from './texture-utils';
@@ -1,14 +0,0 @@
1
- // Node.js polyfills for requestAnimationFrame and cancelAnimationFrame
2
- // / <reference types="@types/node" />
3
-
4
- export function requestAnimationFrame(callback): number | NodeJS.Timeout {
5
- return typeof window !== 'undefined' && window.requestAnimationFrame
6
- ? window.requestAnimationFrame(callback)
7
- : setTimeout(callback, 1000 / 60);
8
- }
9
-
10
- export function cancelAnimationFrame(timerId): void {
11
- return typeof window !== 'undefined' && window.cancelAnimationFrame
12
- ? window.cancelAnimationFrame(timerId)
13
- : clearTimeout(timerId);
14
- }
@@ -1,60 +0,0 @@
1
- // TODO: Two subdirectories must not depend on each other (classes vs utils)!
2
- import {assert} from '@luma.gl/api';
3
- import GL from '@luma.gl/constants';
4
- import Texture from '../classes/texture';
5
- import Texture2D from '../classes/texture-2d';
6
- import TextureCube from '../classes/texture-cube';
7
- import Texture3D from '../classes/texture-3d';
8
- import Framebuffer, {FramebufferProps} from '../classes/framebuffer';
9
-
10
- type TextureType = Texture2D | TextureCube | Texture3D;
11
-
12
- /** Clone a new texture object from a reference texture object. */
13
- export function cloneTextureFrom<T extends TextureType>(refTexture: T, overrides?: any): T {
14
- assert(
15
- refTexture instanceof Texture2D ||
16
- refTexture instanceof TextureCube ||
17
- refTexture instanceof Texture3D
18
- );
19
-
20
- const TextureType = refTexture.constructor;
21
-
22
- const {gl, width, height, format, type, dataFormat, border, mipmaps} = refTexture;
23
-
24
- const textureOptions = Object.assign(
25
- {
26
- width,
27
- height,
28
- format,
29
- type,
30
- dataFormat,
31
- border,
32
- mipmaps
33
- },
34
- overrides
35
- );
36
-
37
- // TODO: move this to `Texture` class as instance method and use this.constructor
38
- // @ts-expect-error
39
- return new TextureType(gl, textureOptions);
40
- }
41
-
42
- /**
43
- * Wraps a given texture into a framebuffer object, that can be further used
44
- * to read data from the texture object.
45
- */
46
- export function toFramebuffer(texture: Texture, opts?: FramebufferProps): Framebuffer {
47
- const {gl, width, height, id} = texture;
48
- const framebuffer = new Framebuffer(
49
- gl,
50
- Object.assign({}, opts, {
51
- id: `framebuffer-for-${id}`,
52
- width,
53
- height,
54
- attachments: {
55
- [GL.COLOR_ATTACHMENT0]: texture
56
- }
57
- })
58
- );
59
- return framebuffer;
60
- }