@luma.gl/webgl 9.0.0-alpha.9 → 9.0.0-beta.1

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 (525) hide show
  1. package/LICENSE +3 -1
  2. package/dist/adapter/converters/device-parameters.d.ts +12 -3
  3. package/dist/adapter/converters/device-parameters.d.ts.map +1 -1
  4. package/dist/adapter/converters/device-parameters.js +89 -74
  5. package/dist/adapter/converters/device-parameters.js.map +1 -1
  6. package/dist/adapter/converters/sampler-parameters.d.ts +4 -10
  7. package/dist/adapter/converters/sampler-parameters.d.ts.map +1 -1
  8. package/dist/adapter/converters/sampler-parameters.js +29 -180
  9. package/dist/adapter/converters/sampler-parameters.js.map +1 -1
  10. package/dist/adapter/converters/shader-formats.d.ts +9 -0
  11. package/dist/adapter/converters/shader-formats.d.ts.map +1 -0
  12. package/dist/adapter/converters/shader-formats.js +52 -0
  13. package/dist/adapter/converters/shader-formats.js.map +1 -0
  14. package/dist/adapter/converters/texture-formats.d.ts +32 -44
  15. package/dist/adapter/converters/texture-formats.d.ts.map +1 -1
  16. package/dist/adapter/converters/texture-formats.js +306 -343
  17. package/dist/adapter/converters/texture-formats.js.map +1 -1
  18. package/dist/adapter/converters/vertex-formats.d.ts +9 -3
  19. package/dist/adapter/converters/vertex-formats.d.ts.map +1 -1
  20. package/dist/adapter/converters/vertex-formats.js +53 -22
  21. package/dist/adapter/converters/vertex-formats.js.map +1 -1
  22. package/dist/adapter/device-helpers/device-features.d.ts +1 -1
  23. package/dist/adapter/device-helpers/device-features.d.ts.map +1 -1
  24. package/dist/adapter/device-helpers/device-features.js +9 -25
  25. package/dist/adapter/device-helpers/device-features.js.map +1 -1
  26. package/dist/adapter/device-helpers/device-limits.d.ts +3 -3
  27. package/dist/adapter/device-helpers/device-limits.d.ts.map +1 -1
  28. package/dist/adapter/device-helpers/device-limits.js +54 -58
  29. package/dist/adapter/device-helpers/device-limits.js.map +1 -1
  30. package/dist/adapter/device-helpers/get-device-info.d.ts +1 -1
  31. package/dist/adapter/device-helpers/get-device-info.d.ts.map +1 -1
  32. package/dist/adapter/device-helpers/get-device-info.js +49 -22
  33. package/dist/adapter/device-helpers/get-device-info.js.map +1 -1
  34. package/dist/adapter/device-helpers/is-old-ie.d.ts.map +1 -1
  35. package/dist/adapter/device-helpers/is-old-ie.js +2 -1
  36. package/dist/adapter/device-helpers/is-old-ie.js.map +1 -1
  37. package/dist/adapter/helpers/decode-webgl-types.d.ts +26 -0
  38. package/dist/adapter/helpers/decode-webgl-types.d.ts.map +1 -0
  39. package/dist/adapter/helpers/decode-webgl-types.js +89 -0
  40. package/dist/adapter/helpers/decode-webgl-types.js.map +1 -0
  41. package/dist/adapter/helpers/get-shader-layout.d.ts +1 -48
  42. package/dist/adapter/helpers/get-shader-layout.d.ts.map +1 -1
  43. package/dist/adapter/helpers/get-shader-layout.js +58 -138
  44. package/dist/adapter/helpers/get-shader-layout.js.map +1 -1
  45. package/dist/adapter/helpers/parse-shader-compiler-log.d.ts +1 -1
  46. package/dist/adapter/helpers/parse-shader-compiler-log.d.ts.map +1 -1
  47. package/dist/adapter/helpers/parse-shader-compiler-log.js +16 -11
  48. package/dist/adapter/helpers/parse-shader-compiler-log.js.map +1 -1
  49. package/dist/adapter/helpers/set-uniform.d.ts +3 -2
  50. package/dist/adapter/helpers/set-uniform.d.ts.map +1 -1
  51. package/dist/adapter/helpers/set-uniform.js +51 -82
  52. package/dist/adapter/helpers/set-uniform.js.map +1 -1
  53. package/dist/adapter/helpers/webgl-topology-utils.d.ts +16 -0
  54. package/dist/adapter/helpers/webgl-topology-utils.d.ts.map +1 -0
  55. package/dist/adapter/helpers/webgl-topology-utils.js +103 -0
  56. package/dist/adapter/helpers/webgl-topology-utils.js.map +1 -0
  57. package/dist/adapter/objects/constants-to-keys.d.ts +1 -3
  58. package/dist/adapter/objects/constants-to-keys.d.ts.map +1 -1
  59. package/dist/adapter/objects/constants-to-keys.js +2 -29
  60. package/dist/adapter/objects/constants-to-keys.js.map +1 -1
  61. package/dist/adapter/objects/webgl-renderbuffer.d.ts +15 -12
  62. package/dist/adapter/objects/webgl-renderbuffer.d.ts.map +1 -1
  63. package/dist/adapter/objects/webgl-renderbuffer.js +36 -44
  64. package/dist/adapter/objects/webgl-renderbuffer.js.map +1 -1
  65. package/dist/adapter/objects/webgl-resource.d.ts +6 -9
  66. package/dist/adapter/objects/webgl-resource.d.ts.map +1 -1
  67. package/dist/adapter/objects/webgl-resource.js +26 -83
  68. package/dist/adapter/objects/webgl-resource.js.map +1 -1
  69. package/dist/adapter/resources/webgl-buffer.d.ts +19 -14
  70. package/dist/adapter/resources/webgl-buffer.d.ts.map +1 -1
  71. package/dist/adapter/resources/webgl-buffer.js +67 -101
  72. package/dist/adapter/resources/webgl-buffer.js.map +1 -1
  73. package/dist/adapter/resources/webgl-command-buffer.d.ts +15 -9
  74. package/dist/adapter/resources/webgl-command-buffer.d.ts.map +1 -1
  75. package/dist/adapter/resources/webgl-command-buffer.js +175 -48
  76. package/dist/adapter/resources/webgl-command-buffer.js.map +1 -1
  77. package/dist/adapter/resources/webgl-command-encoder.d.ts +7 -6
  78. package/dist/adapter/resources/webgl-command-encoder.d.ts.map +1 -1
  79. package/dist/adapter/resources/webgl-command-encoder.js +10 -20
  80. package/dist/adapter/resources/webgl-command-encoder.js.map +1 -1
  81. package/dist/adapter/resources/webgl-external-texture.js.map +1 -1
  82. package/dist/adapter/resources/webgl-framebuffer.d.ts +21 -25
  83. package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -1
  84. package/dist/adapter/resources/webgl-framebuffer.js +63 -175
  85. package/dist/adapter/resources/webgl-framebuffer.js.map +1 -1
  86. package/dist/adapter/resources/webgl-render-pass.d.ts +19 -4
  87. package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -1
  88. package/dist/adapter/resources/webgl-render-pass.js +98 -12
  89. package/dist/adapter/resources/webgl-render-pass.js.map +1 -1
  90. package/dist/adapter/resources/webgl-render-pipeline.d.ts +34 -20
  91. package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -1
  92. package/dist/adapter/resources/webgl-render-pipeline.js +110 -293
  93. package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -1
  94. package/dist/adapter/resources/webgl-sampler.d.ts +5 -4
  95. package/dist/adapter/resources/webgl-sampler.d.ts.map +1 -1
  96. package/dist/adapter/resources/webgl-sampler.js +11 -21
  97. package/dist/adapter/resources/webgl-sampler.js.map +1 -1
  98. package/dist/adapter/resources/webgl-shader.d.ts +5 -5
  99. package/dist/adapter/resources/webgl-shader.d.ts.map +1 -1
  100. package/dist/adapter/resources/webgl-shader.js +18 -44
  101. package/dist/adapter/resources/webgl-shader.js.map +1 -1
  102. package/dist/adapter/resources/webgl-texture.d.ts +51 -31
  103. package/dist/adapter/resources/webgl-texture.d.ts.map +1 -1
  104. package/dist/adapter/resources/webgl-texture.js +123 -244
  105. package/dist/adapter/resources/webgl-texture.js.map +1 -1
  106. package/dist/adapter/resources/webgl-transform-feedback.d.ts +47 -0
  107. package/dist/adapter/resources/webgl-transform-feedback.d.ts.map +1 -0
  108. package/dist/adapter/resources/webgl-transform-feedback.js +164 -0
  109. package/dist/adapter/resources/webgl-transform-feedback.js.map +1 -0
  110. package/dist/adapter/resources/webgl-vertex-array.d.ts +67 -0
  111. package/dist/adapter/resources/webgl-vertex-array.d.ts.map +1 -0
  112. package/dist/adapter/resources/webgl-vertex-array.js +167 -0
  113. package/dist/adapter/resources/webgl-vertex-array.js.map +1 -0
  114. package/dist/adapter/webgl-canvas-context.d.ts +6 -7
  115. package/dist/adapter/webgl-canvas-context.d.ts.map +1 -1
  116. package/dist/adapter/webgl-canvas-context.js +12 -23
  117. package/dist/adapter/webgl-canvas-context.js.map +1 -1
  118. package/dist/adapter/webgl-device.d.ts +92 -41
  119. package/dist/adapter/webgl-device.d.ts.map +1 -1
  120. package/dist/adapter/webgl-device.js +205 -158
  121. package/dist/adapter/webgl-device.js.map +1 -1
  122. package/dist/classic/accessor.d.ts +3 -3
  123. package/dist/classic/accessor.d.ts.map +1 -1
  124. package/dist/classic/accessor.js +26 -52
  125. package/dist/classic/accessor.js.map +1 -1
  126. package/dist/classic/clear.d.ts +22 -0
  127. package/dist/classic/clear.d.ts.map +1 -0
  128. package/dist/classic/clear.js +88 -0
  129. package/dist/classic/clear.js.map +1 -0
  130. package/dist/classic/copy-and-blit.d.ts +62 -0
  131. package/dist/classic/copy-and-blit.d.ts.map +1 -0
  132. package/dist/classic/copy-and-blit.js +192 -0
  133. package/dist/classic/copy-and-blit.js.map +1 -0
  134. package/dist/classic/format-utils.d.ts +3 -0
  135. package/dist/classic/format-utils.d.ts.map +1 -0
  136. package/dist/classic/format-utils.js +37 -0
  137. package/dist/classic/format-utils.js.map +1 -0
  138. package/dist/classic/typed-array-utils.d.ts +17 -17
  139. package/dist/classic/typed-array-utils.d.ts.map +1 -1
  140. package/dist/classic/typed-array-utils.js +18 -39
  141. package/dist/classic/typed-array-utils.js.map +1 -1
  142. package/dist/context/context/create-browser-context.d.ts +17 -18
  143. package/dist/context/context/create-browser-context.d.ts.map +1 -1
  144. package/dist/context/context/create-browser-context.js +11 -19
  145. package/dist/context/context/create-browser-context.js.map +1 -1
  146. package/dist/context/context/create-headless-context.d.ts +1 -1
  147. package/dist/context/context/create-headless-context.d.ts.map +1 -1
  148. package/dist/context/context/create-headless-context.js +6 -7
  149. package/dist/context/context/create-headless-context.js.map +1 -1
  150. package/dist/context/context/webgl-checks.d.ts.map +1 -1
  151. package/dist/context/context/webgl-checks.js +1 -4
  152. package/dist/context/context/webgl-checks.js.map +1 -1
  153. package/dist/context/debug/spector.d.ts +1 -2
  154. package/dist/context/debug/spector.d.ts.map +1 -1
  155. package/dist/context/debug/spector.js +7 -19
  156. package/dist/context/debug/spector.js.map +1 -1
  157. package/dist/context/debug/webgl-developer-tools.d.ts +1 -1
  158. package/dist/context/debug/webgl-developer-tools.d.ts.map +1 -1
  159. package/dist/context/debug/webgl-developer-tools.js +18 -41
  160. package/dist/context/debug/webgl-developer-tools.js.map +1 -1
  161. package/dist/context/parameters/unified-parameter-api.d.ts +5 -5
  162. package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -1
  163. package/dist/context/parameters/unified-parameter-api.js +9 -17
  164. package/dist/context/parameters/unified-parameter-api.js.map +1 -1
  165. package/dist/context/parameters/webgl-parameter-tables.d.ts +105 -106
  166. package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -1
  167. package/dist/context/parameters/webgl-parameter-tables.js +267 -286
  168. package/dist/context/parameters/webgl-parameter-tables.js.map +1 -1
  169. package/dist/context/polyfill/context-data.d.ts +13 -0
  170. package/dist/context/polyfill/context-data.d.ts.map +1 -0
  171. package/dist/context/polyfill/context-data.js +12 -0
  172. package/dist/context/polyfill/context-data.js.map +1 -0
  173. package/dist/context/polyfill/get-parameter-polyfill.d.ts +1 -1
  174. package/dist/context/polyfill/get-parameter-polyfill.d.ts.map +1 -1
  175. package/dist/context/polyfill/get-parameter-polyfill.js +37 -43
  176. package/dist/context/polyfill/get-parameter-polyfill.js.map +1 -1
  177. package/dist/context/polyfill/polyfill-context.d.ts.map +1 -1
  178. package/dist/context/polyfill/polyfill-context.js +27 -31
  179. package/dist/context/polyfill/polyfill-context.js.map +1 -1
  180. package/dist/context/polyfill/polyfill-table.d.ts +7 -7
  181. package/dist/context/polyfill/polyfill-table.d.ts.map +1 -1
  182. package/dist/context/polyfill/polyfill-table.js +17 -40
  183. package/dist/context/polyfill/polyfill-table.js.map +1 -1
  184. package/dist/context/polyfill/polyfill-vertex-array-object.d.ts.map +1 -1
  185. package/dist/context/polyfill/polyfill-vertex-array-object.js +17 -87
  186. package/dist/context/polyfill/polyfill-vertex-array-object.js.map +1 -1
  187. package/dist/context/state-tracker/deep-array-equal.d.ts.map +1 -1
  188. package/dist/context/state-tracker/deep-array-equal.js +0 -4
  189. package/dist/context/state-tracker/deep-array-equal.js.map +1 -1
  190. package/dist/context/state-tracker/track-context-state.d.ts.map +1 -1
  191. package/dist/context/state-tracker/track-context-state.js +25 -61
  192. package/dist/context/state-tracker/track-context-state.js.map +1 -1
  193. package/dist/context/state-tracker/with-parameters.d.ts +2 -1
  194. package/dist/context/state-tracker/with-parameters.d.ts.map +1 -1
  195. package/dist/context/state-tracker/with-parameters.js +8 -10
  196. package/dist/context/state-tracker/with-parameters.js.map +1 -1
  197. package/dist/dist.dev.js +9344 -0
  198. package/dist/index.cjs +6556 -0
  199. package/dist/index.d.ts +23 -24
  200. package/dist/index.d.ts.map +1 -1
  201. package/dist/index.js +27 -27
  202. package/dist/index.js.map +1 -1
  203. package/dist/types.d.ts +3 -1
  204. package/dist/types.d.ts.map +1 -1
  205. package/dist/types.js.map +1 -1
  206. package/dist.min.js +52 -0
  207. package/package.json +21 -9
  208. package/src/adapter/converters/device-parameters.ts +120 -43
  209. package/src/adapter/converters/sampler-parameters.ts +54 -126
  210. package/src/adapter/converters/shader-formats.ts +44 -0
  211. package/src/adapter/converters/texture-formats.ts +265 -192
  212. package/src/adapter/converters/vertex-formats.ts +71 -10
  213. package/src/adapter/device-helpers/device-features.ts +5 -2
  214. package/src/adapter/device-helpers/device-limits.ts +4 -2
  215. package/src/adapter/device-helpers/get-device-info.ts +72 -18
  216. package/src/adapter/device-helpers/is-old-ie.ts +3 -0
  217. package/src/adapter/helpers/{uniforms.ts → decode-webgl-types.ts} +31 -24
  218. package/src/adapter/helpers/get-shader-layout.ts +87 -131
  219. package/src/adapter/helpers/parse-shader-compiler-log.ts +24 -8
  220. package/src/adapter/helpers/set-uniform.ts +39 -35
  221. package/src/adapter/helpers/webgl-topology-utils.ts +103 -0
  222. package/src/adapter/objects/constants-to-keys.ts +6 -25
  223. package/src/adapter/objects/webgl-renderbuffer.ts +43 -37
  224. package/src/adapter/objects/webgl-resource.ts +16 -23
  225. package/src/adapter/resources/webgl-buffer.ts +101 -106
  226. package/src/adapter/resources/webgl-command-buffer.ts +327 -25
  227. package/src/adapter/resources/webgl-command-encoder.ts +20 -12
  228. package/src/adapter/resources/webgl-external-texture.ts +5 -2
  229. package/src/adapter/resources/webgl-framebuffer.ts +86 -133
  230. package/src/adapter/resources/webgl-render-pass.ts +165 -4
  231. package/src/adapter/resources/webgl-render-pipeline.ts +209 -205
  232. package/src/adapter/resources/webgl-sampler.ts +12 -8
  233. package/src/adapter/resources/webgl-shader.ts +32 -27
  234. package/src/adapter/resources/webgl-texture.ts +117 -91
  235. package/src/adapter/resources/webgl-transform-feedback.ts +202 -0
  236. package/src/adapter/resources/webgl-vertex-array.ts +283 -0
  237. package/src/adapter/webgl-canvas-context.ts +18 -13
  238. package/src/adapter/webgl-device.ts +327 -92
  239. package/src/classic/accessor.ts +8 -5
  240. package/src/classic/clear.ts +113 -0
  241. package/src/classic/copy-and-blit.ts +312 -0
  242. package/src/classic/format-utils.ts +46 -0
  243. package/src/classic/typed-array-utils.ts +19 -27
  244. package/src/context/context/create-browser-context.ts +53 -31
  245. package/src/context/context/create-headless-context.ts +5 -2
  246. package/src/context/context/webgl-checks.ts +3 -1
  247. package/src/context/debug/spector.ts +8 -5
  248. package/src/context/debug/webgl-developer-tools.ts +26 -17
  249. package/src/context/parameters/unified-parameter-api.ts +15 -9
  250. package/src/context/parameters/webgl-parameter-tables.ts +120 -98
  251. package/src/context/polyfill/context-data.ts +30 -0
  252. package/src/context/polyfill/get-parameter-polyfill.ts +11 -7
  253. package/src/context/polyfill/polyfill-context.ts +15 -8
  254. package/src/context/polyfill/polyfill-table.ts +20 -15
  255. package/src/context/polyfill/polyfill-vertex-array-object.ts +5 -0
  256. package/src/context/state-tracker/deep-array-equal.ts +2 -0
  257. package/src/context/state-tracker/track-context-state.ts +13 -10
  258. package/src/context/state-tracker/with-parameters.ts +13 -4
  259. package/src/index.ts +65 -39
  260. package/src/types.ts +5 -0
  261. package/dist/adapter/converters/renderbuffer-formats.d.ts +0 -16
  262. package/dist/adapter/converters/renderbuffer-formats.d.ts.map +0 -1
  263. package/dist/adapter/converters/renderbuffer-formats.js +0 -185
  264. package/dist/adapter/converters/renderbuffer-formats.js.map +0 -1
  265. package/dist/adapter/helpers/attribute-utils.d.ts +0 -11
  266. package/dist/adapter/helpers/attribute-utils.d.ts.map +0 -1
  267. package/dist/adapter/helpers/attribute-utils.js +0 -81
  268. package/dist/adapter/helpers/attribute-utils.js.map +0 -1
  269. package/dist/adapter/helpers/uniforms.d.ts +0 -26
  270. package/dist/adapter/helpers/uniforms.d.ts.map +0 -1
  271. package/dist/adapter/helpers/uniforms.js +0 -99
  272. package/dist/adapter/helpers/uniforms.js.map +0 -1
  273. package/dist/adapter/objects/webgl-vertex-array-object.d.ts +0 -27
  274. package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +0 -1
  275. package/dist/adapter/objects/webgl-vertex-array-object.js +0 -84
  276. package/dist/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  277. package/dist/bundle.d.ts +0 -2
  278. package/dist/bundle.d.ts.map +0 -1
  279. package/dist/bundle.js +0 -5
  280. package/dist/bundle.js.map +0 -1
  281. package/dist/classic/buffer.d.ts +0 -95
  282. package/dist/classic/buffer.d.ts.map +0 -1
  283. package/dist/classic/buffer.js +0 -392
  284. package/dist/classic/buffer.js.map +0 -1
  285. package/dist/context/context/context-state.d.ts +0 -18
  286. package/dist/context/context/context-state.d.ts.map +0 -1
  287. package/dist/context/context/context-state.js +0 -26
  288. package/dist/context/context/context-state.js.map +0 -1
  289. package/dist/context/context/device-pixels.d.ts +0 -25
  290. package/dist/context/context/device-pixels.d.ts.map +0 -1
  291. package/dist/context/context/device-pixels.js +0 -103
  292. package/dist/context/context/device-pixels.js.map +0 -1
  293. package/dist/es5/adapter/converters/device-parameters.js +0 -185
  294. package/dist/es5/adapter/converters/device-parameters.js.map +0 -1
  295. package/dist/es5/adapter/converters/renderbuffer-formats.js +0 -163
  296. package/dist/es5/adapter/converters/renderbuffer-formats.js.map +0 -1
  297. package/dist/es5/adapter/converters/sampler-parameters.js +0 -245
  298. package/dist/es5/adapter/converters/sampler-parameters.js.map +0 -1
  299. package/dist/es5/adapter/converters/texture-formats.js +0 -1031
  300. package/dist/es5/adapter/converters/texture-formats.js.map +0 -1
  301. package/dist/es5/adapter/converters/vertex-formats.js +0 -45
  302. package/dist/es5/adapter/converters/vertex-formats.js.map +0 -1
  303. package/dist/es5/adapter/device-helpers/device-features.js +0 -155
  304. package/dist/es5/adapter/device-helpers/device-features.js.map +0 -1
  305. package/dist/es5/adapter/device-helpers/device-limits.js +0 -64
  306. package/dist/es5/adapter/device-helpers/device-limits.js.map +0 -1
  307. package/dist/es5/adapter/device-helpers/get-device-info.js +0 -55
  308. package/dist/es5/adapter/device-helpers/get-device-info.js.map +0 -1
  309. package/dist/es5/adapter/device-helpers/is-old-ie.js +0 -16
  310. package/dist/es5/adapter/device-helpers/is-old-ie.js.map +0 -1
  311. package/dist/es5/adapter/helpers/attribute-utils.js +0 -91
  312. package/dist/es5/adapter/helpers/attribute-utils.js.map +0 -1
  313. package/dist/es5/adapter/helpers/get-shader-layout.js +0 -391
  314. package/dist/es5/adapter/helpers/get-shader-layout.js.map +0 -1
  315. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js +0 -72
  316. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js.map +0 -1
  317. package/dist/es5/adapter/helpers/set-uniform.js +0 -125
  318. package/dist/es5/adapter/helpers/set-uniform.js.map +0 -1
  319. package/dist/es5/adapter/helpers/uniforms.js +0 -112
  320. package/dist/es5/adapter/helpers/uniforms.js.map +0 -1
  321. package/dist/es5/adapter/objects/constants-to-keys.js +0 -54
  322. package/dist/es5/adapter/objects/constants-to-keys.js.map +0 -1
  323. package/dist/es5/adapter/objects/webgl-renderbuffer.js +0 -150
  324. package/dist/es5/adapter/objects/webgl-renderbuffer.js.map +0 -1
  325. package/dist/es5/adapter/objects/webgl-resource.js +0 -292
  326. package/dist/es5/adapter/objects/webgl-resource.js.map +0 -1
  327. package/dist/es5/adapter/objects/webgl-vertex-array-object.js +0 -137
  328. package/dist/es5/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  329. package/dist/es5/adapter/resources/webgl-buffer.js +0 -243
  330. package/dist/es5/adapter/resources/webgl-buffer.js.map +0 -1
  331. package/dist/es5/adapter/resources/webgl-command-buffer.js +0 -96
  332. package/dist/es5/adapter/resources/webgl-command-buffer.js.map +0 -1
  333. package/dist/es5/adapter/resources/webgl-command-encoder.js +0 -98
  334. package/dist/es5/adapter/resources/webgl-command-encoder.js.map +0 -1
  335. package/dist/es5/adapter/resources/webgl-external-texture.js +0 -2
  336. package/dist/es5/adapter/resources/webgl-external-texture.js.map +0 -1
  337. package/dist/es5/adapter/resources/webgl-framebuffer.js +0 -346
  338. package/dist/es5/adapter/resources/webgl-framebuffer.js.map +0 -1
  339. package/dist/es5/adapter/resources/webgl-render-pass.js +0 -62
  340. package/dist/es5/adapter/resources/webgl-render-pass.js.map +0 -1
  341. package/dist/es5/adapter/resources/webgl-render-pipeline.js +0 -530
  342. package/dist/es5/adapter/resources/webgl-render-pipeline.js.map +0 -1
  343. package/dist/es5/adapter/resources/webgl-sampler.js +0 -96
  344. package/dist/es5/adapter/resources/webgl-sampler.js.map +0 -1
  345. package/dist/es5/adapter/resources/webgl-shader.js +0 -150
  346. package/dist/es5/adapter/resources/webgl-shader.js.map +0 -1
  347. package/dist/es5/adapter/resources/webgl-texture.js +0 -986
  348. package/dist/es5/adapter/resources/webgl-texture.js.map +0 -1
  349. package/dist/es5/adapter/webgl-canvas-context.js +0 -97
  350. package/dist/es5/adapter/webgl-canvas-context.js.map +0 -1
  351. package/dist/es5/adapter/webgl-device.js +0 -463
  352. package/dist/es5/adapter/webgl-device.js.map +0 -1
  353. package/dist/es5/bundle.js +0 -7
  354. package/dist/es5/bundle.js.map +0 -1
  355. package/dist/es5/classic/accessor.js +0 -181
  356. package/dist/es5/classic/accessor.js.map +0 -1
  357. package/dist/es5/classic/buffer.js +0 -478
  358. package/dist/es5/classic/buffer.js.map +0 -1
  359. package/dist/es5/classic/typed-array-utils.js +0 -126
  360. package/dist/es5/classic/typed-array-utils.js.map +0 -1
  361. package/dist/es5/context/context/context-state.js +0 -31
  362. package/dist/es5/context/context/context-state.js.map +0 -1
  363. package/dist/es5/context/context/create-browser-context.js +0 -83
  364. package/dist/es5/context/context/create-browser-context.js.map +0 -1
  365. package/dist/es5/context/context/create-headless-context.js +0 -60
  366. package/dist/es5/context/context/create-headless-context.js.map +0 -1
  367. package/dist/es5/context/context/device-pixels.js +0 -121
  368. package/dist/es5/context/context/device-pixels.js.map +0 -1
  369. package/dist/es5/context/context/webgl-checks.js +0 -54
  370. package/dist/es5/context/context/webgl-checks.js.map +0 -1
  371. package/dist/es5/context/debug/spector.js +0 -133
  372. package/dist/es5/context/debug/spector.js.map +0 -1
  373. package/dist/es5/context/debug/webgl-developer-tools.js +0 -198
  374. package/dist/es5/context/debug/webgl-developer-tools.js.map +0 -1
  375. package/dist/es5/context/parameters/unified-parameter-api.js +0 -97
  376. package/dist/es5/context/parameters/unified-parameter-api.js.map +0 -1
  377. package/dist/es5/context/parameters/webgl-parameter-tables.js +0 -392
  378. package/dist/es5/context/parameters/webgl-parameter-tables.js.map +0 -1
  379. package/dist/es5/context/polyfill/get-parameter-polyfill.js +0 -81
  380. package/dist/es5/context/polyfill/get-parameter-polyfill.js.map +0 -1
  381. package/dist/es5/context/polyfill/polyfill-context.js +0 -134
  382. package/dist/es5/context/polyfill/polyfill-context.js.map +0 -1
  383. package/dist/es5/context/polyfill/polyfill-table.js +0 -166
  384. package/dist/es5/context/polyfill/polyfill-table.js.map +0 -1
  385. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js +0 -341
  386. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js.map +0 -1
  387. package/dist/es5/context/state-tracker/deep-array-equal.js +0 -28
  388. package/dist/es5/context/state-tracker/deep-array-equal.js.map +0 -1
  389. package/dist/es5/context/state-tracker/track-context-state.js +0 -211
  390. package/dist/es5/context/state-tracker/track-context-state.js.map +0 -1
  391. package/dist/es5/context/state-tracker/with-parameters.js +0 -44
  392. package/dist/es5/context/state-tracker/with-parameters.js.map +0 -1
  393. package/dist/es5/index.js +0 -290
  394. package/dist/es5/index.js.map +0 -1
  395. package/dist/es5/init.js +0 -10
  396. package/dist/es5/init.js.map +0 -1
  397. package/dist/es5/types/webgl.js +0 -6
  398. package/dist/es5/types/webgl.js.map +0 -1
  399. package/dist/es5/types.js +0 -2
  400. package/dist/es5/types.js.map +0 -1
  401. package/dist/esm/adapter/converters/device-parameters.js +0 -168
  402. package/dist/esm/adapter/converters/device-parameters.js.map +0 -1
  403. package/dist/esm/adapter/converters/renderbuffer-formats.js +0 -185
  404. package/dist/esm/adapter/converters/renderbuffer-formats.js.map +0 -1
  405. package/dist/esm/adapter/converters/sampler-parameters.js +0 -227
  406. package/dist/esm/adapter/converters/sampler-parameters.js.map +0 -1
  407. package/dist/esm/adapter/converters/texture-formats.js +0 -954
  408. package/dist/esm/adapter/converters/texture-formats.js.map +0 -1
  409. package/dist/esm/adapter/converters/vertex-formats.js +0 -35
  410. package/dist/esm/adapter/converters/vertex-formats.js.map +0 -1
  411. package/dist/esm/adapter/device-helpers/device-features.js +0 -112
  412. package/dist/esm/adapter/device-helpers/device-features.js.map +0 -1
  413. package/dist/esm/adapter/device-helpers/device-limits.js +0 -91
  414. package/dist/esm/adapter/device-helpers/device-limits.js.map +0 -1
  415. package/dist/esm/adapter/device-helpers/get-device-info.js +0 -44
  416. package/dist/esm/adapter/device-helpers/get-device-info.js.map +0 -1
  417. package/dist/esm/adapter/device-helpers/is-old-ie.js +0 -8
  418. package/dist/esm/adapter/device-helpers/is-old-ie.js.map +0 -1
  419. package/dist/esm/adapter/helpers/attribute-utils.js +0 -81
  420. package/dist/esm/adapter/helpers/attribute-utils.js.map +0 -1
  421. package/dist/esm/adapter/helpers/get-shader-layout.js +0 -330
  422. package/dist/esm/adapter/helpers/get-shader-layout.js.map +0 -1
  423. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js +0 -37
  424. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js.map +0 -1
  425. package/dist/esm/adapter/helpers/set-uniform.js +0 -115
  426. package/dist/esm/adapter/helpers/set-uniform.js.map +0 -1
  427. package/dist/esm/adapter/helpers/uniforms.js +0 -99
  428. package/dist/esm/adapter/helpers/uniforms.js.map +0 -1
  429. package/dist/esm/adapter/objects/constants-to-keys.js +0 -42
  430. package/dist/esm/adapter/objects/constants-to-keys.js.map +0 -1
  431. package/dist/esm/adapter/objects/webgl-renderbuffer.js +0 -94
  432. package/dist/esm/adapter/objects/webgl-renderbuffer.js.map +0 -1
  433. package/dist/esm/adapter/objects/webgl-resource.js +0 -216
  434. package/dist/esm/adapter/objects/webgl-resource.js.map +0 -1
  435. package/dist/esm/adapter/objects/webgl-vertex-array-object.js +0 -84
  436. package/dist/esm/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  437. package/dist/esm/adapter/resources/webgl-buffer.js +0 -164
  438. package/dist/esm/adapter/resources/webgl-buffer.js.map +0 -1
  439. package/dist/esm/adapter/resources/webgl-command-buffer.js +0 -65
  440. package/dist/esm/adapter/resources/webgl-command-buffer.js.map +0 -1
  441. package/dist/esm/adapter/resources/webgl-command-encoder.js +0 -53
  442. package/dist/esm/adapter/resources/webgl-command-encoder.js.map +0 -1
  443. package/dist/esm/adapter/resources/webgl-external-texture.js +0 -2
  444. package/dist/esm/adapter/resources/webgl-external-texture.js.map +0 -1
  445. package/dist/esm/adapter/resources/webgl-framebuffer.js +0 -267
  446. package/dist/esm/adapter/resources/webgl-framebuffer.js.map +0 -1
  447. package/dist/esm/adapter/resources/webgl-render-pass.js +0 -21
  448. package/dist/esm/adapter/resources/webgl-render-pass.js.map +0 -1
  449. package/dist/esm/adapter/resources/webgl-render-pipeline.js +0 -428
  450. package/dist/esm/adapter/resources/webgl-render-pipeline.js.map +0 -1
  451. package/dist/esm/adapter/resources/webgl-sampler.js +0 -50
  452. package/dist/esm/adapter/resources/webgl-sampler.js.map +0 -1
  453. package/dist/esm/adapter/resources/webgl-shader.js +0 -76
  454. package/dist/esm/adapter/resources/webgl-shader.js.map +0 -1
  455. package/dist/esm/adapter/resources/webgl-texture.js +0 -834
  456. package/dist/esm/adapter/resources/webgl-texture.js.map +0 -1
  457. package/dist/esm/adapter/webgl-canvas-context.js +0 -54
  458. package/dist/esm/adapter/webgl-canvas-context.js.map +0 -1
  459. package/dist/esm/adapter/webgl-device.js +0 -337
  460. package/dist/esm/adapter/webgl-device.js.map +0 -1
  461. package/dist/esm/bundle.js +0 -5
  462. package/dist/esm/bundle.js.map +0 -1
  463. package/dist/esm/classic/accessor.js +0 -144
  464. package/dist/esm/classic/accessor.js.map +0 -1
  465. package/dist/esm/classic/buffer.js +0 -392
  466. package/dist/esm/classic/buffer.js.map +0 -1
  467. package/dist/esm/classic/typed-array-utils.js +0 -112
  468. package/dist/esm/classic/typed-array-utils.js.map +0 -1
  469. package/dist/esm/context/context/context-state.js +0 -26
  470. package/dist/esm/context/context/context-state.js.map +0 -1
  471. package/dist/esm/context/context/create-browser-context.js +0 -61
  472. package/dist/esm/context/context/create-browser-context.js.map +0 -1
  473. package/dist/esm/context/context/create-headless-context.js +0 -43
  474. package/dist/esm/context/context/create-headless-context.js.map +0 -1
  475. package/dist/esm/context/context/device-pixels.js +0 -103
  476. package/dist/esm/context/context/device-pixels.js.map +0 -1
  477. package/dist/esm/context/context/webgl-checks.js +0 -34
  478. package/dist/esm/context/context/webgl-checks.js.map +0 -1
  479. package/dist/esm/context/debug/spector.js +0 -76
  480. package/dist/esm/context/debug/spector.js.map +0 -1
  481. package/dist/esm/context/debug/webgl-developer-tools.js +0 -121
  482. package/dist/esm/context/debug/webgl-developer-tools.js.map +0 -1
  483. package/dist/esm/context/parameters/unified-parameter-api.js +0 -63
  484. package/dist/esm/context/parameters/unified-parameter-api.js.map +0 -1
  485. package/dist/esm/context/parameters/webgl-parameter-tables.js +0 -445
  486. package/dist/esm/context/parameters/webgl-parameter-tables.js.map +0 -1
  487. package/dist/esm/context/polyfill/get-parameter-polyfill.js +0 -91
  488. package/dist/esm/context/polyfill/get-parameter-polyfill.js.map +0 -1
  489. package/dist/esm/context/polyfill/polyfill-context.js +0 -91
  490. package/dist/esm/context/polyfill/polyfill-context.js.map +0 -1
  491. package/dist/esm/context/polyfill/polyfill-table.js +0 -160
  492. package/dist/esm/context/polyfill/polyfill-table.js.map +0 -1
  493. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js +0 -335
  494. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js.map +0 -1
  495. package/dist/esm/context/state-tracker/deep-array-equal.js +0 -21
  496. package/dist/esm/context/state-tracker/deep-array-equal.js.map +0 -1
  497. package/dist/esm/context/state-tracker/track-context-state.js +0 -183
  498. package/dist/esm/context/state-tracker/track-context-state.js.map +0 -1
  499. package/dist/esm/context/state-tracker/with-parameters.js +0 -36
  500. package/dist/esm/context/state-tracker/with-parameters.js.map +0 -1
  501. package/dist/esm/index.js +0 -28
  502. package/dist/esm/index.js.map +0 -1
  503. package/dist/esm/init.js +0 -4
  504. package/dist/esm/init.js.map +0 -1
  505. package/dist/esm/types/webgl.js +0 -2
  506. package/dist/esm/types/webgl.js.map +0 -1
  507. package/dist/esm/types.js +0 -2
  508. package/dist/esm/types.js.map +0 -1
  509. package/dist/init.d.ts +0 -2
  510. package/dist/init.d.ts.map +0 -1
  511. package/dist/init.js +0 -4
  512. package/dist/init.js.map +0 -1
  513. package/dist/types/webgl.d.ts +0 -145
  514. package/dist/types/webgl.d.ts.map +0 -1
  515. package/dist/types/webgl.js +0 -2
  516. package/dist/types/webgl.js.map +0 -1
  517. package/src/adapter/converters/renderbuffer-formats.ts +0 -92
  518. package/src/adapter/helpers/attribute-utils.ts +0 -61
  519. package/src/adapter/objects/webgl-vertex-array-object.ts +0 -111
  520. package/src/bundle.ts +0 -4
  521. package/src/classic/buffer.ts +0 -474
  522. package/src/context/context/context-state.ts +0 -41
  523. package/src/context/context/device-pixels.ts +0 -158
  524. package/src/init.ts +0 -4
  525. package/src/types/webgl.ts +0 -284
