@luma.gl/webgl 8.5.9 → 8.6.0-alpha.3

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 (788) hide show
  1. package/LICENSE +8 -1
  2. package/dist/adapter/converters/set-device-parameters.d.ts +5 -0
  3. package/dist/adapter/converters/set-device-parameters.d.ts.map +1 -0
  4. package/dist/adapter/converters/set-device-parameters.js +124 -0
  5. package/dist/adapter/converters/set-device-parameters.js.map +1 -0
  6. package/dist/adapter/converters/webgpu-texture-formats.d.ts +281 -0
  7. package/dist/adapter/converters/webgpu-texture-formats.d.ts.map +1 -0
  8. package/dist/adapter/converters/webgpu-texture-formats.js +285 -0
  9. package/dist/adapter/converters/webgpu-texture-formats.js.map +1 -0
  10. package/dist/adapter/device-helpers/device-features.d.ts +12 -0
  11. package/dist/adapter/device-helpers/device-features.d.ts.map +1 -0
  12. package/dist/adapter/device-helpers/device-features.js +123 -0
  13. package/dist/adapter/device-helpers/device-features.js.map +1 -0
  14. package/dist/adapter/device-helpers/device-limits.d.ts +51 -0
  15. package/dist/adapter/device-helpers/device-limits.d.ts.map +1 -0
  16. package/dist/adapter/device-helpers/device-limits.js +90 -0
  17. package/dist/adapter/device-helpers/device-limits.js.map +1 -0
  18. package/dist/adapter/device-helpers/get-device-info.d.ts +4 -0
  19. package/dist/adapter/device-helpers/get-device-info.d.ts.map +1 -0
  20. package/dist/adapter/device-helpers/get-device-info.js +44 -0
  21. package/dist/adapter/device-helpers/get-device-info.js.map +1 -0
  22. package/dist/adapter/device-helpers/is-old-ie.d.ts +2 -0
  23. package/dist/adapter/device-helpers/is-old-ie.d.ts.map +1 -0
  24. package/dist/{esm/features/check-old-ie.js → adapter/device-helpers/is-old-ie.js} +3 -3
  25. package/dist/adapter/device-helpers/is-old-ie.js.map +1 -0
  26. package/dist/adapter/webgl-device.d.ts +111 -0
  27. package/dist/adapter/webgl-device.d.ts.map +1 -0
  28. package/dist/adapter/webgl-device.js +208 -0
  29. package/dist/adapter/webgl-device.js.map +1 -0
  30. package/dist/adapter/webgl-shader.d.ts +18 -0
  31. package/dist/adapter/webgl-shader.d.ts.map +1 -0
  32. package/dist/adapter/webgl-shader.js +82 -0
  33. package/dist/adapter/webgl-shader.js.map +1 -0
  34. package/dist/bundle.d.ts +2 -0
  35. package/dist/bundle.d.ts.map +1 -0
  36. package/dist/bundle.js +5 -0
  37. package/dist/bundle.js.map +1 -0
  38. package/dist/classes/accessor.d.ts +28 -0
  39. package/dist/classes/accessor.d.ts.map +1 -0
  40. package/dist/classes/accessor.js +112 -0
  41. package/dist/classes/accessor.js.map +1 -0
  42. package/dist/classes/accessor.ts.disabled +159 -0
  43. package/dist/classes/clear.d.ts +17 -0
  44. package/dist/classes/clear.d.ts.map +1 -0
  45. package/{src → dist}/classes/clear.js +29 -23
  46. package/dist/classes/clear.js.map +1 -0
  47. package/dist/classes/copy-and-blit.d.ts +86 -0
  48. package/dist/classes/copy-and-blit.d.ts.map +1 -0
  49. package/dist/classes/copy-and-blit.js +338 -0
  50. package/dist/classes/copy-and-blit.js.map +1 -0
  51. package/dist/classes/framebuffer.d.ts +139 -0
  52. package/dist/classes/framebuffer.d.ts.map +1 -0
  53. package/dist/classes/framebuffer.js +656 -0
  54. package/dist/classes/framebuffer.js.map +1 -0
  55. package/dist/classes/program-configuration.d.ts +24 -0
  56. package/dist/classes/program-configuration.d.ts.map +1 -0
  57. package/dist/classes/program-configuration.js +73 -0
  58. package/dist/classes/program-configuration.js.map +1 -0
  59. package/dist/classes/program.d.ts +66 -0
  60. package/dist/classes/program.d.ts.map +1 -0
  61. package/dist/classes/program.js +379 -0
  62. package/dist/classes/program.js.map +1 -0
  63. package/dist/classes/query.d.ts +27 -0
  64. package/dist/classes/query.d.ts.map +1 -0
  65. package/dist/classes/query.js +145 -0
  66. package/dist/classes/query.js.map +1 -0
  67. package/dist/classes/renderbuffer-formats.d.ts +16 -0
  68. package/dist/classes/renderbuffer-formats.d.ts.map +1 -0
  69. package/dist/classes/renderbuffer-formats.js +185 -0
  70. package/dist/classes/renderbuffer-formats.js.map +1 -0
  71. package/dist/classes/renderbuffer.d.ts +60 -0
  72. package/dist/classes/renderbuffer.d.ts.map +1 -0
  73. package/dist/classes/renderbuffer.js +128 -0
  74. package/dist/classes/renderbuffer.js.map +1 -0
  75. package/dist/classes/shader.d.ts +42 -0
  76. package/dist/classes/shader.d.ts.map +1 -0
  77. package/dist/classes/shader.js +118 -0
  78. package/dist/classes/shader.js.map +1 -0
  79. package/dist/classes/texture-2d.d.ts +9 -0
  80. package/dist/classes/texture-2d.d.ts.map +1 -0
  81. package/dist/classes/texture-2d.js +36 -0
  82. package/dist/classes/texture-2d.js.map +1 -0
  83. package/dist/classes/texture-3d.d.ts +29 -0
  84. package/dist/classes/texture-3d.d.ts.map +1 -0
  85. package/dist/classes/texture-3d.js +76 -0
  86. package/dist/classes/texture-3d.js.map +1 -0
  87. package/dist/classes/texture-cube.d.ts +28 -0
  88. package/dist/classes/texture-cube.d.ts.map +1 -0
  89. package/dist/classes/texture-cube.js +130 -0
  90. package/dist/classes/texture-cube.js.map +1 -0
  91. package/dist/classes/texture-formats.d.ts +37 -0
  92. package/dist/classes/texture-formats.d.ts.map +1 -0
  93. package/dist/classes/texture-formats.js +98 -0
  94. package/dist/classes/texture-formats.js.map +1 -0
  95. package/dist/classes/texture.d.ts +123 -0
  96. package/dist/classes/texture.d.ts.map +1 -0
  97. package/dist/classes/texture.js +786 -0
  98. package/dist/classes/texture.js.map +1 -0
  99. package/dist/classes/transform-feedback.d.ts +33 -0
  100. package/dist/classes/transform-feedback.d.ts.map +1 -0
  101. package/dist/classes/transform-feedback.js +198 -0
  102. package/dist/classes/transform-feedback.js.map +1 -0
  103. package/dist/classes/uniform-buffer-layout.d.ts +17 -0
  104. package/dist/classes/uniform-buffer-layout.d.ts.map +1 -0
  105. package/dist/classes/uniform-buffer-layout.js +104 -0
  106. package/dist/classes/uniform-buffer-layout.js.map +1 -0
  107. package/dist/classes/uniforms.d.ts +37 -0
  108. package/dist/classes/uniforms.d.ts.map +1 -0
  109. package/dist/classes/uniforms.js +250 -0
  110. package/dist/classes/uniforms.js.map +1 -0
  111. package/dist/classes/vertex-array-object.d.ts +76 -0
  112. package/dist/classes/vertex-array-object.d.ts.map +1 -0
  113. package/dist/classes/vertex-array-object.js +261 -0
  114. package/dist/classes/vertex-array-object.js.map +1 -0
  115. package/dist/classes/vertex-array.d.ts +75 -0
  116. package/dist/classes/vertex-array.d.ts.map +1 -0
  117. package/dist/classes/vertex-array.js +408 -0
  118. package/dist/classes/vertex-array.js.map +1 -0
  119. package/dist/classes/webgl-buffer.d.ts +100 -0
  120. package/dist/classes/webgl-buffer.d.ts.map +1 -0
  121. package/dist/{esm/classes/buffer.js → classes/webgl-buffer.js} +100 -73
  122. package/dist/classes/webgl-buffer.js.map +1 -0
  123. package/dist/classes/webgl-resource.d.ts +56 -0
  124. package/dist/classes/webgl-resource.d.ts.map +1 -0
  125. package/dist/{esm/classes/resource.js → classes/webgl-resource.js} +35 -52
  126. package/dist/classes/webgl-resource.js.map +1 -0
  127. package/dist/context/context/context-state.d.ts +18 -0
  128. package/dist/context/context/context-state.d.ts.map +1 -0
  129. package/dist/context/context/context-state.js +26 -0
  130. package/dist/context/context/context-state.js.map +1 -0
  131. package/dist/context/context/create-context.d.ts +40 -0
  132. package/dist/context/context/create-context.d.ts.map +1 -0
  133. package/dist/context/context/create-context.js +37 -0
  134. package/dist/context/context/create-context.js.map +1 -0
  135. package/dist/context/context/device-pixels.d.ts +25 -0
  136. package/dist/context/context/device-pixels.d.ts.map +1 -0
  137. package/dist/context/context/device-pixels.js +98 -0
  138. package/dist/context/context/device-pixels.js.map +1 -0
  139. package/dist/context/context/get-canvas.d.ts +13 -0
  140. package/dist/context/context/get-canvas.d.ts.map +1 -0
  141. package/dist/context/context/get-canvas.js +31 -0
  142. package/dist/context/context/get-canvas.js.map +1 -0
  143. package/dist/context/context/resize-context.d.ts +20 -0
  144. package/dist/context/context/resize-context.d.ts.map +1 -0
  145. package/dist/context/context/resize-context.js +15 -0
  146. package/dist/context/context/resize-context.js.map +1 -0
  147. package/dist/context/context/webgl-checks.d.ts +13 -0
  148. package/dist/context/context/webgl-checks.d.ts.map +1 -0
  149. package/dist/context/context/webgl-checks.js +34 -0
  150. package/dist/context/context/webgl-checks.js.map +1 -0
  151. package/dist/context/parameters/unified-parameter-api.d.ts +31 -0
  152. package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -0
  153. package/dist/context/parameters/unified-parameter-api.js +65 -0
  154. package/dist/context/parameters/unified-parameter-api.js.map +1 -0
  155. package/dist/context/parameters/webgl-parameter-tables.d.ts +169 -0
  156. package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -0
  157. package/dist/context/parameters/webgl-parameter-tables.js +445 -0
  158. package/dist/context/parameters/webgl-parameter-tables.js.map +1 -0
  159. package/dist/context/parameters/webgl-parameters.d.ts +144 -0
  160. package/dist/context/parameters/webgl-parameters.d.ts.map +1 -0
  161. package/dist/context/parameters/webgl-parameters.js +2 -0
  162. package/dist/context/parameters/webgl-parameters.js.map +1 -0
  163. package/dist/context/polyfill/get-parameter-polyfill.d.ts +2 -0
  164. package/dist/context/polyfill/get-parameter-polyfill.d.ts.map +1 -0
  165. package/dist/context/polyfill/get-parameter-polyfill.js +91 -0
  166. package/dist/context/polyfill/get-parameter-polyfill.js.map +1 -0
  167. package/dist/context/polyfill/polyfill-context.d.ts +5 -0
  168. package/dist/context/polyfill/polyfill-context.d.ts.map +1 -0
  169. package/dist/context/polyfill/polyfill-context.js +91 -0
  170. package/dist/context/polyfill/polyfill-context.js.map +1 -0
  171. package/dist/context/polyfill/polyfill-table.d.ts +48 -0
  172. package/dist/context/polyfill/polyfill-table.d.ts.map +1 -0
  173. package/dist/context/polyfill/polyfill-table.js +160 -0
  174. package/dist/context/polyfill/polyfill-table.js.map +1 -0
  175. package/dist/context/polyfill/polyfill-vertex-array-object.d.ts +2 -0
  176. package/dist/context/polyfill/polyfill-vertex-array-object.d.ts.map +1 -0
  177. package/dist/context/polyfill/polyfill-vertex-array-object.js +335 -0
  178. package/dist/context/polyfill/polyfill-vertex-array-object.js.map +1 -0
  179. package/dist/context/state-tracker/deep-array-equal.d.ts +3 -0
  180. package/dist/context/state-tracker/deep-array-equal.d.ts.map +1 -0
  181. package/dist/context/state-tracker/deep-array-equal.js +21 -0
  182. package/dist/context/state-tracker/deep-array-equal.js.map +1 -0
  183. package/dist/context/state-tracker/track-context-state.d.ts +22 -0
  184. package/dist/context/state-tracker/track-context-state.d.ts.map +1 -0
  185. package/dist/context/state-tracker/track-context-state.js +169 -0
  186. package/dist/context/state-tracker/track-context-state.js.map +1 -0
  187. package/dist/context/state-tracker/with-parameters.d.ts +13 -0
  188. package/dist/context/state-tracker/with-parameters.d.ts.map +1 -0
  189. package/dist/context/state-tracker/with-parameters.js +36 -0
  190. package/dist/context/state-tracker/with-parameters.js.map +1 -0
  191. package/dist/debug/debug-program-configuration.d.ts +2 -0
  192. package/dist/debug/debug-program-configuration.d.ts.map +1 -0
  193. package/dist/debug/debug-program-configuration.js +40 -0
  194. package/dist/debug/debug-program-configuration.js.map +1 -0
  195. package/dist/debug/debug-uniforms.d.ts +12 -0
  196. package/dist/debug/debug-uniforms.d.ts.map +1 -0
  197. package/dist/debug/debug-uniforms.js +108 -0
  198. package/dist/debug/debug-uniforms.js.map +1 -0
  199. package/dist/debug/debug-vertex-array.d.ts +5 -0
  200. package/dist/debug/debug-vertex-array.d.ts.map +1 -0
  201. package/dist/debug/debug-vertex-array.js +118 -0
  202. package/dist/debug/debug-vertex-array.js.map +1 -0
  203. package/dist/es5/adapter/converters/set-device-parameters.js +138 -0
  204. package/dist/es5/adapter/converters/set-device-parameters.js.map +1 -0
  205. package/dist/es5/adapter/converters/webgpu-texture-formats.js +296 -0
  206. package/dist/es5/adapter/converters/webgpu-texture-formats.js.map +1 -0
  207. package/dist/es5/adapter/device-helpers/device-features.js +152 -0
  208. package/dist/es5/adapter/device-helpers/device-features.js.map +1 -0
  209. package/dist/es5/adapter/device-helpers/device-limits.js +64 -0
  210. package/dist/es5/adapter/device-helpers/device-limits.js.map +1 -0
  211. package/dist/es5/adapter/device-helpers/get-device-info.js +55 -0
  212. package/dist/es5/adapter/device-helpers/get-device-info.js.map +1 -0
  213. package/dist/es5/{features/check-old-ie.js → adapter/device-helpers/is-old-ie.js} +3 -3
  214. package/dist/es5/adapter/device-helpers/is-old-ie.js.map +1 -0
  215. package/dist/es5/adapter/webgl-device.js +279 -0
  216. package/dist/es5/adapter/webgl-device.js.map +1 -0
  217. package/dist/es5/adapter/webgl-shader.js +155 -0
  218. package/dist/es5/adapter/webgl-shader.js.map +1 -0
  219. package/dist/es5/bundle.js +2 -4
  220. package/dist/es5/bundle.js.map +1 -1
  221. package/dist/es5/classes/accessor.js +36 -38
  222. package/dist/es5/classes/accessor.js.map +1 -1
  223. package/dist/es5/classes/accessor.ts.disabled +159 -0
  224. package/dist/es5/classes/clear.js +17 -11
  225. package/dist/es5/classes/clear.js.map +1 -1
  226. package/dist/es5/classes/copy-and-blit.js +121 -117
  227. package/dist/es5/classes/copy-and-blit.js.map +1 -1
  228. package/dist/es5/classes/framebuffer.js +435 -423
  229. package/dist/es5/classes/framebuffer.js.map +1 -1
  230. package/dist/es5/classes/program-configuration.js +44 -108
  231. package/dist/es5/classes/program-configuration.js.map +1 -1
  232. package/dist/es5/classes/program.js +108 -85
  233. package/dist/es5/classes/program.js.map +1 -1
  234. package/dist/es5/classes/query.js +58 -59
  235. package/dist/es5/classes/query.js.map +1 -1
  236. package/dist/es5/classes/renderbuffer-formats.js +79 -52
  237. package/dist/es5/classes/renderbuffer-formats.js.map +1 -1
  238. package/dist/es5/classes/renderbuffer.js +129 -100
  239. package/dist/es5/classes/renderbuffer.js.map +1 -1
  240. package/dist/es5/classes/shader.js +70 -96
  241. package/dist/es5/classes/shader.js.map +1 -1
  242. package/dist/es5/classes/texture-2d.js +25 -21
  243. package/dist/es5/classes/texture-2d.js.map +1 -1
  244. package/dist/es5/classes/texture-3d.js +49 -29
  245. package/dist/es5/classes/texture-3d.js.map +1 -1
  246. package/dist/es5/classes/texture-cube.js +45 -36
  247. package/dist/es5/classes/texture-cube.js.map +1 -1
  248. package/dist/es5/classes/texture-formats.js +35 -33
  249. package/dist/es5/classes/texture-formats.js.map +1 -1
  250. package/dist/es5/classes/texture.js +213 -101
  251. package/dist/es5/classes/texture.js.map +1 -1
  252. package/dist/es5/classes/transform-feedback.js +37 -34
  253. package/dist/es5/classes/transform-feedback.js.map +1 -1
  254. package/dist/es5/classes/uniform-buffer-layout.js +4 -4
  255. package/dist/es5/classes/uniform-buffer-layout.js.map +1 -1
  256. package/dist/es5/classes/uniforms.js +73 -73
  257. package/dist/es5/classes/uniforms.js.map +1 -1
  258. package/dist/es5/classes/vertex-array-object.js +106 -149
  259. package/dist/es5/classes/vertex-array-object.js.map +1 -1
  260. package/dist/es5/classes/vertex-array.js +52 -43
  261. package/dist/es5/classes/vertex-array.js.map +1 -1
  262. package/dist/es5/classes/{buffer.js → webgl-buffer.js} +120 -111
  263. package/dist/es5/classes/webgl-buffer.js.map +1 -0
  264. package/dist/es5/classes/{resource.js → webgl-resource.js} +78 -99
  265. package/dist/es5/classes/webgl-resource.js.map +1 -0
  266. package/dist/es5/context/context/context-state.js +31 -0
  267. package/dist/es5/context/context/context-state.js.map +1 -0
  268. package/dist/es5/context/context/create-context.js +57 -0
  269. package/dist/es5/context/context/create-context.js.map +1 -0
  270. package/dist/es5/context/context/device-pixels.js +115 -0
  271. package/dist/es5/context/context/device-pixels.js.map +1 -0
  272. package/dist/es5/context/context/get-canvas.js +40 -0
  273. package/dist/es5/context/context/get-canvas.js.map +1 -0
  274. package/dist/es5/context/context/resize-context.js +23 -0
  275. package/dist/es5/context/context/resize-context.js.map +1 -0
  276. package/dist/es5/context/context/webgl-checks.js +54 -0
  277. package/dist/es5/context/context/webgl-checks.js.map +1 -0
  278. package/dist/es5/context/parameters/unified-parameter-api.js +95 -0
  279. package/dist/es5/context/parameters/unified-parameter-api.js.map +1 -0
  280. package/dist/es5/context/parameters/webgl-parameter-tables.js +392 -0
  281. package/dist/es5/context/parameters/webgl-parameter-tables.js.map +1 -0
  282. package/dist/es5/context/parameters/webgl-parameters.js +6 -0
  283. package/dist/es5/context/parameters/webgl-parameters.js.map +1 -0
  284. package/dist/es5/context/polyfill/get-parameter-polyfill.js +81 -0
  285. package/dist/es5/context/polyfill/get-parameter-polyfill.js.map +1 -0
  286. package/dist/es5/context/polyfill/polyfill-context.js +134 -0
  287. package/dist/es5/context/polyfill/polyfill-context.js.map +1 -0
  288. package/dist/es5/context/polyfill/polyfill-table.js +166 -0
  289. package/dist/es5/context/polyfill/polyfill-table.js.map +1 -0
  290. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js +341 -0
  291. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js.map +1 -0
  292. package/dist/es5/context/state-tracker/deep-array-equal.js +28 -0
  293. package/dist/es5/context/state-tracker/deep-array-equal.js.map +1 -0
  294. package/dist/es5/context/state-tracker/track-context-state.js +196 -0
  295. package/dist/es5/context/state-tracker/track-context-state.js.map +1 -0
  296. package/dist/es5/context/state-tracker/with-parameters.js +44 -0
  297. package/dist/es5/context/state-tracker/with-parameters.js.map +1 -0
  298. package/dist/es5/debug/debug-program-configuration.js +1 -1
  299. package/dist/es5/debug/debug-program-configuration.js.map +1 -1
  300. package/dist/es5/debug/debug-uniforms.js +18 -20
  301. package/dist/es5/debug/debug-uniforms.js.map +1 -1
  302. package/dist/es5/debug/debug-vertex-array.js +16 -16
  303. package/dist/es5/debug/debug-vertex-array.js.map +1 -1
  304. package/dist/es5/helpers/get-program-bindings.js +274 -0
  305. package/dist/es5/helpers/get-program-bindings.js.map +1 -0
  306. package/dist/es5/helpers/program-bindings.js +2 -0
  307. package/dist/es5/helpers/program-bindings.js.map +1 -0
  308. package/dist/es5/index.js +159 -99
  309. package/dist/es5/index.js.map +1 -1
  310. package/dist/es5/init.js +21 -41
  311. package/dist/es5/init.js.map +1 -1
  312. package/dist/es5/types/accessor.d.ts +29 -0
  313. package/dist/es5/types.js +2 -0
  314. package/dist/es5/types.js.map +1 -0
  315. package/dist/es5/webgl-utils/attribute-utils.js +4 -4
  316. package/dist/es5/webgl-utils/attribute-utils.js.map +1 -1
  317. package/dist/es5/webgl-utils/constants-to-keys.js +3 -3
  318. package/dist/es5/webgl-utils/constants-to-keys.js.map +1 -1
  319. package/dist/es5/webgl-utils/format-utils.js +21 -17
  320. package/dist/es5/webgl-utils/format-utils.js.map +1 -1
  321. package/dist/es5/webgl-utils/get-error.js.map +1 -1
  322. package/dist/es5/webgl-utils/index.js +74 -0
  323. package/dist/es5/webgl-utils/index.js.map +1 -0
  324. package/dist/es5/webgl-utils/parse-shader-compiler-log.js +72 -0
  325. package/dist/es5/webgl-utils/parse-shader-compiler-log.js.map +1 -0
  326. package/dist/es5/webgl-utils/request-animation-frame.js.map +1 -1
  327. package/dist/es5/webgl-utils/texture-utils.js +6 -4
  328. package/dist/es5/webgl-utils/texture-utils.js.map +1 -1
  329. package/dist/es5/webgl-utils/typed-array-utils.js +39 -34
  330. package/dist/es5/webgl-utils/typed-array-utils.js.map +1 -1
  331. package/dist/esm/adapter/converters/set-device-parameters.js +124 -0
  332. package/dist/esm/adapter/converters/set-device-parameters.js.map +1 -0
  333. package/dist/esm/adapter/converters/webgpu-texture-formats.js +285 -0
  334. package/dist/esm/adapter/converters/webgpu-texture-formats.js.map +1 -0
  335. package/dist/esm/adapter/device-helpers/device-features.js +123 -0
  336. package/dist/esm/adapter/device-helpers/device-features.js.map +1 -0
  337. package/dist/esm/adapter/device-helpers/device-limits.js +90 -0
  338. package/dist/esm/adapter/device-helpers/device-limits.js.map +1 -0
  339. package/dist/esm/adapter/device-helpers/get-device-info.js +44 -0
  340. package/dist/esm/adapter/device-helpers/get-device-info.js.map +1 -0
  341. package/dist/esm/adapter/device-helpers/is-old-ie.js +8 -0
  342. package/dist/esm/adapter/device-helpers/is-old-ie.js.map +1 -0
  343. package/dist/esm/adapter/webgl-device.js +208 -0
  344. package/dist/esm/adapter/webgl-device.js.map +1 -0
  345. package/dist/esm/adapter/webgl-shader.js +82 -0
  346. package/dist/esm/adapter/webgl-shader.js.map +1 -0
  347. package/dist/esm/bundle.js +2 -4
  348. package/dist/esm/bundle.js.map +1 -1
  349. package/dist/esm/classes/accessor.js +6 -6
  350. package/dist/esm/classes/accessor.js.map +1 -1
  351. package/dist/esm/classes/accessor.ts.disabled +159 -0
  352. package/dist/esm/classes/clear.js +19 -14
  353. package/dist/esm/classes/clear.js.map +1 -1
  354. package/dist/esm/classes/copy-and-blit.js +67 -64
  355. package/dist/esm/classes/copy-and-blit.js.map +1 -1
  356. package/dist/esm/classes/framebuffer.js +341 -313
  357. package/dist/esm/classes/framebuffer.js.map +1 -1
  358. package/dist/esm/classes/program-configuration.js +25 -104
  359. package/dist/esm/classes/program-configuration.js.map +1 -1
  360. package/dist/esm/classes/program.js +98 -62
  361. package/dist/esm/classes/program.js.map +1 -1
  362. package/dist/esm/classes/query.js +20 -16
  363. package/dist/esm/classes/query.js.map +1 -1
  364. package/dist/esm/classes/renderbuffer-formats.js +72 -49
  365. package/dist/esm/classes/renderbuffer-formats.js.map +1 -1
  366. package/dist/esm/classes/renderbuffer.js +86 -73
  367. package/dist/esm/classes/renderbuffer.js.map +1 -1
  368. package/dist/esm/classes/shader.js +47 -67
  369. package/dist/esm/classes/shader.js.map +1 -1
  370. package/dist/esm/classes/texture-2d.js +13 -9
  371. package/dist/esm/classes/texture-2d.js.map +1 -1
  372. package/dist/esm/classes/texture-3d.js +28 -16
  373. package/dist/esm/classes/texture-3d.js.map +1 -1
  374. package/dist/esm/classes/texture-cube.js +45 -31
  375. package/dist/esm/classes/texture-cube.js.map +1 -1
  376. package/dist/esm/classes/texture-formats.js +52 -51
  377. package/dist/esm/classes/texture-formats.js.map +1 -1
  378. package/dist/esm/classes/texture.js +174 -58
  379. package/dist/esm/classes/texture.js.map +1 -1
  380. package/dist/esm/classes/transform-feedback.js +26 -14
  381. package/dist/esm/classes/transform-feedback.js.map +1 -1
  382. package/dist/esm/classes/uniform-buffer-layout.js +1 -1
  383. package/dist/esm/classes/uniform-buffer-layout.js.map +1 -1
  384. package/dist/esm/classes/uniforms.js +111 -113
  385. package/dist/esm/classes/uniforms.js.map +1 -1
  386. package/dist/esm/classes/vertex-array-object.js +52 -89
  387. package/dist/esm/classes/vertex-array-object.js.map +1 -1
  388. package/dist/esm/classes/vertex-array.js +52 -31
  389. package/dist/esm/classes/vertex-array.js.map +1 -1
  390. package/dist/esm/classes/webgl-buffer.js +382 -0
  391. package/dist/esm/classes/webgl-buffer.js.map +1 -0
  392. package/dist/esm/classes/webgl-resource.js +212 -0
  393. package/dist/esm/classes/webgl-resource.js.map +1 -0
  394. package/dist/esm/context/context/context-state.js +26 -0
  395. package/dist/esm/context/context/context-state.js.map +1 -0
  396. package/dist/esm/context/context/create-context.js +37 -0
  397. package/dist/esm/context/context/create-context.js.map +1 -0
  398. package/dist/esm/context/context/device-pixels.js +98 -0
  399. package/dist/esm/context/context/device-pixels.js.map +1 -0
  400. package/dist/esm/context/context/get-canvas.js +31 -0
  401. package/dist/esm/context/context/get-canvas.js.map +1 -0
  402. package/dist/esm/context/context/resize-context.js +15 -0
  403. package/dist/esm/context/context/resize-context.js.map +1 -0
  404. package/dist/esm/context/context/webgl-checks.js +34 -0
  405. package/dist/esm/context/context/webgl-checks.js.map +1 -0
  406. package/dist/esm/context/parameters/unified-parameter-api.js +65 -0
  407. package/dist/esm/context/parameters/unified-parameter-api.js.map +1 -0
  408. package/dist/esm/context/parameters/webgl-parameter-tables.js +445 -0
  409. package/dist/esm/context/parameters/webgl-parameter-tables.js.map +1 -0
  410. package/dist/esm/context/parameters/webgl-parameters.js +2 -0
  411. package/dist/esm/context/parameters/webgl-parameters.js.map +1 -0
  412. package/dist/esm/context/polyfill/get-parameter-polyfill.js +91 -0
  413. package/dist/esm/context/polyfill/get-parameter-polyfill.js.map +1 -0
  414. package/dist/esm/context/polyfill/polyfill-context.js +91 -0
  415. package/dist/esm/context/polyfill/polyfill-context.js.map +1 -0
  416. package/dist/esm/context/polyfill/polyfill-table.js +160 -0
  417. package/dist/esm/context/polyfill/polyfill-table.js.map +1 -0
  418. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js +335 -0
  419. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js.map +1 -0
  420. package/dist/esm/context/state-tracker/deep-array-equal.js +21 -0
  421. package/dist/esm/context/state-tracker/deep-array-equal.js.map +1 -0
  422. package/dist/esm/context/state-tracker/track-context-state.js +169 -0
  423. package/dist/esm/context/state-tracker/track-context-state.js.map +1 -0
  424. package/dist/esm/context/state-tracker/with-parameters.js +36 -0
  425. package/dist/esm/context/state-tracker/with-parameters.js.map +1 -0
  426. package/dist/esm/debug/debug-program-configuration.js +4 -4
  427. package/dist/esm/debug/debug-program-configuration.js.map +1 -1
  428. package/dist/esm/debug/debug-uniforms.js +9 -9
  429. package/dist/esm/debug/debug-uniforms.js.map +1 -1
  430. package/dist/esm/debug/debug-vertex-array.js +18 -16
  431. package/dist/esm/debug/debug-vertex-array.js.map +1 -1
  432. package/dist/esm/helpers/get-program-bindings.js +228 -0
  433. package/dist/esm/helpers/get-program-bindings.js.map +1 -0
  434. package/dist/esm/helpers/program-bindings.js +2 -0
  435. package/dist/esm/helpers/program-bindings.js.map +1 -0
  436. package/dist/esm/index.js +17 -15
  437. package/dist/esm/index.js.map +1 -1
  438. package/dist/esm/init.js +12 -28
  439. package/dist/esm/init.js.map +1 -1
  440. package/dist/esm/types/accessor.d.ts +29 -0
  441. package/dist/esm/types.js +2 -0
  442. package/dist/esm/types.js.map +1 -0
  443. package/dist/esm/webgl-utils/attribute-utils.js +1 -1
  444. package/dist/esm/webgl-utils/attribute-utils.js.map +1 -1
  445. package/dist/esm/webgl-utils/constants-to-keys.js +4 -4
  446. package/dist/esm/webgl-utils/constants-to-keys.js.map +1 -1
  447. package/dist/esm/webgl-utils/format-utils.js +16 -15
  448. package/dist/esm/webgl-utils/format-utils.js.map +1 -1
  449. package/dist/esm/webgl-utils/get-error.js +1 -1
  450. package/dist/esm/webgl-utils/get-error.js.map +1 -1
  451. package/dist/esm/webgl-utils/index.js +5 -0
  452. package/dist/esm/webgl-utils/index.js.map +1 -0
  453. package/dist/esm/webgl-utils/parse-shader-compiler-log.js +37 -0
  454. package/dist/esm/webgl-utils/parse-shader-compiler-log.js.map +1 -0
  455. package/dist/esm/webgl-utils/request-animation-frame.js.map +1 -1
  456. package/dist/esm/webgl-utils/texture-utils.js +4 -3
  457. package/dist/esm/webgl-utils/texture-utils.js.map +1 -1
  458. package/dist/esm/webgl-utils/typed-array-utils.js +41 -36
  459. package/dist/esm/webgl-utils/typed-array-utils.js.map +1 -1
  460. package/dist/helpers/get-program-bindings.d.ts +8 -0
  461. package/dist/helpers/get-program-bindings.d.ts.map +1 -0
  462. package/dist/helpers/get-program-bindings.js +228 -0
  463. package/dist/helpers/get-program-bindings.js.map +1 -0
  464. package/dist/helpers/program-bindings.d.ts +41 -0
  465. package/dist/helpers/program-bindings.d.ts.map +1 -0
  466. package/dist/helpers/program-bindings.js +2 -0
  467. package/dist/helpers/program-bindings.js.map +1 -0
  468. package/dist/index.d.ts +51 -0
  469. package/dist/index.d.ts.map +1 -0
  470. package/dist/index.js +37 -0
  471. package/dist/index.js.map +1 -0
  472. package/dist/init.d.ts +5 -0
  473. package/dist/init.d.ts.map +1 -0
  474. package/dist/init.js +33 -0
  475. package/dist/init.js.map +1 -0
  476. package/dist/types/accessor.d.ts +29 -0
  477. package/dist/types.d.ts +9 -0
  478. package/dist/types.d.ts.map +1 -0
  479. package/dist/types.js +2 -0
  480. package/dist/types.js.map +1 -0
  481. package/dist/webgl-utils/attribute-utils.d.ts +18 -0
  482. package/dist/webgl-utils/attribute-utils.d.ts.map +1 -0
  483. package/dist/webgl-utils/attribute-utils.js +182 -0
  484. package/dist/webgl-utils/attribute-utils.js.map +1 -0
  485. package/dist/webgl-utils/constants-to-keys.d.ts +4 -0
  486. package/dist/webgl-utils/constants-to-keys.d.ts.map +1 -0
  487. package/dist/webgl-utils/constants-to-keys.js +41 -0
  488. package/dist/webgl-utils/constants-to-keys.js.map +1 -0
  489. package/dist/webgl-utils/format-utils.d.ts +3 -0
  490. package/dist/webgl-utils/format-utils.d.ts.map +1 -0
  491. package/dist/webgl-utils/format-utils.js +45 -0
  492. package/dist/webgl-utils/format-utils.js.map +1 -0
  493. package/dist/webgl-utils/get-error.d.ts +3 -0
  494. package/dist/webgl-utils/get-error.d.ts.map +1 -0
  495. package/dist/webgl-utils/get-error.js +41 -0
  496. package/dist/webgl-utils/get-error.js.map +1 -0
  497. package/dist/webgl-utils/index.d.ts +5 -0
  498. package/dist/webgl-utils/index.d.ts.map +1 -0
  499. package/dist/webgl-utils/index.js +5 -0
  500. package/dist/webgl-utils/index.js.map +1 -0
  501. package/dist/webgl-utils/parse-shader-compiler-log.d.ts +8 -0
  502. package/dist/webgl-utils/parse-shader-compiler-log.d.ts.map +1 -0
  503. package/dist/webgl-utils/parse-shader-compiler-log.js +37 -0
  504. package/dist/webgl-utils/parse-shader-compiler-log.js.map +1 -0
  505. package/dist/webgl-utils/request-animation-frame.d.ts +4 -0
  506. package/dist/webgl-utils/request-animation-frame.d.ts.map +1 -0
  507. package/dist/webgl-utils/request-animation-frame.js +7 -0
  508. package/dist/webgl-utils/request-animation-frame.js.map +1 -0
  509. package/dist/webgl-utils/texture-utils.d.ts +15 -0
  510. package/dist/webgl-utils/texture-utils.d.ts.map +1 -0
  511. package/dist/webgl-utils/texture-utils.js +48 -0
  512. package/dist/webgl-utils/texture-utils.js.map +1 -0
  513. package/dist/webgl-utils/typed-array-utils.d.ts +43 -0
  514. package/dist/webgl-utils/typed-array-utils.d.ts.map +1 -0
  515. package/{src → dist}/webgl-utils/typed-array-utils.js +45 -27
  516. package/dist/webgl-utils/typed-array-utils.js.map +1 -0
  517. package/package.json +9 -9
  518. package/src/.DS_Store +0 -0
  519. package/src/adapter/converters/set-device-parameters.ts +182 -0
  520. package/src/adapter/converters/webgpu-texture-formats.ts +167 -0
  521. package/src/adapter/device-helpers/device-features.ts +227 -0
  522. package/src/adapter/device-helpers/device-limits.ts +150 -0
  523. package/src/adapter/device-helpers/get-device-info.ts +49 -0
  524. package/src/{features/check-old-ie.js → adapter/device-helpers/is-old-ie.ts} +3 -3
  525. package/src/adapter/webgl-device.ts +406 -0
  526. package/src/adapter/webgl-shader.ts +84 -0
  527. package/src/bundle.ts +4 -0
  528. package/src/classes/accessor.js +2 -3
  529. package/src/classes/accessor.ts.disabled +159 -0
  530. package/src/classes/clear.ts +108 -0
  531. package/src/classes/{copy-and-blit.js → copy-and-blit.ts} +143 -55
  532. package/src/classes/{framebuffer.js → framebuffer.ts} +381 -321
  533. package/src/classes/program-configuration.ts +77 -0
  534. package/src/classes/{program.js → program.ts} +111 -77
  535. package/src/classes/{query.js → query.ts} +31 -25
  536. package/src/classes/{renderbuffer-formats.js → renderbuffer-formats.ts} +42 -14
  537. package/src/classes/renderbuffer.ts +154 -0
  538. package/src/classes/shader.ts +129 -0
  539. package/src/classes/texture-2d.ts +35 -0
  540. package/src/classes/{texture-3d.js → texture-3d.ts} +48 -18
  541. package/src/classes/{texture-cube.js → texture-cube.ts} +52 -34
  542. package/src/classes/{texture-formats.js → texture-formats.ts} +10 -2
  543. package/src/classes/{texture.js → texture.ts} +223 -57
  544. package/src/classes/{transform-feedback.js → transform-feedback.ts} +34 -25
  545. package/src/classes/{uniform-buffer-layout.js → uniform-buffer-layout.ts} +10 -6
  546. package/src/classes/{uniforms.js → uniforms.ts} +123 -77
  547. package/src/classes/{vertex-array-object.js → vertex-array-object.ts} +136 -114
  548. package/src/classes/{vertex-array.js → vertex-array.ts} +84 -59
  549. package/src/classes/{buffer.js → webgl-buffer.ts} +126 -50
  550. package/src/classes/{resource.js → webgl-resource.ts} +55 -46
  551. package/src/context/context/context-state.ts +39 -0
  552. package/src/context/context/create-context.ts +83 -0
  553. package/src/context/context/device-pixels.ts +147 -0
  554. package/src/context/context/get-canvas.ts +37 -0
  555. package/src/context/context/resize-context.ts +37 -0
  556. package/src/context/context/webgl-checks.ts +49 -0
  557. package/src/context/parameters/unified-parameter-api.ts +128 -0
  558. package/src/context/parameters/webgl-parameter-tables.ts +625 -0
  559. package/src/context/parameters/webgl-parameters.ts +197 -0
  560. package/src/context/polyfill/get-parameter-polyfill.ts +118 -0
  561. package/src/context/polyfill/polyfill-context.ts +98 -0
  562. package/src/context/polyfill/polyfill-table.ts +162 -0
  563. package/src/context/polyfill/polyfill-vertex-array-object.ts +360 -0
  564. package/src/context/state-tracker/deep-array-equal.ts +20 -0
  565. package/src/context/state-tracker/track-context-state.ts +250 -0
  566. package/src/context/state-tracker/with-parameters.ts +50 -0
  567. package/src/debug/{debug-program-configuration.js → debug-program-configuration.ts} +0 -0
  568. package/src/debug/{debug-uniforms.js → debug-uniforms.ts} +18 -8
  569. package/src/debug/{debug-vertex-array.js → debug-vertex-array.ts} +6 -5
  570. package/src/helpers/get-program-bindings.ts +244 -0
  571. package/src/helpers/program-bindings.ts +46 -0
  572. package/src/index.ts +133 -0
  573. package/src/{init.js → init.ts} +11 -25
  574. package/src/types/accessor.d.ts +29 -0
  575. package/src/{types.d.ts → types.ts} +1 -1
  576. package/src/webgl-utils/{attribute-utils.js → attribute-utils.ts} +1 -2
  577. package/src/webgl-utils/{constants-to-keys.js → constants-to-keys.ts} +1 -1
  578. package/src/webgl-utils/{format-utils.js → format-utils.ts} +1 -1
  579. package/src/webgl-utils/{get-error.js → get-error.ts} +0 -0
  580. package/src/webgl-utils/index.ts +12 -0
  581. package/src/webgl-utils/parse-shader-compiler-log.ts +48 -0
  582. package/src/webgl-utils/{request-animation-frame.js → request-animation-frame.ts} +3 -2
  583. package/src/webgl-utils/{texture-utils.js → texture-utils.ts} +14 -10
  584. package/src/webgl-utils/typed-array-utils.ts +137 -0
  585. package/dist/dist.js +0 -13555
  586. package/dist/dist.min.js +0 -1
  587. package/dist/es5/classes/buffer.d.ts +0 -84
  588. package/dist/es5/classes/buffer.js.map +0 -1
  589. package/dist/es5/classes/clear.d.ts +0 -11
  590. package/dist/es5/classes/copy-and-blit.d.ts +0 -101
  591. package/dist/es5/classes/framebuffer.d.ts +0 -96
  592. package/dist/es5/classes/program-configuration.d.ts +0 -15
  593. package/dist/es5/classes/program.d.ts +0 -44
  594. package/dist/es5/classes/query.d.ts +0 -21
  595. package/dist/es5/classes/renderbuffer.d.ts +0 -34
  596. package/dist/es5/classes/resource.d.ts +0 -47
  597. package/dist/es5/classes/resource.js.map +0 -1
  598. package/dist/es5/classes/shader.d.ts +0 -29
  599. package/dist/es5/classes/texture-2d.d.ts +0 -11
  600. package/dist/es5/classes/texture-3d.d.ts +0 -29
  601. package/dist/es5/classes/texture-cube.d.ts +0 -23
  602. package/dist/es5/classes/texture.d.ts +0 -80
  603. package/dist/es5/classes/transform-feedback.d.ts +0 -16
  604. package/dist/es5/classes/uniform-buffer-layout.d.ts +0 -18
  605. package/dist/es5/classes/uniforms.d.ts +0 -63
  606. package/dist/es5/classes/vertex-array-object.d.ts +0 -25
  607. package/dist/es5/classes/vertex-array.d.ts +0 -37
  608. package/dist/es5/debug/debug-program-configuration.d.ts +0 -1
  609. package/dist/es5/debug/debug-uniforms.d.ts +0 -11
  610. package/dist/es5/debug/debug-vertex-array.d.ts +0 -1
  611. package/dist/es5/features/check-glsl-extension.js +0 -41
  612. package/dist/es5/features/check-glsl-extension.js.map +0 -1
  613. package/dist/es5/features/check-old-ie.js.map +0 -1
  614. package/dist/es5/features/features.js +0 -99
  615. package/dist/es5/features/features.js.map +0 -1
  616. package/dist/es5/features/index.js +0 -64
  617. package/dist/es5/features/index.js.map +0 -1
  618. package/dist/es5/features/limits.js +0 -64
  619. package/dist/es5/features/limits.js.map +0 -1
  620. package/dist/es5/features/webgl-features-table.js +0 -64
  621. package/dist/es5/features/webgl-features-table.js.map +0 -1
  622. package/dist/es5/features/webgl-limits-table.js +0 -132
  623. package/dist/es5/features/webgl-limits-table.js.map +0 -1
  624. package/dist/es5/glsl-utils/format-glsl-error.d.ts +0 -16
  625. package/dist/es5/glsl-utils/format-glsl-error.js +0 -108
  626. package/dist/es5/glsl-utils/format-glsl-error.js.map +0 -1
  627. package/dist/es5/glsl-utils/get-shader-name.js +0 -14
  628. package/dist/es5/glsl-utils/get-shader-name.js.map +0 -1
  629. package/dist/es5/glsl-utils/get-shader-type-name.js +0 -22
  630. package/dist/es5/glsl-utils/get-shader-type-name.js.map +0 -1
  631. package/dist/es5/glsl-utils/get-shader-version.js +0 -22
  632. package/dist/es5/glsl-utils/get-shader-version.js.map +0 -1
  633. package/dist/es5/glsl-utils/index.js +0 -48
  634. package/dist/es5/glsl-utils/index.js.map +0 -1
  635. package/dist/es5/index.d.ts +0 -71
  636. package/dist/es5/init.d.ts +0 -12
  637. package/dist/es5/types.d.ts +0 -8
  638. package/dist/es5/utils/array-utils-flat.js +0 -51
  639. package/dist/es5/utils/array-utils-flat.js.map +0 -1
  640. package/dist/es5/utils/assert.d.ts +0 -1
  641. package/dist/es5/utils/assert.js +0 -13
  642. package/dist/es5/utils/assert.js.map +0 -1
  643. package/dist/es5/utils/check-props.js +0 -51
  644. package/dist/es5/utils/check-props.js.map +0 -1
  645. package/dist/es5/utils/format-value.js +0 -57
  646. package/dist/es5/utils/format-value.js.map +0 -1
  647. package/dist/es5/utils/is-old-ie.d.ts +0 -1
  648. package/dist/es5/utils/is-old-ie.js +0 -14
  649. package/dist/es5/utils/is-old-ie.js.map +0 -1
  650. package/dist/es5/utils/load-file.js +0 -50
  651. package/dist/es5/utils/load-file.js.map +0 -1
  652. package/dist/es5/utils/stub-methods.js +0 -25
  653. package/dist/es5/utils/stub-methods.js.map +0 -1
  654. package/dist/es5/utils/utils.d.ts +0 -13
  655. package/dist/es5/utils/utils.js +0 -36
  656. package/dist/es5/utils/utils.js.map +0 -1
  657. package/dist/es5/webgl-utils/request-animation-frame.d.ts +0 -3
  658. package/dist/es5/webgl-utils/texture-utils.d.ts +0 -11
  659. package/dist/es5/webgl-utils/typed-array-utils.d.ts +0 -36
  660. package/dist/esm/classes/buffer.d.ts +0 -84
  661. package/dist/esm/classes/buffer.js.map +0 -1
  662. package/dist/esm/classes/clear.d.ts +0 -11
  663. package/dist/esm/classes/copy-and-blit.d.ts +0 -101
  664. package/dist/esm/classes/framebuffer.d.ts +0 -96
  665. package/dist/esm/classes/program-configuration.d.ts +0 -15
  666. package/dist/esm/classes/program.d.ts +0 -44
  667. package/dist/esm/classes/query.d.ts +0 -21
  668. package/dist/esm/classes/renderbuffer.d.ts +0 -34
  669. package/dist/esm/classes/resource.d.ts +0 -47
  670. package/dist/esm/classes/resource.js.map +0 -1
  671. package/dist/esm/classes/shader.d.ts +0 -29
  672. package/dist/esm/classes/texture-2d.d.ts +0 -11
  673. package/dist/esm/classes/texture-3d.d.ts +0 -29
  674. package/dist/esm/classes/texture-cube.d.ts +0 -23
  675. package/dist/esm/classes/texture.d.ts +0 -80
  676. package/dist/esm/classes/transform-feedback.d.ts +0 -16
  677. package/dist/esm/classes/uniform-buffer-layout.d.ts +0 -18
  678. package/dist/esm/classes/uniforms.d.ts +0 -63
  679. package/dist/esm/classes/vertex-array-object.d.ts +0 -25
  680. package/dist/esm/classes/vertex-array.d.ts +0 -37
  681. package/dist/esm/debug/debug-program-configuration.d.ts +0 -1
  682. package/dist/esm/debug/debug-uniforms.d.ts +0 -11
  683. package/dist/esm/debug/debug-vertex-array.d.ts +0 -1
  684. package/dist/esm/features/check-glsl-extension.js +0 -27
  685. package/dist/esm/features/check-glsl-extension.js.map +0 -1
  686. package/dist/esm/features/check-old-ie.js.map +0 -1
  687. package/dist/esm/features/features.js +0 -66
  688. package/dist/esm/features/features.js.map +0 -1
  689. package/dist/esm/features/index.js +0 -5
  690. package/dist/esm/features/index.js.map +0 -1
  691. package/dist/esm/features/limits.js +0 -52
  692. package/dist/esm/features/limits.js.map +0 -1
  693. package/dist/esm/features/webgl-features-table.js +0 -71
  694. package/dist/esm/features/webgl-features-table.js.map +0 -1
  695. package/dist/esm/features/webgl-limits-table.js +0 -160
  696. package/dist/esm/features/webgl-limits-table.js.map +0 -1
  697. package/dist/esm/glsl-utils/format-glsl-error.d.ts +0 -16
  698. package/dist/esm/glsl-utils/format-glsl-error.js +0 -93
  699. package/dist/esm/glsl-utils/format-glsl-error.js.map +0 -1
  700. package/dist/esm/glsl-utils/get-shader-name.js +0 -6
  701. package/dist/esm/glsl-utils/get-shader-name.js.map +0 -1
  702. package/dist/esm/glsl-utils/get-shader-type-name.js +0 -15
  703. package/dist/esm/glsl-utils/get-shader-type-name.js.map +0 -1
  704. package/dist/esm/glsl-utils/get-shader-version.js +0 -15
  705. package/dist/esm/glsl-utils/get-shader-version.js.map +0 -1
  706. package/dist/esm/glsl-utils/index.js +0 -5
  707. package/dist/esm/glsl-utils/index.js.map +0 -1
  708. package/dist/esm/index.d.ts +0 -71
  709. package/dist/esm/init.d.ts +0 -12
  710. package/dist/esm/types.d.ts +0 -8
  711. package/dist/esm/utils/array-utils-flat.js +0 -39
  712. package/dist/esm/utils/array-utils-flat.js.map +0 -1
  713. package/dist/esm/utils/assert.d.ts +0 -1
  714. package/dist/esm/utils/assert.js +0 -6
  715. package/dist/esm/utils/assert.js.map +0 -1
  716. package/dist/esm/utils/check-props.js +0 -38
  717. package/dist/esm/utils/check-props.js.map +0 -1
  718. package/dist/esm/utils/format-value.js +0 -50
  719. package/dist/esm/utils/format-value.js.map +0 -1
  720. package/dist/esm/utils/is-old-ie.d.ts +0 -1
  721. package/dist/esm/utils/is-old-ie.js +0 -5
  722. package/dist/esm/utils/is-old-ie.js.map +0 -1
  723. package/dist/esm/utils/load-file.js +0 -30
  724. package/dist/esm/utils/load-file.js.map +0 -1
  725. package/dist/esm/utils/stub-methods.js +0 -17
  726. package/dist/esm/utils/stub-methods.js.map +0 -1
  727. package/dist/esm/utils/utils.d.ts +0 -13
  728. package/dist/esm/utils/utils.js +0 -22
  729. package/dist/esm/utils/utils.js.map +0 -1
  730. package/dist/esm/webgl-utils/request-animation-frame.d.ts +0 -3
  731. package/dist/esm/webgl-utils/texture-utils.d.ts +0 -11
  732. package/dist/esm/webgl-utils/typed-array-utils.d.ts +0 -36
  733. package/src/bundle.js +0 -8
  734. package/src/classes/buffer.d.ts +0 -84
  735. package/src/classes/clear.d.ts +0 -11
  736. package/src/classes/copy-and-blit.d.ts +0 -101
  737. package/src/classes/framebuffer.d.ts +0 -96
  738. package/src/classes/program-configuration.d.ts +0 -15
  739. package/src/classes/program-configuration.js +0 -123
  740. package/src/classes/program.d.ts +0 -44
  741. package/src/classes/query.d.ts +0 -21
  742. package/src/classes/renderbuffer.d.ts +0 -34
  743. package/src/classes/renderbuffer.js +0 -105
  744. package/src/classes/resource.d.ts +0 -47
  745. package/src/classes/shader.d.ts +0 -29
  746. package/src/classes/shader.js +0 -147
  747. package/src/classes/texture-2d.d.ts +0 -11
  748. package/src/classes/texture-2d.js +0 -30
  749. package/src/classes/texture-3d.d.ts +0 -29
  750. package/src/classes/texture-cube.d.ts +0 -23
  751. package/src/classes/texture.d.ts +0 -80
  752. package/src/classes/transform-feedback.d.ts +0 -16
  753. package/src/classes/uniform-buffer-layout.d.ts +0 -18
  754. package/src/classes/uniforms.d.ts +0 -63
  755. package/src/classes/vertex-array-object.d.ts +0 -25
  756. package/src/classes/vertex-array.d.ts +0 -37
  757. package/src/debug/debug-program-configuration.d.ts +0 -1
  758. package/src/debug/debug-uniforms.d.ts +0 -11
  759. package/src/debug/debug-vertex-array.d.ts +0 -1
  760. package/src/features/check-glsl-extension.js +0 -34
  761. package/src/features/features.js +0 -79
  762. package/src/features/index.js +0 -5
  763. package/src/features/limits.js +0 -65
  764. package/src/features/webgl-features-table.js +0 -104
  765. package/src/features/webgl-limits-table.js +0 -51
  766. package/src/glsl-utils/format-glsl-error.d.ts +0 -16
  767. package/src/glsl-utils/format-glsl-error.js +0 -107
  768. package/src/glsl-utils/get-shader-name.js +0 -7
  769. package/src/glsl-utils/get-shader-type-name.js +0 -13
  770. package/src/glsl-utils/get-shader-version.js +0 -12
  771. package/src/glsl-utils/index.js +0 -8
  772. package/src/index.d.ts +0 -71
  773. package/src/index.js +0 -70
  774. package/src/init.d.ts +0 -12
  775. package/src/utils/array-utils-flat.js +0 -56
  776. package/src/utils/assert.d.ts +0 -1
  777. package/src/utils/assert.js +0 -7
  778. package/src/utils/check-props.js +0 -68
  779. package/src/utils/format-value.js +0 -37
  780. package/src/utils/is-old-ie.d.ts +0 -1
  781. package/src/utils/is-old-ie.js +0 -6
  782. package/src/utils/load-file.js +0 -39
  783. package/src/utils/stub-methods.js +0 -20
  784. package/src/utils/utils.d.ts +0 -13
  785. package/src/utils/utils.js +0 -36
  786. package/src/webgl-utils/request-animation-frame.d.ts +0 -3
  787. package/src/webgl-utils/texture-utils.d.ts +0 -11
  788. package/src/webgl-utils/typed-array-utils.d.ts +0 -36
@@ -1,123 +0,0 @@
1
- // Contains metadata describing attribute configurations for a program's shaders
2
- // Much of this is automatically extracted from shaders after program linking
3
- import Accessor from './accessor';
4
- import {isWebGL2} from '@luma.gl/gltools';
5
- import {decomposeCompositeGLType} from '../webgl-utils/attribute-utils';
6
-
7
- export default class ProgramConfiguration {
8
- constructor(program) {
9
- this.id = program.id;
10
- this.attributeInfos = [];
11
- this.attributeInfosByName = {};
12
-
13
- // Locations may not be contiguous the case of matrix attributes
14
- // so keep a separate location->attribute map.
15
- this.attributeInfosByLocation = [];
16
- this.varyingInfos = [];
17
- this.varyingInfosByName = {};
18
- Object.seal(this);
19
- this._readAttributesFromProgram(program);
20
- this._readVaryingsFromProgram(program);
21
- }
22
-
23
- getAttributeInfo(locationOrName) {
24
- const location = Number(locationOrName);
25
- if (Number.isFinite(location)) {
26
- return this.attributeInfosByLocation[location];
27
- }
28
- return this.attributeInfosByName[locationOrName] || null;
29
- }
30
-
31
- // Resolves an attribute name or index to an index
32
- getAttributeLocation(locationOrName) {
33
- const attributeInfo = this.getAttributeInfo(locationOrName);
34
- return attributeInfo ? attributeInfo.location : -1;
35
- }
36
-
37
- getAttributeAccessor(locationOrName) {
38
- const attributeInfo = this.getAttributeInfo(locationOrName);
39
- return attributeInfo ? attributeInfo.accessor : null;
40
- }
41
-
42
- getVaryingInfo(locationOrName) {
43
- const location = Number(locationOrName);
44
- if (Number.isFinite(location)) {
45
- return this.varyingInfos[location];
46
- }
47
- return this.varyingInfosByName[locationOrName] || null;
48
- }
49
-
50
- getVaryingIndex(locationOrName) {
51
- const varying = this.getVaryingInfo();
52
- return varying ? varying.location : -1;
53
- }
54
-
55
- getVaryingAccessor(locationOrName) {
56
- const varying = this.getVaryingInfo();
57
- return varying ? varying.accessor : null;
58
- }
59
-
60
- // PRIVATE METHODS
61
-
62
- // linkProgram needs to have been called, although linking does not need to have been successful
63
- _readAttributesFromProgram(program) {
64
- const {gl} = program;
65
- const count = gl.getProgramParameter(program.handle, gl.ACTIVE_ATTRIBUTES);
66
-
67
- for (let index = 0; index < count; index++) {
68
- const {name, type, size} = gl.getActiveAttrib(program.handle, index);
69
- const location = gl.getAttribLocation(program.handle, name);
70
- // Add only user provided attributes, for built-in attributes like
71
- // `gl_InstanceID` locaiton will be < 0
72
- if (location >= 0) {
73
- this._addAttribute(location, name, type, size);
74
- }
75
- }
76
-
77
- this.attributeInfos.sort((a, b) => a.location - b.location);
78
- }
79
-
80
- // linkProgram needs to have been called, although linking does not need to have been successful
81
- _readVaryingsFromProgram(program) {
82
- const {gl} = program;
83
- if (!isWebGL2(gl)) {
84
- return;
85
- }
86
-
87
- const count = gl.getProgramParameter(program.handle, gl.TRANSFORM_FEEDBACK_VARYINGS);
88
- for (let location = 0; location < count; location++) {
89
- const {name, type, size} = gl.getTransformFeedbackVarying(program.handle, location);
90
- this._addVarying(location, name, type, size);
91
- }
92
-
93
- this.varyingInfos.sort((a, b) => a.location - b.location);
94
- }
95
-
96
- _addAttribute(location, name, compositeType, size) {
97
- const {type, components} = decomposeCompositeGLType(compositeType);
98
- const accessor = {type, size: size * components};
99
- this._inferProperties(location, name, accessor);
100
-
101
- const attributeInfo = {location, name, accessor: new Accessor(accessor)}; // Base values
102
- this.attributeInfos.push(attributeInfo);
103
- this.attributeInfosByLocation[location] = attributeInfo; // For quick location based lookup
104
- this.attributeInfosByName[attributeInfo.name] = attributeInfo; // For quick name based lookup
105
- }
106
-
107
- // Extract additional attribute metadata from shader names (based on attribute naming conventions)
108
- _inferProperties(location, name, accessor) {
109
- if (/instance/i.test(name)) {
110
- // Any attribute containing the word "instance" will be assumed to be instanced
111
- accessor.divisor = 1;
112
- }
113
- }
114
-
115
- _addVarying(location, name, compositeType, size) {
116
- const {type, components} = decomposeCompositeGLType(compositeType);
117
- const accessor = new Accessor({type, size: size * components});
118
-
119
- const varying = {location, name, accessor}; // Base values
120
- this.varyingInfos.push(varying);
121
- this.varyingInfosByName[varying.name] = varying; // For quick name based lookup
122
- }
123
- }
@@ -1,44 +0,0 @@
1
- import Resource, {ResourceProps} from './resource';
2
- import ProgramConfiguration from './program-configuration';
3
-
4
- export type ProgramProps = ResourceProps & {
5
-
6
- }
7
-
8
- /**
9
- * A Program holds fully processed executable code,
10
- * for one or more Shader stages.
11
- */
12
- export default class Program extends Resource {
13
-
14
- readonly handle: WebGLProgram;
15
- readonly configuration: ProgramConfiguration;
16
-
17
- constructor(gl: WebGLRenderingContext, props?: {});
18
- initialize(props?: {}): this;
19
- delete(options?: {}): this;
20
- setProps(props: any): this;
21
- draw(options: {
22
- logPriority?: any;
23
- drawMode?: any;
24
- vertexCount: any;
25
- offset?: number;
26
- start?: any;
27
- end?: any;
28
- isIndexed?: boolean;
29
- indexType?: any;
30
- instanceCount?: number;
31
- isInstanced?: boolean;
32
- vertexArray?: any;
33
- transformFeedback?: any;
34
- framebuffer?: any;
35
- parameters?: {};
36
- uniforms?: any;
37
- samplers?: any;
38
- }): boolean;
39
- setUniforms(uniforms?: {}): this;
40
- getActiveUniforms(uniformIndices: any, pname: any): any;
41
- getUniformBlockIndex(blockName: any): any;
42
- getActiveUniformBlockParameter(blockIndex: any, pname: any): any;
43
- uniformBlockBinding(blockIndex: any, blockBinding: any): void;
44
- }
@@ -1,21 +0,0 @@
1
- import Resource from './resource';
2
-
3
- /**
4
- * Asynchronous queries for different kinds of information
5
- */
6
- export default class Query extends Resource {
7
- readonly handle: WebGLQuery;
8
-
9
- static isSupported(gl: WebGLRenderingContext, opts?: any[]): boolean;
10
- constructor(gl: WebGLRenderingContext, opts?: {});
11
- beginTimeElapsedQuery(): this;
12
- beginOcclusionQuery({conservative}?: {conservative?: boolean}): this;
13
- beginTransformFeedbackQuery(): this;
14
- begin(target: any): this;
15
- end(): this;
16
- isResultAvailable(): any;
17
- isTimerDisjoint(): any;
18
- getResult(): any;
19
- getTimerMilliseconds(): number;
20
- createPoll(limit?: number): any;
21
- }
@@ -1,34 +0,0 @@
1
- import Resource, {ResourceProps} from './resource';
2
-
3
- export type RenderbufferProps = ResourceProps & {
4
- format: number;
5
- width?: number;
6
- height?: number;
7
- samples?: number;
8
- };
9
-
10
- /**
11
- * Renderbuffers are GPU objects that contain images.
12
- * In contrast to Textures they are optimized for use as render targets, with Framebuffers.
13
- * while Textures may not be, and are the logical choice when
14
- * you do not need to sample (i.e. in a post-pass shader)
15
- * from the produced image. If you need to resample
16
- * (such as when reading depth back in a second shader pass),
17
- * use Textures instead.
18
- * Renderbuffer objects also natively accommodate Multisampling (MSAA).
19
- */
20
- export default class Renderbuffer extends Resource {
21
- static isSupported(gl: WebGLRenderingContext, options?: {format?: number}): boolean;
22
- static getSamplesForFormat(gl: WebGLRenderingContext, options: {format: number}): number;
23
-
24
- readonly width: number;
25
- readonly height: number;
26
- readonly format: number;
27
-
28
- constructor(gl: WebGLRenderingContext, props: RenderbufferProps);
29
-
30
- /** Creates and initializes a renderbuffer object's data store */
31
- initialize(props: Renderbuffer): this;
32
-
33
- resize(size: {width: number, height: number}): this;
34
- }
@@ -1,105 +0,0 @@
1
- /* eslint-disable no-inline-comments */
2
- import GL from '@luma.gl/constants';
3
- import Resource from './resource';
4
- import RENDERBUFFER_FORMATS from './renderbuffer-formats';
5
- import {isWebGL2} from '@luma.gl/gltools';
6
- import {assert} from '../utils/assert';
7
-
8
- function isFormatSupported(gl, format, formats) {
9
- const info = formats[format];
10
- if (!info) {
11
- return false;
12
- }
13
- const value = isWebGL2(gl) ? info.gl2 || info.gl1 : info.gl1;
14
- if (typeof value === 'string') {
15
- return gl.getExtension(value);
16
- }
17
- return value;
18
- }
19
-
20
- export default class Renderbuffer extends Resource {
21
- static isSupported(gl, {format} = {format: null}) {
22
- return !format || isFormatSupported(gl, format, RENDERBUFFER_FORMATS);
23
- }
24
-
25
- static getSamplesForFormat(gl, {format}) {
26
- // Polyfilled to return [0] under WebGL1
27
- return gl.getInternalformatParameter(GL.RENDERBUFFER, format, GL.SAMPLES);
28
- }
29
-
30
- constructor(gl, opts = {}) {
31
- super(gl, opts);
32
-
33
- // @ts-ignore
34
- this.initialize(opts);
35
-
36
- Object.seal(this);
37
- }
38
-
39
- // Creates and initializes a renderbuffer object's data store
40
- initialize({format, width = 1, height = 1, samples = 0}) {
41
- assert(format, 'Needs format');
42
-
43
- this._trackDeallocatedMemory();
44
-
45
- this.gl.bindRenderbuffer(GL.RENDERBUFFER, this.handle);
46
-
47
- if (samples !== 0 && isWebGL2(this.gl)) {
48
- // @ts-ignore
49
- this.gl.renderbufferStorageMultisample(GL.RENDERBUFFER, samples, format, width, height);
50
- } else {
51
- this.gl.renderbufferStorage(GL.RENDERBUFFER, format, width, height);
52
- }
53
-
54
- // this.gl.bindRenderbuffer(GL.RENDERBUFFER, null);
55
-
56
- this.format = format;
57
- this.width = width;
58
- this.height = height;
59
- this.samples = samples;
60
-
61
- this._trackAllocatedMemory(
62
- this.width * this.height * (this.samples || 1) * RENDERBUFFER_FORMATS[this.format].bpp
63
- );
64
-
65
- return this;
66
- }
67
-
68
- resize({width, height}) {
69
- // Don't resize if width/height haven't changed
70
- if (width !== this.width || height !== this.height) {
71
- return this.initialize({width, height, format: this.format, samples: this.samples});
72
- }
73
- return this;
74
- }
75
-
76
- // PRIVATE METHODS
77
- _createHandle() {
78
- return this.gl.createRenderbuffer();
79
- }
80
-
81
- _deleteHandle() {
82
- this.gl.deleteRenderbuffer(this.handle);
83
- this._trackDeallocatedMemory();
84
- }
85
-
86
- _bindHandle(handle) {
87
- this.gl.bindRenderbuffer(GL.RENDERBUFFER, handle);
88
- }
89
-
90
- _syncHandle(handle) {
91
- this.format = this.getParameter(GL.RENDERBUFFER_INTERNAL_FORMAT);
92
- this.width = this.getParameter(GL.RENDERBUFFER_WIDTH);
93
- this.height = this.getParameter(GL.RENDERBUFFER_HEIGHT);
94
- this.samples = this.getParameter(GL.RENDERBUFFER_SAMPLES);
95
- }
96
-
97
- // @param {Boolean} opt.autobind=true - method call will bind/unbind object
98
- // @returns {GLenum|GLint} - depends on pname
99
- _getParameter(pname) {
100
- this.gl.bindRenderbuffer(GL.RENDERBUFFER, this.handle);
101
- const value = this.gl.getRenderbufferParameter(GL.RENDERBUFFER, pname);
102
- // this.gl.bindRenderbuffer(GL.RENDERBUFFER, null);
103
- return value;
104
- }
105
- }
@@ -1,47 +0,0 @@
1
- export type ResourceProps = {
2
- id?: string;
3
- handle?: any
4
- }
5
-
6
- /**
7
- * Base class for WebGL object wrappers
8
- */
9
- export default class Resource {
10
- readonly id: string;
11
- readonly gl: WebGLRenderingContext;
12
- readonly gl2: WebGL2RenderingContext;
13
- readonly _handle: any;
14
-
15
- readonly handle: any;
16
-
17
- constructor(gl: WebGLRenderingContext, props?: ResourceProps);
18
- toString(): string;
19
- delete({ deleteChildren }?: { deleteChildren?: boolean }): this;
20
- bind(funcOrHandle?: any): any;
21
- unbind(): void;
22
-
23
- /**
24
- * Query a Resource parameter
25
- *
26
- * @param {GLenum} pname
27
- * @return {GLint|GLfloat|GLenum} param
28
- */
29
- getParameter(pname: any, opts?: {}): any;
30
- getParameters(opts?: {}): {};
31
- /**
32
- * Update a Resource setting
33
- *
34
- * @todo - cache parameter to avoid issuing WebGL calls?
35
- *
36
- * @param {GLenum} pname - parameter (GL constant, value or key)
37
- * @param {GLint|GLfloat|GLenum} value
38
- * @return {Resource} returns self to enable chaining
39
- */
40
- setParameter(pname: any, value: any): this;
41
- setParameters(parameters: any): this;
42
- stubRemovedMethods(className: any, version: any, methodNames: any): void;
43
- initialize(opts: any): void;
44
-
45
- _trackAllocatedMemory(bytes: number, name?: string): void;
46
- _trackDeallocatedMemory(name?: string): void;
47
- }
@@ -1,29 +0,0 @@
1
- import Resource, {ResourceProps} from './resource';
2
-
3
- export type ShaderProps = ResourceProps & {
4
- source: string;
5
- shaderType?: string;
6
- };
7
-
8
- /**
9
- * Encapsulates the compiled or linked Shaders that execute portions of the WebGL Pipeline
10
- */
11
- export class Shader extends Resource {
12
- static getTypeName(shaderType: any): 'vertex-shader' | 'fragment-shader' | 'unknown';
13
-
14
- constructor(gl: WebGLRenderingContext, props: ShaderProps);
15
- initialize(options: ShaderProps): this;
16
- getParameter(pname: any): any;
17
- toString(): string;
18
- getName(): string;
19
- getSource(): string;
20
- getTranslatedSource(): string;
21
- }
22
-
23
- export class VertexShader extends Shader {
24
- constructor(gl: WebGLRenderingContext, props: any);
25
- }
26
-
27
- export class FragmentShader extends Shader {
28
- constructor(gl: WebGLRenderingContext, props: any);
29
- }
@@ -1,147 +0,0 @@
1
- import GL from '@luma.gl/constants';
2
- import {assertWebGLContext, log} from '@luma.gl/gltools';
3
- import {parseGLSLCompilerError, getShaderName} from '../glsl-utils';
4
- import {assert} from '../utils/assert';
5
- import {uid} from '../utils/utils';
6
- import Resource from './resource';
7
-
8
- const ERR_SOURCE = 'Shader: GLSL source code must be a JavaScript string';
9
-
10
- // For now this is an internal class
11
- export class Shader extends Resource {
12
- static getTypeName(shaderType) {
13
- switch (shaderType) {
14
- case GL.VERTEX_SHADER:
15
- return 'vertex-shader';
16
- case GL.FRAGMENT_SHADER:
17
- return 'fragment-shader';
18
- default:
19
- assert(false);
20
- return 'unknown';
21
- }
22
- }
23
-
24
- /* eslint-disable max-statements */
25
- constructor(gl, props) {
26
- assertWebGLContext(gl);
27
-
28
- // Validate arguments
29
- assert(typeof props.source === 'string', ERR_SOURCE);
30
-
31
- // Deduce an id, from shader source, or supplied id, or shader type
32
- const id =
33
- getShaderName(props.source, null) ||
34
- props.id ||
35
- uid(`unnamed ${Shader.getTypeName(props.shaderType)}`);
36
-
37
- super(gl, {id});
38
-
39
- this.shaderType = props.shaderType;
40
- this.source = props.source;
41
-
42
- this.initialize(props);
43
- }
44
-
45
- initialize({source}) {
46
- const shaderName = getShaderName(source, null);
47
- if (shaderName) {
48
- this.id = uid(shaderName);
49
- }
50
- this._compile(source);
51
- }
52
-
53
- // Accessors
54
-
55
- getParameter(pname) {
56
- return this.gl.getShaderParameter(this.handle, pname);
57
- }
58
-
59
- toString() {
60
- return `${Shader.getTypeName(this.shaderType)}:${this.id}`;
61
- }
62
-
63
- getName() {
64
- return getShaderName(this.source) || 'unnamed-shader';
65
- }
66
-
67
- getSource() {
68
- return this.gl.getShaderSource(this.handle);
69
- }
70
-
71
- // Debug method - Returns translated source if available
72
- getTranslatedSource() {
73
- const extension = this.gl.getExtension('WEBGL_debug_shaders');
74
- return extension
75
- ? extension.getTranslatedShaderSource(this.handle)
76
- : 'No translated source available. WEBGL_debug_shaders not implemented';
77
- }
78
-
79
- // PRIVATE METHODS
80
- _compile(source = this.source) {
81
- if (!source.startsWith('#version ')) {
82
- source = `#version 100\n${source}`;
83
- }
84
- this.source = source;
85
- this.gl.shaderSource(this.handle, this.source);
86
- this.gl.compileShader(this.handle);
87
-
88
- // TODO - For performance reasons, avoid checking shader compilation errors on production?
89
- // TODO - Load log even when no error reported, to catch warnings?
90
- // https://gamedev.stackexchange.com/questions/30429/how-to-detect-glsl-warnings
91
- const compileStatus = this.getParameter(GL.COMPILE_STATUS);
92
- if (!compileStatus) {
93
- const infoLog = this.gl.getShaderInfoLog(this.handle);
94
- const {shaderName, errors, warnings} = parseGLSLCompilerError(
95
- infoLog,
96
- this.source,
97
- this.shaderType,
98
- this.id
99
- );
100
- log.error(`GLSL compilation errors in ${shaderName}\n${errors}`)();
101
- log.warn(`GLSL compilation warnings in ${shaderName}\n${warnings}`)();
102
- throw new Error(`GLSL compilation errors in ${shaderName}`);
103
- }
104
- }
105
-
106
- _deleteHandle() {
107
- this.gl.deleteShader(this.handle);
108
- }
109
-
110
- _getOptsFromHandle() {
111
- return {
112
- type: this.getParameter(GL.SHADER_TYPE),
113
- source: this.getSource()
114
- };
115
- }
116
- }
117
-
118
- export class VertexShader extends Shader {
119
- constructor(gl, props) {
120
- // Signature: new VertexShader(gl, source)
121
- if (typeof props === 'string') {
122
- props = {source: props};
123
- }
124
- super(gl, Object.assign({}, props, {shaderType: GL.VERTEX_SHADER}));
125
- }
126
-
127
- // PRIVATE METHODS
128
- _createHandle() {
129
- return this.gl.createShader(GL.VERTEX_SHADER);
130
- }
131
- }
132
-
133
- export class FragmentShader extends Shader {
134
- constructor(gl, props) {
135
- // Signature: new FragmentShader(gl, source)
136
- if (typeof props === 'string') {
137
- props = {source: props};
138
- }
139
-
140
- super(gl, Object.assign({}, props, {shaderType: GL.FRAGMENT_SHADER}));
141
- }
142
-
143
- // PRIVATE METHODS
144
- _createHandle() {
145
- return this.gl.createShader(GL.FRAGMENT_SHADER);
146
- }
147
- }
@@ -1,11 +0,0 @@
1
- import Texture, {TextureProps} from './texture';
2
-
3
- export type Texture2DProps = TextureProps & {
4
- };
5
-
6
- export default class Texture2D extends Texture {
7
- static isSupported(gl: WebGLRenderingContext, opts?: object): boolean;
8
-
9
- constructor(gl: WebGLRenderingContext, props?: Texture2DProps);
10
- constructor(gl: WebGLRenderingContext, props: Promise<Texture2DProps>);
11
- }
@@ -1,30 +0,0 @@
1
- import GL from '@luma.gl/constants';
2
- import {assertWebGLContext} from '@luma.gl/gltools';
3
- import Texture from './texture';
4
- import {loadImage} from '../utils/load-file';
5
-
6
- export default class Texture2D extends Texture {
7
- static isSupported(gl, opts) {
8
- return Texture.isSupported(gl, opts);
9
- }
10
-
11
- constructor(gl, props = {}) {
12
- assertWebGLContext(gl);
13
-
14
- // Signature: new Texture2D(gl, url | Promise)
15
- if (props instanceof Promise || typeof props === 'string') {
16
- props = {data: props};
17
- }
18
-
19
- // Signature: new Texture2D(gl, {data: url})
20
- if (typeof props.data === 'string') {
21
- props = Object.assign({}, props, {data: loadImage(props.data)});
22
- }
23
-
24
- super(gl, Object.assign({}, props, {target: GL.TEXTURE_2D}));
25
-
26
- this.initialize(props);
27
-
28
- Object.seal(this);
29
- }
30
- }
@@ -1,29 +0,0 @@
1
- import Texture, {TextureProps} from './texture';
2
-
3
- export type Texture3DProps = TextureProps & {
4
- };
5
-
6
- /**
7
- * Textures that have 3 dimensions: width, height, and depth.
8
- * They are accessed by 3-dimensional texture coordinates.
9
- */
10
- export default class Texture3D extends Texture {
11
- static isSupported(gl: WebGLRenderingContext): boolean;
12
-
13
- constructor(gl: WebGL2RenderingContext, props: Texture3DProps);
14
-
15
- /** Image 3D copies from Typed Array or WebGLBuffer */
16
- setImageData(options: {
17
- level?: number;
18
- dataFormat?: any;
19
- width: any;
20
- height: any;
21
- depth?: number;
22
- border?: number;
23
- format: any;
24
- type?: any;
25
- offset?: number;
26
- data: any;
27
- parameters?: {};
28
- }): this;
29
- }
@@ -1,23 +0,0 @@
1
- import Texture, {TextureProps} from './texture';
2
-
3
- export type TextureCubeProps = TextureProps & {
4
- };
5
-
6
- export default class TextureCube extends Texture {
7
- static readonly FACES: number[];
8
-
9
- constructor(gl: WebGLRenderingContext, props?: TextureCubeProps);
10
-
11
- initialize(props?: TextureCubeProps): void;
12
- subImage(options: {face: any; data: any; x?: number; y?: number; mipmapLevel?: number}): any;
13
- setCubeMapImageData(options: {
14
- width: any;
15
- height: any;
16
- pixels: any;
17
- data: any;
18
- border?: number;
19
- format?: any;
20
- type?: any;
21
- }): Promise<void>;
22
- setImageDataForFace(options: any): this;
23
- }