@@ -1,125 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.setUniform = setUniform;
9
-
10
- var _constants = _interopRequireDefault(require("@luma.gl/constants"));
11
-
12
- function setUniform(gl, location, type, value) {
13
- var gl2 = gl;
14
-
15
- if (typeof value === 'number') {
16
- switch (type) {
17
- case _constants.default.SAMPLER_2D:
18
- case _constants.default.SAMPLER_CUBE:
19
- case _constants.default.SAMPLER_3D:
20
- case _constants.default.SAMPLER_2D_SHADOW:
21
- case _constants.default.SAMPLER_2D_ARRAY:
22
- case _constants.default.SAMPLER_2D_ARRAY_SHADOW:
23
- case _constants.default.SAMPLER_CUBE_SHADOW:
24
- case _constants.default.INT_SAMPLER_2D:
25
- case _constants.default.INT_SAMPLER_3D:
26
- case _constants.default.INT_SAMPLER_CUBE:
27
- case _constants.default.INT_SAMPLER_2D_ARRAY:
28
- case _constants.default.UNSIGNED_INT_SAMPLER_2D:
29
- case _constants.default.UNSIGNED_INT_SAMPLER_3D:
30
- case _constants.default.UNSIGNED_INT_SAMPLER_CUBE:
31
- case _constants.default.UNSIGNED_INT_SAMPLER_2D_ARRAY:
32
- return gl.uniform1i(location, value);
33
- }
34
- }
35
-
36
- if (value === true) {
37
- value = 1;
38
- }
39
-
40
- if (value === false) {
41
- value = 1;
42
- }
43
-
44
- var arrayValue = typeof value === 'number' ? [value] : value;
45
-
46
- switch (type) {
47
- case _constants.default.FLOAT:
48
- return gl.uniform1fv(location, arrayValue);
49
-
50
- case _constants.default.FLOAT_VEC2:
51
- return gl.uniform2fv(location, arrayValue);
52
-
53
- case _constants.default.FLOAT_VEC3:
54
- return gl.uniform3fv(location, arrayValue);
55
-
56
- case _constants.default.FLOAT_VEC4:
57
- return gl.uniform4fv(location, arrayValue);
58
-
59
- case _constants.default.INT:
60
- return gl.uniform1iv(location, arrayValue);
61
-
62
- case _constants.default.INT_VEC2:
63
- return gl.uniform2iv(location, arrayValue);
64
-
65
- case _constants.default.INT_VEC3:
66
- return gl.uniform3iv(location, arrayValue);
67
-
68
- case _constants.default.INT_VEC4:
69
- return gl.uniform4iv(location, arrayValue);
70
-
71
- case _constants.default.BOOL:
72
- return gl.uniform1iv(location, arrayValue);
73
-
74
- case _constants.default.BOOL_VEC2:
75
- return gl.uniform2iv(location, arrayValue);
76
-
77
- case _constants.default.BOOL_VEC3:
78
- return gl.uniform3iv(location, arrayValue);
79
-
80
- case _constants.default.BOOL_VEC4:
81
- gl.uniform4iv(location, arrayValue);
82
-
83
- case _constants.default.UNSIGNED_INT:
84
- return gl2.uniform1uiv(location, arrayValue, 1);
85
-
86
- case _constants.default.UNSIGNED_INT_VEC2:
87
- return gl2.uniform2uiv(location, arrayValue, 2);
88
-
89
- case _constants.default.UNSIGNED_INT_VEC3:
90
- return gl2.uniform3uiv(location, arrayValue, 3);
91
-
92
- case _constants.default.UNSIGNED_INT_VEC4:
93
- return gl2.uniform4uiv(location, arrayValue, 4);
94
-
95
- case _constants.default.FLOAT_MAT2:
96
- return gl.uniformMatrix2fv(location, false, arrayValue);
97
-
98
- case _constants.default.FLOAT_MAT3:
99
- return gl.uniformMatrix3fv(location, false, arrayValue);
100
-
101
- case _constants.default.FLOAT_MAT4:
102
- return gl.uniformMatrix4fv(location, false, arrayValue);
103
-
104
- case _constants.default.FLOAT_MAT2x3:
105
- return gl2.uniformMatrix2x3fv(location, false, arrayValue);
106
-
107
- case _constants.default.FLOAT_MAT2x4:
108
- return gl2.uniformMatrix2x4fv(location, false, arrayValue);
109
-
110
- case _constants.default.FLOAT_MAT3x2:
111
- return gl2.uniformMatrix3x2fv(location, false, arrayValue);
112
-
113
- case _constants.default.FLOAT_MAT3x4:
114
- return gl2.uniformMatrix3x4fv(location, false, arrayValue);
115
-
116
- case _constants.default.FLOAT_MAT4x2:
117
- return gl2.uniformMatrix4x2fv(location, false, arrayValue);
118
-
119
- case _constants.default.FLOAT_MAT4x3:
120
- return gl2.uniformMatrix4x3fv(location, false, arrayValue);
121
- }
122
-
123
- throw new Error('Illegal uniform');
124
- }
125
- //# sourceMappingURL=set-uniform.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/adapter/helpers/set-uniform.ts"],"names":["setUniform","gl","location","type","value","gl2","GL","SAMPLER_2D","SAMPLER_CUBE","SAMPLER_3D","SAMPLER_2D_SHADOW","SAMPLER_2D_ARRAY","SAMPLER_2D_ARRAY_SHADOW","SAMPLER_CUBE_SHADOW","INT_SAMPLER_2D","INT_SAMPLER_3D","INT_SAMPLER_CUBE","INT_SAMPLER_2D_ARRAY","UNSIGNED_INT_SAMPLER_2D","UNSIGNED_INT_SAMPLER_3D","UNSIGNED_INT_SAMPLER_CUBE","UNSIGNED_INT_SAMPLER_2D_ARRAY","uniform1i","arrayValue","FLOAT","uniform1fv","FLOAT_VEC2","uniform2fv","FLOAT_VEC3","uniform3fv","FLOAT_VEC4","uniform4fv","INT","uniform1iv","INT_VEC2","uniform2iv","INT_VEC3","uniform3iv","INT_VEC4","uniform4iv","BOOL","BOOL_VEC2","BOOL_VEC3","BOOL_VEC4","UNSIGNED_INT","uniform1uiv","UNSIGNED_INT_VEC2","uniform2uiv","UNSIGNED_INT_VEC3","uniform3uiv","UNSIGNED_INT_VEC4","uniform4uiv","FLOAT_MAT2","uniformMatrix2fv","FLOAT_MAT3","uniformMatrix3fv","FLOAT_MAT4","uniformMatrix4fv","FLOAT_MAT2x3","uniformMatrix2x3fv","FLOAT_MAT2x4","uniformMatrix2x4fv","FLOAT_MAT3x2","uniformMatrix3x2fv","FLOAT_MAT3x4","uniformMatrix3x4fv","FLOAT_MAT4x2","uniformMatrix4x2fv","FLOAT_MAT4x3","uniformMatrix4x3fv","Error"],"mappings":"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","sourcesContent":["// Uniforms\nimport GL from '@luma.gl/constants';\n\n/** Set a raw uniform (without type conversion and caching) */\n/* eslint-disable max-len */\nexport function setUniform(\n gl: WebGLRenderingContext,\n location: WebGLUniformLocation,\n type: GL,\n value: number | Float32Array | Int32Array | Uint32Array\n): void {\n const gl2 = gl as WebGL2RenderingContext;\n\n if (typeof value === 'number') {\n // prettier-ignore\n switch (type) {\n // WebGL1 samplers\n case GL.SAMPLER_2D:\n case GL.SAMPLER_CUBE:\n // WebGL2 samplers\n case GL.SAMPLER_3D:\n case GL.SAMPLER_2D_SHADOW:\n case GL.SAMPLER_2D_ARRAY:\n case GL.SAMPLER_2D_ARRAY_SHADOW:\n case GL.SAMPLER_CUBE_SHADOW:\n case GL.INT_SAMPLER_2D:\n case GL.INT_SAMPLER_3D:\n case GL.INT_SAMPLER_CUBE:\n case GL.INT_SAMPLER_2D_ARRAY:\n case GL.UNSIGNED_INT_SAMPLER_2D:\n case GL.UNSIGNED_INT_SAMPLER_3D:\n case GL.UNSIGNED_INT_SAMPLER_CUBE:\n case GL.UNSIGNED_INT_SAMPLER_2D_ARRAY:\n return gl.uniform1i(location, value);\n }\n }\n\n // @ts-expect-error\n if (value === true) {\n value = 1;\n }\n // @ts-expect-error\n if (value === false) {\n value = 1;\n }\n const arrayValue = (typeof value === 'number') ? [value] : value;\n\n // prettier-ignore\n switch (type) {\n case GL.FLOAT: return gl.uniform1fv(location, arrayValue);\n case GL.FLOAT_VEC2: return gl.uniform2fv(location, arrayValue);\n case GL.FLOAT_VEC3: return gl.uniform3fv(location, arrayValue);\n case GL.FLOAT_VEC4: return gl.uniform4fv(location, arrayValue);\n\n case GL.INT: return gl.uniform1iv(location, arrayValue);\n case GL.INT_VEC2: return gl.uniform2iv(location, arrayValue);\n case GL.INT_VEC3: return gl.uniform3iv(location, arrayValue);\n case GL.INT_VEC4: return gl.uniform4iv(location, arrayValue);\n\n case GL.BOOL: return gl.uniform1iv(location, arrayValue);\n case GL.BOOL_VEC2: return gl.uniform2iv(location, arrayValue);\n case GL.BOOL_VEC3: return gl.uniform3iv(location, arrayValue);\n case GL.BOOL_VEC4: gl.uniform4iv(location, arrayValue);\n\n // WEBGL2 - unsigned integers\n case GL.UNSIGNED_INT: return gl2.uniform1uiv(location, arrayValue, 1);\n case GL.UNSIGNED_INT_VEC2: return gl2.uniform2uiv(location, arrayValue, 2);\n case GL.UNSIGNED_INT_VEC3: return gl2.uniform3uiv(location, arrayValue, 3);\n case GL.UNSIGNED_INT_VEC4: return gl2.uniform4uiv(location, arrayValue, 4);\n\n // WebGL2 - quadratic matrices\n // false: don't transpose the matrix\n case GL.FLOAT_MAT2: return gl.uniformMatrix2fv(location, false, arrayValue);\n case GL.FLOAT_MAT3: return gl.uniformMatrix3fv(location, false, arrayValue);\n case GL.FLOAT_MAT4: return gl.uniformMatrix4fv(location, false, arrayValue);\n\n // WebGL2 - rectangular matrices\n case GL.FLOAT_MAT2x3: return gl2.uniformMatrix2x3fv(location, false, arrayValue);\n case GL.FLOAT_MAT2x4: return gl2.uniformMatrix2x4fv(location, false, arrayValue);\n case GL.FLOAT_MAT3x2: return gl2.uniformMatrix3x2fv(location, false, arrayValue);\n case GL.FLOAT_MAT3x4: return gl2.uniformMatrix3x4fv(location, false, arrayValue);\n case GL.FLOAT_MAT4x2: return gl2.uniformMatrix4x2fv(location, false, arrayValue);\n case GL.FLOAT_MAT4x3: return gl2.uniformMatrix4x3fv(location, false, arrayValue);\n }\n\n throw new Error('Illegal uniform');\n}\n"],"file":"set-uniform.js"}
@@ -1,112 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.isSamplerUniform = isSamplerUniform;
9
- exports.decodeUniformType = decodeUniformType;
10
- exports.decodeAttributeType = decodeAttributeType;
11
- exports.decomposeCompositeGLType = decomposeCompositeGLType;
12
- exports.getCompositeGLType = getCompositeGLType;
13
-
14
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
- var _constants = _interopRequireDefault(require("@luma.gl/constants"));
19
-
20
- var _COMPOSITE_GL_TYPES;
21
-
22
- function isSamplerUniform(type) {
23
- return SAMPLER_TYPES.includes(type);
24
- }
25
-
26
- var SAMPLER_TYPES = [_constants.default.SAMPLER_2D, _constants.default.SAMPLER_CUBE, _constants.default.SAMPLER_3D, _constants.default.SAMPLER_2D_SHADOW, _constants.default.SAMPLER_2D_ARRAY, _constants.default.SAMPLER_2D_ARRAY_SHADOW, _constants.default.SAMPLER_CUBE_SHADOW, _constants.default.INT_SAMPLER_2D, _constants.default.INT_SAMPLER_3D, _constants.default.INT_SAMPLER_CUBE, _constants.default.INT_SAMPLER_2D_ARRAY, _constants.default.UNSIGNED_INT_SAMPLER_2D, _constants.default.UNSIGNED_INT_SAMPLER_3D, _constants.default.UNSIGNED_INT_SAMPLER_CUBE, _constants.default.UNSIGNED_INT_SAMPLER_2D_ARRAY];
27
- var COMPOSITE_GL_TYPES = (_COMPOSITE_GL_TYPES = {}, (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT, [_constants.default.FLOAT, 1, 'float', 'f32', 'float32']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_VEC2, [_constants.default.FLOAT, 2, 'vec2', 'vec2<f32>', 'float32x2']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_VEC3, [_constants.default.FLOAT, 3, 'vec3', 'vec3<f32>', 'float32x3']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_VEC4, [_constants.default.FLOAT, 4, 'vec4', 'vec4<f32>', 'float32x4']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.INT, [_constants.default.INT, 1, 'int', 'i32', 'sint32']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.INT_VEC2, [_constants.default.INT, 2, 'ivec2', 'vec2<i32>', 'sint32x2']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.INT_VEC3, [_constants.default.INT, 3, 'ivec3', 'vec3<i32>', 'sint32x3']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.INT_VEC4, [_constants.default.INT, 4, 'ivec4', 'vec4<i32>', 'sint32x4']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.UNSIGNED_INT, [_constants.default.UNSIGNED_INT, 1, 'uint', 'u32', 'uint32']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.UNSIGNED_INT_VEC2, [_constants.default.UNSIGNED_INT, 2, 'uvec2', 'vec2<u32>', 'uint32x2']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.UNSIGNED_INT_VEC3, [_constants.default.UNSIGNED_INT, 3, 'uvec3', 'vec3<u32>', 'uint32x3']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.UNSIGNED_INT_VEC4, [_constants.default.UNSIGNED_INT, 4, 'uvec4', 'vec4<u32>', 'uint32x4']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.BOOL, [_constants.default.FLOAT, 1, 'bool', 'f32', 'float32x2']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.BOOL_VEC2, [_constants.default.FLOAT, 2, 'bvec2', 'vec2<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.BOOL_VEC3, [_constants.default.FLOAT, 3, 'bvec3', 'vec3<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.BOOL_VEC4, [_constants.default.FLOAT, 4, 'bvec4', 'vec4<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT2, [_constants.default.FLOAT, 8, 'mat2', 'mat2x2<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT2x3, [_constants.default.FLOAT, 8, 'mat2x3', 'mat2x3<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT2x4, [_constants.default.FLOAT, 8, 'mat2x4', 'mat2x4<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT3x2, [_constants.default.FLOAT, 12, 'mat3x2', 'mat3x2<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT3, [_constants.default.FLOAT, 12, 'mat3', 'mat3x3<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT3x4, [_constants.default.FLOAT, 12, 'mat3x4', 'mat3x4<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT4x2, [_constants.default.FLOAT, 16, 'mat4x2', 'mat4x2<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT4x3, [_constants.default.FLOAT, 16, 'mat4x3', 'mat4x3<f32>']), (0, _defineProperty2.default)(_COMPOSITE_GL_TYPES, _constants.default.FLOAT_MAT4, [_constants.default.FLOAT, 16, 'mat4', 'mat4x4<f32>']), _COMPOSITE_GL_TYPES);
28
-
29
- function decodeUniformType(uniformType) {
30
- var typeAndSize = COMPOSITE_GL_TYPES[uniformType];
31
-
32
- if (!typeAndSize) {
33
- throw new Error('uniform');
34
- }
35
-
36
- var _typeAndSize = (0, _slicedToArray2.default)(typeAndSize, 4),
37
- glType = _typeAndSize[0],
38
- components = _typeAndSize[1],
39
- format = _typeAndSize[3];
40
-
41
- return {
42
- format: format,
43
- components: components,
44
- glType: glType
45
- };
46
- }
47
-
48
- function decodeAttributeType(attributeType) {
49
- var typeAndSize = COMPOSITE_GL_TYPES[attributeType];
50
-
51
- if (!typeAndSize) {
52
- throw new Error('attribute');
53
- }
54
-
55
- var _typeAndSize2 = (0, _slicedToArray2.default)(typeAndSize, 5),
56
- glType = _typeAndSize2[0],
57
- components = _typeAndSize2[1],
58
- format = _typeAndSize2[4];
59
-
60
- return {
61
- format: format,
62
- components: components,
63
- glType: glType
64
- };
65
- }
66
-
67
- function decomposeCompositeGLType(compositeGLType) {
68
- var typeAndSize = COMPOSITE_GL_TYPES[compositeGLType];
69
-
70
- if (!typeAndSize) {
71
- return null;
72
- }
73
-
74
- var _typeAndSize3 = (0, _slicedToArray2.default)(typeAndSize, 2),
75
- type = _typeAndSize3[0],
76
- components = _typeAndSize3[1];
77
-
78
- return {
79
- type: type,
80
- components: components
81
- };
82
- }
83
-
84
- function getCompositeGLType(type, components) {
85
- switch (type) {
86
- case _constants.default.BYTE:
87
- case _constants.default.UNSIGNED_BYTE:
88
- case _constants.default.SHORT:
89
- case _constants.default.UNSIGNED_SHORT:
90
- type = _constants.default.FLOAT;
91
- break;
92
-
93
- default:
94
- }
95
-
96
- for (var glType in COMPOSITE_GL_TYPES) {
97
- var _COMPOSITE_GL_TYPES$g = (0, _slicedToArray2.default)(COMPOSITE_GL_TYPES[glType], 3),
98
- compType = _COMPOSITE_GL_TYPES$g[0],
99
- compComponents = _COMPOSITE_GL_TYPES$g[1],
100
- name = _COMPOSITE_GL_TYPES$g[2];
101
-
102
- if (compType === type && compComponents === components) {
103
- return {
104
- glType: Number(glType),
105
- name: name
106
- };
107
- }
108
- }
109
-
110
- return null;
111
- }
112
- //# sourceMappingURL=uniforms.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/adapter/helpers/uniforms.ts"],"names":["isSamplerUniform","type","SAMPLER_TYPES","includes","GL","SAMPLER_2D","SAMPLER_CUBE","SAMPLER_3D","SAMPLER_2D_SHADOW","SAMPLER_2D_ARRAY","SAMPLER_2D_ARRAY_SHADOW","SAMPLER_CUBE_SHADOW","INT_SAMPLER_2D","INT_SAMPLER_3D","INT_SAMPLER_CUBE","INT_SAMPLER_2D_ARRAY","UNSIGNED_INT_SAMPLER_2D","UNSIGNED_INT_SAMPLER_3D","UNSIGNED_INT_SAMPLER_CUBE","UNSIGNED_INT_SAMPLER_2D_ARRAY","COMPOSITE_GL_TYPES","FLOAT","FLOAT_VEC2","FLOAT_VEC3","FLOAT_VEC4","INT","INT_VEC2","INT_VEC3","INT_VEC4","UNSIGNED_INT","UNSIGNED_INT_VEC2","UNSIGNED_INT_VEC3","UNSIGNED_INT_VEC4","BOOL","BOOL_VEC2","BOOL_VEC3","BOOL_VEC4","FLOAT_MAT2","FLOAT_MAT2x3","FLOAT_MAT2x4","FLOAT_MAT3x2","FLOAT_MAT3","FLOAT_MAT3x4","FLOAT_MAT4x2","FLOAT_MAT4x3","FLOAT_MAT4","decodeUniformType","uniformType","typeAndSize","Error","glType","components","format","decodeAttributeType","attributeType","decomposeCompositeGLType","compositeGLType","getCompositeGLType","BYTE","UNSIGNED_BYTE","SHORT","UNSIGNED_SHORT","compType","compComponents","name","Number"],"mappings":";;;;;;;;;;;;;;;;;AACA;;;;AAIO,SAASA,gBAAT,CAA0BC,IAA1B,EAAwD;AAC7D,SAAOC,aAAa,CAACC,QAAd,CAAuBF,IAAvB,CAAP;AACD;;AAED,IAAMC,aAA8B,GAAG,CACrCE,mBAAGC,UADkC,EAErCD,mBAAGE,YAFkC,EAGrCF,mBAAGG,UAHkC,EAIrCH,mBAAGI,iBAJkC,EAKrCJ,mBAAGK,gBALkC,EAMrCL,mBAAGM,uBANkC,EAOrCN,mBAAGO,mBAPkC,EAQrCP,mBAAGQ,cARkC,EASrCR,mBAAGS,cATkC,EAUrCT,mBAAGU,gBAVkC,EAWrCV,mBAAGW,oBAXkC,EAYrCX,mBAAGY,uBAZkC,EAarCZ,mBAAGa,uBAbkC,EAcrCb,mBAAGc,yBAdkC,EAerCd,mBAAGe,6BAfkC,CAAvC;AAmBA,IAAMC,kBAGL,iFACEhB,mBAAGiB,KADL,EACa,CAACjB,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,OAAd,EAAuB,KAAvB,EAA8B,SAA9B,CADb,sDAEEjB,mBAAGkB,UAFL,EAEkB,CAAClB,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,MAAd,EAAsB,WAAtB,EAAmC,WAAnC,CAFlB,sDAGEjB,mBAAGmB,UAHL,EAGkB,CAACnB,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,MAAd,EAAsB,WAAtB,EAAmC,WAAnC,CAHlB,sDAIEjB,mBAAGoB,UAJL,EAIkB,CAACpB,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,MAAd,EAAsB,WAAtB,EAAmC,WAAnC,CAJlB,sDAMEjB,mBAAGqB,GANL,EAMW,CAACrB,mBAAGqB,GAAJ,EAAS,CAAT,EAAY,KAAZ,EAAmB,KAAnB,EAA0B,QAA1B,CANX,sDAOErB,mBAAGsB,QAPL,EAOgB,CAACtB,mBAAGqB,GAAJ,EAAS,CAAT,EAAY,OAAZ,EAAqB,WAArB,EAAkC,UAAlC,CAPhB,sDAQErB,mBAAGuB,QARL,EAQgB,CAACvB,mBAAGqB,GAAJ,EAAS,CAAT,EAAY,OAAZ,EAAqB,WAArB,EAAkC,UAAlC,CARhB,sDASErB,mBAAGwB,QATL,EASgB,CAACxB,mBAAGqB,GAAJ,EAAS,CAAT,EAAY,OAAZ,EAAqB,WAArB,EAAkC,UAAlC,CAThB,sDAWErB,mBAAGyB,YAXL,EAWoB,CAACzB,mBAAGyB,YAAJ,EAAkB,CAAlB,EAAqB,MAArB,EAA6B,KAA7B,EAAoC,QAApC,CAXpB,sDAYEzB,mBAAG0B,iBAZL,EAYyB,CAAC1B,mBAAGyB,YAAJ,EAAkB,CAAlB,EAAqB,OAArB,EAA8B,WAA9B,EAA2C,UAA3C,CAZzB,sDAaEzB,mBAAG2B,iBAbL,EAayB,CAAC3B,mBAAGyB,YAAJ,EAAkB,CAAlB,EAAqB,OAArB,EAA8B,WAA9B,EAA2C,UAA3C,CAbzB,sDAcEzB,mBAAG4B,iBAdL,EAcyB,CAAC5B,mBAAGyB,YAAJ,EAAkB,CAAlB,EAAqB,OAArB,EAA8B,WAA9B,EAA2C,UAA3C,CAdzB,sDAgBEzB,mBAAG6B,IAhBL,EAgBY,CAAC7B,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,MAAd,EAAsB,KAAtB,EAA6B,WAA7B,CAhBZ,sDAiBEjB,mBAAG8B,SAjBL,EAiBiB,CAAC9B,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,OAAd,EAAuB,WAAvB,CAjBjB,sDAkBEjB,mBAAG+B,SAlBL,EAkBiB,CAAC/B,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,OAAd,EAAuB,WAAvB,CAlBjB,sDAmBEjB,mBAAGgC,SAnBL,EAmBiB,CAAChC,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,OAAd,EAAuB,WAAvB,CAnBjB,sDAqBEjB,mBAAGiC,UArBL,EAqBkB,CAACjC,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,MAAd,EAAsB,aAAtB,CArBlB,sDAsBEjB,mBAAGkC,YAtBL,EAsBoB,CAAClC,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,QAAd,EAAwB,aAAxB,CAtBpB,sDAuBEjB,mBAAGmC,YAvBL,EAuBoB,CAACnC,mBAAGiB,KAAJ,EAAW,CAAX,EAAc,QAAd,EAAwB,aAAxB,CAvBpB,sDAyBEjB,mBAAGoC,YAzBL,EAyBoB,CAACpC,mBAAGiB,KAAJ,EAAW,EAAX,EAAe,QAAf,EAAyB,aAAzB,CAzBpB,sDA0BEjB,mBAAGqC,UA1BL,EA0BkB,CAACrC,mBAAGiB,KAAJ,EAAW,EAAX,EAAe,MAAf,EAAuB,aAAvB,CA1BlB,sDA2BEjB,mBAAGsC,YA3BL,EA2BoB,CAACtC,mBAAGiB,KAAJ,EAAW,EAAX,EAAe,QAAf,EAAyB,aAAzB,CA3BpB,sDA6BEjB,mBAAGuC,YA7BL,EA6BoB,CAACvC,mBAAGiB,KAAJ,EAAW,EAAX,EAAe,QAAf,EAAyB,aAAzB,CA7BpB,sDA8BEjB,mBAAGwC,YA9BL,EA8BoB,CAACxC,mBAAGiB,KAAJ,EAAW,EAAX,EAAe,QAAf,EAAyB,aAAzB,CA9BpB,sDA+BEjB,mBAAGyC,UA/BL,EA+BkB,CAACzC,mBAAGiB,KAAJ,EAAW,EAAX,EAAe,MAAf,EAAuB,aAAvB,CA/BlB,uBAHD;;AAsCO,SAASyB,iBAAT,CACLC,WADK,EAEwD;AAC7D,MAAMC,WAAW,GAAG5B,kBAAkB,CAAC2B,WAAD,CAAtC;;AACA,MAAI,CAACC,WAAL,EAAkB;AAChB,UAAM,IAAIC,KAAJ,CAAU,SAAV,CAAN;AACD;;AACD,kDAAuCD,WAAvC;AAAA,MAAOE,MAAP;AAAA,MAAeC,UAAf;AAAA,MAA6BC,MAA7B;;AACA,SAAO;AAACA,IAAAA,MAAM,EAANA,MAAD;AAASD,IAAAA,UAAU,EAAVA,UAAT;AAAqBD,IAAAA,MAAM,EAANA;AAArB,GAAP;AACD;;AAEM,SAASG,mBAAT,CAA6BC,aAA7B,EAIL;AACA,MAAMN,WAAW,GAAG5B,kBAAkB,CAACkC,aAAD,CAAtC;;AACA,MAAI,CAACN,WAAL,EAAkB;AAChB,UAAM,IAAIC,KAAJ,CAAU,WAAV,CAAN;AACD;;AACD,mDAAyCD,WAAzC;AAAA,MAAOE,MAAP;AAAA,MAAeC,UAAf;AAAA,MAA+BC,MAA/B;;AACA,SAAO;AAACA,IAAAA,MAAM,EAANA,MAAD;AAASD,IAAAA,UAAU,EAAVA,UAAT;AAAqBD,IAAAA,MAAM,EAANA;AAArB,GAAP;AACD;;AAGM,SAASK,wBAAT,CACLC,eADK,EAEsC;AAC3C,MAAMR,WAAW,GAAG5B,kBAAkB,CAACoC,eAAD,CAAtC;;AACA,MAAI,CAACR,WAAL,EAAkB;AAChB,WAAO,IAAP;AACD;;AACD,mDAA2BA,WAA3B;AAAA,MAAO/C,IAAP;AAAA,MAAakD,UAAb;;AACA,SAAO;AAAClD,IAAAA,IAAI,EAAJA,IAAD;AAAOkD,IAAAA,UAAU,EAAVA;AAAP,GAAP;AACD;;AAEM,SAASM,kBAAT,CAA4BxD,IAA5B,EAAsCkD,UAAtC,EAAyF;AAC9F,UAAQlD,IAAR;AACE,SAAKG,mBAAGsD,IAAR;AACA,SAAKtD,mBAAGuD,aAAR;AACA,SAAKvD,mBAAGwD,KAAR;AACA,SAAKxD,mBAAGyD,cAAR;AACE5D,MAAAA,IAAI,GAAGG,mBAAGiB,KAAV;AACA;;AACF;AAPF;;AAUA,OAAK,IAAM6B,MAAX,IAAqB9B,kBAArB,EAAyC;AACvC,6DAAyCA,kBAAkB,CAAC8B,MAAD,CAA3D;AAAA,QAAOY,QAAP;AAAA,QAAiBC,cAAjB;AAAA,QAAiCC,IAAjC;;AACA,QAAIF,QAAQ,KAAK7D,IAAb,IAAqB8D,cAAc,KAAKZ,UAA5C,EAAwD;AACtD,aAAO;AAACD,QAAAA,MAAM,EAAEe,MAAM,CAACf,MAAD,CAAf;AAAyBc,QAAAA,IAAI,EAAJA;AAAzB,OAAP;AACD;AACF;;AACD,SAAO,IAAP;AACD","sourcesContent":["import {UniformFormat, VertexFormat} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\nimport {GLUniformType, GLSamplerType, GLCompositeType, GLType} from '../../types/webgl';\n\n/** Check is uniform is of sampler type */\nexport function isSamplerUniform(type: GLUniformType): boolean {\n return SAMPLER_TYPES.includes(type as GLSamplerType);\n}\n\nconst SAMPLER_TYPES: GLSamplerType[] = [\n GL.SAMPLER_2D,\n GL.SAMPLER_CUBE,\n GL.SAMPLER_3D,\n GL.SAMPLER_2D_SHADOW,\n GL.SAMPLER_2D_ARRAY,\n GL.SAMPLER_2D_ARRAY_SHADOW,\n GL.SAMPLER_CUBE_SHADOW,\n GL.INT_SAMPLER_2D,\n GL.INT_SAMPLER_3D,\n GL.INT_SAMPLER_CUBE,\n GL.INT_SAMPLER_2D_ARRAY,\n GL.UNSIGNED_INT_SAMPLER_2D,\n GL.UNSIGNED_INT_SAMPLER_3D,\n GL.UNSIGNED_INT_SAMPLER_CUBE,\n GL.UNSIGNED_INT_SAMPLER_2D_ARRAY\n];\n\n// Composite types table\nconst COMPOSITE_GL_TYPES: Record<\n GLCompositeType,\n [GLType, number, string, UniformFormat, VertexFormat?]\n> = {\n [GL.FLOAT]: [GL.FLOAT, 1, 'float', 'f32', 'float32'],\n [GL.FLOAT_VEC2]: [GL.FLOAT, 2, 'vec2', 'vec2<f32>', 'float32x2'],\n [GL.FLOAT_VEC3]: [GL.FLOAT, 3, 'vec3', 'vec3<f32>', 'float32x3'],\n [GL.FLOAT_VEC4]: [GL.FLOAT, 4, 'vec4', 'vec4<f32>', 'float32x4'],\n\n [GL.INT]: [GL.INT, 1, 'int', 'i32', 'sint32'],\n [GL.INT_VEC2]: [GL.INT, 2, 'ivec2', 'vec2<i32>', 'sint32x2'],\n [GL.INT_VEC3]: [GL.INT, 3, 'ivec3', 'vec3<i32>', 'sint32x3'],\n [GL.INT_VEC4]: [GL.INT, 4, 'ivec4', 'vec4<i32>', 'sint32x4'],\n\n [GL.UNSIGNED_INT]: [GL.UNSIGNED_INT, 1, 'uint', 'u32', 'uint32'],\n [GL.UNSIGNED_INT_VEC2]: [GL.UNSIGNED_INT, 2, 'uvec2', 'vec2<u32>', 'uint32x2'],\n [GL.UNSIGNED_INT_VEC3]: [GL.UNSIGNED_INT, 3, 'uvec3', 'vec3<u32>', 'uint32x3'],\n [GL.UNSIGNED_INT_VEC4]: [GL.UNSIGNED_INT, 4, 'uvec4', 'vec4<u32>', 'uint32x4'],\n\n [GL.BOOL]: [GL.FLOAT, 1, 'bool', 'f32', 'float32x2'],\n [GL.BOOL_VEC2]: [GL.FLOAT, 2, 'bvec2', 'vec2<f32>'],\n [GL.BOOL_VEC3]: [GL.FLOAT, 3, 'bvec3', 'vec3<f32>'],\n [GL.BOOL_VEC4]: [GL.FLOAT, 4, 'bvec4', 'vec4<f32>'],\n\n [GL.FLOAT_MAT2]: [GL.FLOAT, 8, 'mat2', 'mat2x2<f32>'], // 4\n [GL.FLOAT_MAT2x3]: [GL.FLOAT, 8, 'mat2x3', 'mat2x3<f32>'], // 6\n [GL.FLOAT_MAT2x4]: [GL.FLOAT, 8, 'mat2x4', 'mat2x4<f32>'], // 8\n\n [GL.FLOAT_MAT3x2]: [GL.FLOAT, 12, 'mat3x2', 'mat3x2<f32>'], // 6\n [GL.FLOAT_MAT3]: [GL.FLOAT, 12, 'mat3', 'mat3x3<f32>'], // 9\n [GL.FLOAT_MAT3x4]: [GL.FLOAT, 12, 'mat3x4', 'mat3x4<f32>'], // 12\n\n [GL.FLOAT_MAT4x2]: [GL.FLOAT, 16, 'mat4x2', 'mat4x2<f32>'], // 8\n [GL.FLOAT_MAT4x3]: [GL.FLOAT, 16, 'mat4x3', 'mat4x3<f32>'], // 12\n [GL.FLOAT_MAT4]: [GL.FLOAT, 16, 'mat4', 'mat4x4<f32>'] // 16\n};\n\n/** Decomposes a composite type GL.VEC3 into a basic type (GL.FLOAT) and components (3) */\nexport function decodeUniformType(\n uniformType: GL\n): {format: UniformFormat; components: number; glType: GLType} {\n const typeAndSize = COMPOSITE_GL_TYPES[uniformType];\n if (!typeAndSize) {\n throw new Error('uniform');\n }\n const [glType, components, , format] = typeAndSize;\n return {format, components, glType};\n}\n\nexport function decodeAttributeType(attributeType: GL): {\n format: VertexFormat;\n components: number;\n glType: GLType;\n} {\n const typeAndSize = COMPOSITE_GL_TYPES[attributeType];\n if (!typeAndSize) {\n throw new Error('attribute')\n }\n const [glType, components, , , format] = typeAndSize;\n return {format, components, glType};\n}\n\n/** Decomposes a composite type GL.VEC3 into a basic type (GL.FLOAT) and components (3) */\nexport function decomposeCompositeGLType(\n compositeGLType: GLCompositeType\n): {type: GLType; components: number} | null {\n const typeAndSize = COMPOSITE_GL_TYPES[compositeGLType];\n if (!typeAndSize) {\n return null;\n }\n const [type, components] = typeAndSize;\n return {type, components};\n}\n\nexport function getCompositeGLType(type: GL, components): {glType: GLType; name: string} | null {\n switch (type) {\n case GL.BYTE:\n case GL.UNSIGNED_BYTE:\n case GL.SHORT:\n case GL.UNSIGNED_SHORT:\n type = GL.FLOAT;\n break;\n default:\n }\n\n for (const glType in COMPOSITE_GL_TYPES) {\n const [compType, compComponents, name] = COMPOSITE_GL_TYPES[glType];\n if (compType === type && compComponents === components) {\n return {glType: Number(glType), name};\n }\n }\n return null;\n}\n"],"file":"uniforms.js"}
@@ -1,54 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getKeyValue = getKeyValue;
7
- exports.getKey = getKey;
8
- exports.getKeyType = getKeyType;
9
-
10
- var _api = require("@luma.gl/api");
11
-
12
- function getKeyValue(gl, name) {
13
- if (typeof name !== 'string') {
14
- return name;
15
- }
16
-
17
- var number = Number(name);
18
-
19
- if (!isNaN(number)) {
20
- return number;
21
- }
22
-
23
- name = name.replace(/^.*\./, '');
24
- var value = gl[name];
25
- (0, _api.assert)(value !== undefined, "Accessing undefined constant GL.".concat(name));
26
- return value;
27
- }
28
-
29
- function getKey(gl, value) {
30
- gl = gl.gl || gl;
31
- value = Number(value);
32
-
33
- for (var key in gl) {
34
- if (gl[key] === value) {
35
- return "GL.".concat(key);
36
- }
37
- }
38
-
39
- return String(value);
40
- }
41
-
42
- function getKeyType(gl, value) {
43
- (0, _api.assert)(value !== undefined, 'undefined key');
44
- value = Number(value);
45
-
46
- for (var key in gl) {
47
- if (gl[key] === value) {
48
- return "GL.".concat(key);
49
- }
50
- }
51
-
52
- return String(value);
53
- }
54
- //# sourceMappingURL=constants-to-keys.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/adapter/objects/constants-to-keys.ts"],"names":["getKeyValue","gl","name","number","Number","isNaN","replace","value","undefined","getKey","key","String","getKeyType"],"mappings":";;;;;;;;;AAAA;;AAIO,SAASA,WAAT,CAAqBC,EAArB,EAAgDC,IAAhD,EAAuE;AAE5E,MAAI,OAAOA,IAAP,KAAgB,QAApB,EAA8B;AAC5B,WAAOA,IAAP;AACD;;AAGD,MAAMC,MAAM,GAAGC,MAAM,CAACF,IAAD,CAArB;;AACA,MAAI,CAACG,KAAK,CAACF,MAAD,CAAV,EAAoB;AAClB,WAAOA,MAAP;AACD;;AAGDD,EAAAA,IAAI,GAAGA,IAAI,CAACI,OAAL,CAAa,OAAb,EAAsB,EAAtB,CAAP;AACA,MAAMC,KAAK,GAAGN,EAAE,CAACC,IAAD,CAAhB;AACA,mBAAOK,KAAK,KAAKC,SAAjB,4CAA+DN,IAA/D;AACA,SAAOK,KAAP;AACD;;AAEM,SAASE,MAAT,CAAgBR,EAAhB,EAA2CM,KAA3C,EAA+D;AAEpEN,EAAAA,EAAE,GAAGA,EAAE,CAACA,EAAH,IAASA,EAAd;AACAM,EAAAA,KAAK,GAAGH,MAAM,CAACG,KAAD,CAAd;;AACA,OAAK,IAAMG,GAAX,IAAkBT,EAAlB,EAAsB;AACpB,QAAIA,EAAE,CAACS,GAAD,CAAF,KAAYH,KAAhB,EAAuB;AACrB,0BAAaG,GAAb;AACD;AACF;;AACD,SAAOC,MAAM,CAACJ,KAAD,CAAb;AACD;;AAEM,SAASK,UAAT,CAAoBX,EAApB,EAA+CM,KAA/C,EAAmE;AACxE,mBAAOA,KAAK,KAAKC,SAAjB,EAA4B,eAA5B;AACAD,EAAAA,KAAK,GAAGH,MAAM,CAACG,KAAD,CAAd;;AACA,OAAK,IAAMG,GAAX,IAAkBT,EAAlB,EAAsB;AACpB,QAAIA,EAAE,CAACS,GAAD,CAAF,KAAYH,KAAhB,EAAuB;AACrB,0BAAaG,GAAb;AACD;AACF;;AACD,SAAOC,MAAM,CAACJ,KAAD,CAAb;AACD","sourcesContent":["import {assert} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\n\n// Resolve a WebGL enumeration name (returns itself if already a number)\nexport function getKeyValue(gl: WebGLRenderingContext, name: string | GL): GL {\n // If not a string, return (assume number)\n if (typeof name !== 'string') {\n return name;\n }\n\n // If string converts to number, return number\n const number = Number(name);\n if (!isNaN(number)) {\n return number;\n }\n\n // Look up string, after removing any 'GL.' or 'gl.' prefix\n name = name.replace(/^.*\\./, '');\n const value = gl[name];\n assert(value !== undefined, `Accessing undefined constant GL.${name}`);\n return value;\n}\n\nexport function getKey(gl: WebGLRenderingContext, value: any): string {\n // @ts-expect-error \n gl = gl.gl || gl;\n value = Number(value);\n for (const key in gl) {\n if (gl[key] === value) {\n return `GL.${key}`;\n }\n }\n return String(value);\n}\n\nexport function getKeyType(gl: WebGLRenderingContext, value: any): string {\n assert(value !== undefined, 'undefined key');\n value = Number(value);\n for (const key in gl) {\n if (gl[key] === value) {\n return `GL.${key}`;\n }\n }\n return String(value);\n}\n"],"file":"constants-to-keys.js"}
@@ -1,150 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _api = require("@luma.gl/api");
23
-
24
- var _constants = _interopRequireDefault(require("@luma.gl/constants"));
25
-
26
- var _webglResource = _interopRequireDefault(require("./webgl-resource"));
27
-
28
- var _renderbufferFormats = require("../converters/renderbuffer-formats");
29
-
30
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
31
-
32
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
33
-
34
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
35
-
36
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
37
-
38
- var DEFAULT_RENDERBUFFER_PROPS = {
39
- id: undefined,
40
- handle: undefined,
41
- userData: undefined,
42
- format: 0,
43
- width: 1,
44
- height: 1,
45
- samples: 0
46
- };
47
-
48
- var WEBGLRenderbuffer = function (_WebGLResource, _Symbol$toStringTag) {
49
- (0, _inherits2.default)(WEBGLRenderbuffer, _WebGLResource);
50
-
51
- var _super = _createSuper(WEBGLRenderbuffer);
52
-
53
- function WEBGLRenderbuffer(device, props) {
54
- var _this;
55
-
56
- (0, _classCallCheck2.default)(this, WEBGLRenderbuffer);
57
- _this = _super.call(this, device, props, DEFAULT_RENDERBUFFER_PROPS);
58
-
59
- _this._initialize(_this.props);
60
-
61
- return _this;
62
- }
63
-
64
- (0, _createClass2.default)(WEBGLRenderbuffer, [{
65
- key: _Symbol$toStringTag,
66
- get: function get() {
67
- return 'Renderbuffer';
68
- }
69
- }, {
70
- key: "width",
71
- get: function get() {
72
- return this.props.width;
73
- }
74
- }, {
75
- key: "height",
76
- get: function get() {
77
- return this.props.height;
78
- }
79
- }, {
80
- key: "format",
81
- get: function get() {
82
- return this.props.format;
83
- }
84
- }, {
85
- key: "samples",
86
- get: function get() {
87
- return this.props.samples;
88
- }
89
- }, {
90
- key: "resize",
91
- value: function resize(size) {
92
- if (size.width !== this.width || size.height !== this.height) {
93
- Object.assign(this.props, _objectSpread(_objectSpread({}, size), {}, {
94
- format: this.format,
95
- samples: this.samples
96
- }));
97
-
98
- this._initialize(this.props);
99
- }
100
-
101
- return this;
102
- }
103
- }, {
104
- key: "_initialize",
105
- value: function _initialize(props) {
106
- var format = props.format,
107
- width = props.width,
108
- height = props.height,
109
- samples = props.samples;
110
- (0, _api.assert)(format, 'Needs format');
111
- this.trackDeallocatedMemory();
112
- this.gl.bindRenderbuffer(_constants.default.RENDERBUFFER, this.handle);
113
-
114
- if (samples !== 0 && this.device.isWebGL2) {
115
- this.gl.renderbufferStorageMultisample(_constants.default.RENDERBUFFER, samples, format, width, height);
116
- } else {
117
- this.gl.renderbufferStorage(_constants.default.RENDERBUFFER, format, width, height);
118
- }
119
-
120
- this.gl.bindRenderbuffer(_constants.default.RENDERBUFFER, null);
121
- this.trackAllocatedMemory(width * height * (samples || 1) * (0, _renderbufferFormats.getRenderbufferFormatBytesPerPixel)(format));
122
- return this;
123
- }
124
- }, {
125
- key: "_createHandle",
126
- value: function _createHandle() {
127
- return this.gl.createRenderbuffer();
128
- }
129
- }, {
130
- key: "_deleteHandle",
131
- value: function _deleteHandle() {
132
- this.gl.deleteRenderbuffer(this.handle);
133
- this.trackDeallocatedMemory();
134
- }
135
- }, {
136
- key: "_bindHandle",
137
- value: function _bindHandle(handle) {
138
- this.gl.bindRenderbuffer(_constants.default.RENDERBUFFER, handle);
139
- }
140
- }], [{
141
- key: "isSupported",
142
- value: function isSupported(gl, options) {
143
- return !options.format || (0, _renderbufferFormats.isRenderbufferFormatSupported)(gl, options.format);
144
- }
145
- }]);
146
- return WEBGLRenderbuffer;
147
- }(_webglResource.default, Symbol.toStringTag);
148
-
149
- exports.default = WEBGLRenderbuffer;
150
- //# sourceMappingURL=webgl-renderbuffer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/adapter/objects/webgl-renderbuffer.ts"],"names":["DEFAULT_RENDERBUFFER_PROPS","id","undefined","handle","userData","format","width","height","samples","WEBGLRenderbuffer","device","props","_initialize","size","Object","assign","trackDeallocatedMemory","gl","bindRenderbuffer","GL","RENDERBUFFER","isWebGL2","renderbufferStorageMultisample","renderbufferStorage","trackAllocatedMemory","createRenderbuffer","deleteRenderbuffer","options","WebGLResource","Symbol","toStringTag"],"mappings":"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","sourcesContent":["/* eslint-disable no-inline-comments */\nimport {assert, ResourceProps} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\nimport WebGLDevice from '../webgl-device';\nimport WebGLResource from './webgl-resource';\nimport {\n isRenderbufferFormatSupported, getRenderbufferFormatBytesPerPixel\n} from '../converters/renderbuffer-formats';\n\nexport type RenderbufferProps = ResourceProps & {\n format: number;\n width?: number;\n height?: number;\n samples?: number;\n};\n\nconst DEFAULT_RENDERBUFFER_PROPS: Required<RenderbufferProps> = {\n id: undefined,\n handle: undefined,\n userData: undefined,\n format: 0,\n width: 1, \n height: 1, \n samples: 0\n};\n\n/**\n * Renderbuffers are GPU objects that contain images.\n * In contrast to Textures they are optimized for use as render targets, with Framebuffers.\n * while Textures may not be, and are the logical choice when\n * you do not need to sample (i.e. in a post-pass shader)\n * from the produced image. If you need to resample\n * (such as when reading depth back in a second shader pass),\n * use Textures instead.\n * Renderbuffer objects also natively accommodate Multisampling (MSAA).\n */\nexport default class WEBGLRenderbuffer extends WebGLResource<RenderbufferProps> {\n get [Symbol.toStringTag](): string { return 'Renderbuffer'; }\n\n get width(): number { return this.props.width; }\n get height(): number { return this.props.height; }\n get format(): number { return this.props.format; }\n get samples(): number { return this.props.samples; }\n\n static isSupported(gl: WebGLRenderingContext, options?: {format?: number}): boolean {\n return !options.format || isRenderbufferFormatSupported(gl, options.format);\n }\n\n constructor(device: WebGLDevice, props: RenderbufferProps) {\n super(device, props, DEFAULT_RENDERBUFFER_PROPS);\n this._initialize(this.props);\n }\n\n resize(size: {width: number, height: number}): this {\n // Don't resize if width/height haven't changed\n if (size.width !== this.width || size.height !== this.height) {\n Object.assign(this.props, {...size, format: this.format, samples: this.samples});\n this._initialize(this.props);\n }\n return this;\n }\n\n // PRIVATE METHODS\n\n /** Creates and initializes a renderbuffer object's data store */\n protected _initialize(props: Required<RenderbufferProps>) {\n const {format, width, height, samples} = props;\n assert(format, 'Needs format');\n\n this.trackDeallocatedMemory();\n\n this.gl.bindRenderbuffer(GL.RENDERBUFFER, this.handle);\n\n if (samples !== 0 && this.device.isWebGL2) {\n // @ts-expect-error\n this.gl.renderbufferStorageMultisample(GL.RENDERBUFFER, samples, format, width, height);\n } else {\n this.gl.renderbufferStorage(GL.RENDERBUFFER, format, width, height);\n }\n\n this.gl.bindRenderbuffer(GL.RENDERBUFFER, null);\n\n this.trackAllocatedMemory(\n width * height * (samples || 1) * getRenderbufferFormatBytesPerPixel(format)\n );\n\n return this;\n }\n\n // RESOURCE IMPLEMENTATION\n\n _createHandle() {\n return this.gl.createRenderbuffer();\n }\n\n _deleteHandle(): void {\n this.gl.deleteRenderbuffer(this.handle);\n this.trackDeallocatedMemory();\n }\n\n _bindHandle(handle: WEBGLRenderbuffer): void {\n this.gl.bindRenderbuffer(GL.RENDERBUFFER, handle);\n }\n}\n"],"file":"webgl-renderbuffer.js"}