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

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 (367) hide show
  1. package/dist/adapter/converters/device-parameters.js +199 -136
  2. package/dist/adapter/converters/renderbuffer-formats.d.ts +1 -1
  3. package/dist/adapter/converters/renderbuffer-formats.d.ts.map +1 -1
  4. package/dist/adapter/converters/renderbuffer-formats.js +62 -176
  5. package/dist/adapter/converters/sampler-parameters.js +149 -206
  6. package/dist/adapter/converters/texture-formats.d.ts +2 -2
  7. package/dist/adapter/converters/texture-formats.d.ts.map +1 -1
  8. package/dist/adapter/converters/texture-formats.js +437 -890
  9. package/dist/adapter/converters/vertex-formats.js +15 -33
  10. package/dist/adapter/device-helpers/device-features.js +119 -100
  11. package/dist/adapter/device-helpers/device-limits.d.ts +1 -1
  12. package/dist/adapter/device-helpers/device-limits.d.ts.map +1 -1
  13. package/dist/adapter/device-helpers/device-limits.js +88 -86
  14. package/dist/adapter/device-helpers/get-device-info.js +42 -43
  15. package/dist/adapter/device-helpers/is-old-ie.js +9 -6
  16. package/dist/adapter/helpers/attribute-utils.js +50 -74
  17. package/dist/adapter/helpers/get-shader-info.d.ts +9 -0
  18. package/dist/adapter/helpers/get-shader-info.d.ts.map +1 -0
  19. package/dist/adapter/helpers/get-shader-info.js +27 -0
  20. package/dist/adapter/helpers/get-shader-layout.js +307 -296
  21. package/dist/adapter/helpers/parse-shader-compiler-log.d.ts +1 -1
  22. package/dist/adapter/helpers/parse-shader-compiler-log.d.ts.map +1 -1
  23. package/dist/adapter/helpers/parse-shader-compiler-log.js +32 -33
  24. package/dist/adapter/helpers/set-uniform.js +67 -110
  25. package/dist/adapter/helpers/uniforms.js +80 -85
  26. package/dist/adapter/objects/constants-to-keys.js +33 -33
  27. package/dist/adapter/objects/webgl-renderbuffer.d.ts +1 -1
  28. package/dist/adapter/objects/webgl-renderbuffer.d.ts.map +1 -1
  29. package/dist/adapter/objects/webgl-renderbuffer.js +67 -86
  30. package/dist/adapter/objects/webgl-resource.js +213 -205
  31. package/dist/adapter/objects/webgl-vertex-array-object.d.ts +1 -1
  32. package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +1 -1
  33. package/dist/adapter/objects/webgl-vertex-array-object.js +74 -76
  34. package/dist/adapter/resources/webgl-buffer.js +150 -147
  35. package/dist/adapter/resources/webgl-command-buffer.d.ts +5 -5
  36. package/dist/adapter/resources/webgl-command-buffer.d.ts.map +1 -1
  37. package/dist/adapter/resources/webgl-command-buffer.js +39 -55
  38. package/dist/adapter/resources/webgl-command-encoder.js +25 -49
  39. package/dist/adapter/resources/webgl-external-texture.js +91 -1
  40. package/dist/adapter/resources/webgl-framebuffer.d.ts +2 -2
  41. package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -1
  42. package/dist/adapter/resources/webgl-framebuffer.js +231 -258
  43. package/dist/adapter/resources/webgl-render-pass.d.ts +1 -1
  44. package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -1
  45. package/dist/adapter/resources/webgl-render-pass.js +8 -18
  46. package/dist/adapter/resources/webgl-render-pipeline.js +316 -378
  47. package/dist/adapter/resources/webgl-sampler.js +42 -47
  48. package/dist/adapter/resources/webgl-shader.d.ts +1 -2
  49. package/dist/adapter/resources/webgl-shader.d.ts.map +1 -1
  50. package/dist/adapter/resources/webgl-shader.js +58 -68
  51. package/dist/adapter/resources/webgl-texture.d.ts +5 -5
  52. package/dist/adapter/resources/webgl-texture.d.ts.map +1 -1
  53. package/dist/adapter/resources/webgl-texture.js +661 -815
  54. package/dist/adapter/webgl-canvas-context.js +55 -49
  55. package/dist/adapter/webgl-device.js +288 -338
  56. package/dist/bundle.js +1 -2
  57. package/dist/classic/accessor.js +120 -127
  58. package/dist/classic/buffer.d.ts +1 -1
  59. package/dist/classic/buffer.d.ts.map +1 -1
  60. package/dist/classic/buffer.js +325 -356
  61. package/dist/classic/typed-array-utils.d.ts +1 -1
  62. package/dist/classic/typed-array-utils.d.ts.map +1 -1
  63. package/dist/classic/typed-array-utils.js +91 -101
  64. package/dist/context/context/create-browser-context.d.ts +1 -2
  65. package/dist/context/context/create-browser-context.d.ts.map +1 -1
  66. package/dist/context/context/create-browser-context.js +61 -52
  67. package/dist/context/context/create-headless-context.d.ts +1 -1
  68. package/dist/context/context/create-headless-context.d.ts.map +1 -1
  69. package/dist/context/context/create-headless-context.js +26 -33
  70. package/dist/context/context/webgl-checks.js +25 -20
  71. package/dist/context/debug/spector.d.ts +1 -2
  72. package/dist/context/debug/spector.d.ts.map +1 -1
  73. package/dist/context/debug/spector.js +53 -62
  74. package/dist/context/debug/webgl-developer-tools.d.ts +1 -1
  75. package/dist/context/debug/webgl-developer-tools.d.ts.map +1 -1
  76. package/dist/context/debug/webgl-developer-tools.js +106 -93
  77. package/dist/context/parameters/unified-parameter-api.js +91 -55
  78. package/dist/context/parameters/webgl-parameter-tables.d.ts +1 -1
  79. package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -1
  80. package/dist/context/parameters/webgl-parameter-tables.js +462 -423
  81. package/dist/context/polyfill/context-data.js +16 -12
  82. package/dist/context/polyfill/get-parameter-polyfill.js +91 -76
  83. package/dist/context/polyfill/polyfill-context.js +75 -80
  84. package/dist/context/polyfill/polyfill-table.js +133 -139
  85. package/dist/context/polyfill/polyfill-vertex-array-object.js +255 -297
  86. package/dist/context/state-tracker/deep-array-equal.js +16 -18
  87. package/dist/context/state-tracker/track-context-state.js +183 -161
  88. package/dist/context/state-tracker/with-parameters.js +43 -35
  89. package/dist/dist.min.js +1 -0
  90. package/dist/es5/adapter/converters/device-parameters.js +3 -38
  91. package/dist/es5/adapter/converters/device-parameters.js.map +1 -1
  92. package/dist/es5/adapter/converters/renderbuffer-formats.js +2 -14
  93. package/dist/es5/adapter/converters/renderbuffer-formats.js.map +1 -1
  94. package/dist/es5/adapter/converters/sampler-parameters.js +2 -65
  95. package/dist/es5/adapter/converters/sampler-parameters.js.map +1 -1
  96. package/dist/es5/adapter/converters/texture-formats.js +9 -81
  97. package/dist/es5/adapter/converters/texture-formats.js.map +1 -1
  98. package/dist/es5/adapter/converters/vertex-formats.js +0 -12
  99. package/dist/es5/adapter/converters/vertex-formats.js.map +1 -1
  100. package/dist/es5/adapter/device-helpers/device-features.js +6 -40
  101. package/dist/es5/adapter/device-helpers/device-features.js.map +1 -1
  102. package/dist/es5/adapter/device-helpers/device-limits.js +0 -10
  103. package/dist/es5/adapter/device-helpers/device-limits.js.map +1 -1
  104. package/dist/es5/adapter/device-helpers/get-device-info.js +0 -10
  105. package/dist/es5/adapter/device-helpers/get-device-info.js.map +1 -1
  106. package/dist/es5/adapter/device-helpers/is-old-ie.js +0 -1
  107. package/dist/es5/adapter/device-helpers/is-old-ie.js.map +1 -1
  108. package/dist/es5/adapter/helpers/attribute-utils.js +3 -25
  109. package/dist/es5/adapter/helpers/attribute-utils.js.map +1 -1
  110. package/dist/es5/adapter/helpers/get-shader-info.js +31 -0
  111. package/dist/es5/adapter/helpers/get-shader-info.js.map +1 -0
  112. package/dist/es5/adapter/helpers/get-shader-layout.js +23 -101
  113. package/dist/es5/adapter/helpers/get-shader-layout.js.map +1 -1
  114. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js +6 -24
  115. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js.map +1 -1
  116. package/dist/es5/adapter/helpers/set-uniform.js +0 -33
  117. package/dist/es5/adapter/helpers/set-uniform.js.map +1 -1
  118. package/dist/es5/adapter/helpers/uniforms.js +13 -37
  119. package/dist/es5/adapter/helpers/uniforms.js.map +1 -1
  120. package/dist/es5/adapter/objects/constants-to-keys.js +1 -12
  121. package/dist/es5/adapter/objects/constants-to-keys.js.map +1 -1
  122. package/dist/es5/adapter/objects/webgl-renderbuffer.js +5 -33
  123. package/dist/es5/adapter/objects/webgl-renderbuffer.js.map +1 -1
  124. package/dist/es5/adapter/objects/webgl-resource.js +6 -60
  125. package/dist/es5/adapter/objects/webgl-resource.js.map +1 -1
  126. package/dist/es5/adapter/objects/webgl-vertex-array-object.js +7 -35
  127. package/dist/es5/adapter/objects/webgl-vertex-array-object.js.map +1 -1
  128. package/dist/es5/adapter/resources/webgl-buffer.js +20 -66
  129. package/dist/es5/adapter/resources/webgl-buffer.js.map +1 -1
  130. package/dist/es5/adapter/resources/webgl-command-buffer.js +6 -32
  131. package/dist/es5/adapter/resources/webgl-command-buffer.js.map +1 -1
  132. package/dist/es5/adapter/resources/webgl-command-encoder.js +0 -18
  133. package/dist/es5/adapter/resources/webgl-command-encoder.js.map +1 -1
  134. package/dist/es5/adapter/resources/webgl-external-texture.js.map +1 -1
  135. package/dist/es5/adapter/resources/webgl-framebuffer.js +10 -82
  136. package/dist/es5/adapter/resources/webgl-framebuffer.js.map +1 -1
  137. package/dist/es5/adapter/resources/webgl-render-pass.js +2 -19
  138. package/dist/es5/adapter/resources/webgl-render-pass.js.map +1 -1
  139. package/dist/es5/adapter/resources/webgl-render-pipeline.js +24 -133
  140. package/dist/es5/adapter/resources/webgl-render-pipeline.js.map +1 -1
  141. package/dist/es5/adapter/resources/webgl-sampler.js +2 -28
  142. package/dist/es5/adapter/resources/webgl-sampler.js.map +1 -1
  143. package/dist/es5/adapter/resources/webgl-shader.js +13 -52
  144. package/dist/es5/adapter/resources/webgl-shader.js.map +1 -1
  145. package/dist/es5/adapter/resources/webgl-texture.js +137 -291
  146. package/dist/es5/adapter/resources/webgl-texture.js.map +1 -1
  147. package/dist/es5/adapter/webgl-canvas-context.js +0 -24
  148. package/dist/es5/adapter/webgl-canvas-context.js.map +1 -1
  149. package/dist/es5/adapter/webgl-device.js +40 -127
  150. package/dist/es5/adapter/webgl-device.js.map +1 -1
  151. package/dist/es5/bundle.js +0 -1
  152. package/dist/es5/bundle.js.map +1 -1
  153. package/dist/es5/classic/accessor.js +1 -31
  154. package/dist/es5/classic/accessor.js.map +1 -1
  155. package/dist/es5/classic/buffer.js +32 -102
  156. package/dist/es5/classic/buffer.js.map +1 -1
  157. package/dist/es5/classic/typed-array-utils.js +10 -37
  158. package/dist/es5/classic/typed-array-utils.js.map +1 -1
  159. package/dist/es5/context/context/create-browser-context.js +4 -21
  160. package/dist/es5/context/context/create-browser-context.js.map +1 -1
  161. package/dist/es5/context/context/create-headless-context.js +8 -21
  162. package/dist/es5/context/context/create-headless-context.js.map +1 -1
  163. package/dist/es5/context/context/webgl-checks.js +4 -14
  164. package/dist/es5/context/context/webgl-checks.js.map +1 -1
  165. package/dist/es5/context/debug/spector.js +20 -54
  166. package/dist/es5/context/debug/spector.js.map +1 -1
  167. package/dist/es5/context/debug/webgl-developer-tools.js +19 -65
  168. package/dist/es5/context/debug/webgl-developer-tools.js.map +1 -1
  169. package/dist/es5/context/parameters/unified-parameter-api.js +3 -28
  170. package/dist/es5/context/parameters/unified-parameter-api.js.map +1 -1
  171. package/dist/es5/context/parameters/webgl-parameter-tables.js +18 -65
  172. package/dist/es5/context/parameters/webgl-parameter-tables.js.map +1 -1
  173. package/dist/es5/context/polyfill/context-data.js +0 -3
  174. package/dist/es5/context/polyfill/context-data.js.map +1 -1
  175. package/dist/es5/context/polyfill/get-parameter-polyfill.js +0 -12
  176. package/dist/es5/context/polyfill/get-parameter-polyfill.js.map +1 -1
  177. package/dist/es5/context/polyfill/polyfill-context.js +8 -33
  178. package/dist/es5/context/polyfill/polyfill-context.js.map +1 -1
  179. package/dist/es5/context/polyfill/polyfill-table.js +3 -27
  180. package/dist/es5/context/polyfill/polyfill-table.js.map +1 -1
  181. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js +0 -70
  182. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js.map +1 -1
  183. package/dist/es5/context/state-tracker/deep-array-equal.js +0 -5
  184. package/dist/es5/context/state-tracker/deep-array-equal.js.map +1 -1
  185. package/dist/es5/context/state-tracker/track-context-state.js +10 -53
  186. package/dist/es5/context/state-tracker/track-context-state.js.map +1 -1
  187. package/dist/es5/context/state-tracker/with-parameters.js +1 -13
  188. package/dist/es5/context/state-tracker/with-parameters.js.map +1 -1
  189. package/dist/es5/index.js +72 -99
  190. package/dist/es5/index.js.map +1 -1
  191. package/dist/es5/init.js +0 -3
  192. package/dist/es5/init.js.map +1 -1
  193. package/dist/es5/types/webgl.js +0 -1
  194. package/dist/es5/types/webgl.js.map +1 -1
  195. package/dist/es5/types.js.map +1 -1
  196. package/dist/esm/adapter/converters/device-parameters.js +0 -20
  197. package/dist/esm/adapter/converters/device-parameters.js.map +1 -1
  198. package/dist/esm/adapter/converters/renderbuffer-formats.js +0 -4
  199. package/dist/esm/adapter/converters/renderbuffer-formats.js.map +1 -1
  200. package/dist/esm/adapter/converters/sampler-parameters.js +2 -57
  201. package/dist/esm/adapter/converters/sampler-parameters.js.map +1 -1
  202. package/dist/esm/adapter/converters/texture-formats.js +8 -52
  203. package/dist/esm/adapter/converters/texture-formats.js.map +1 -1
  204. package/dist/esm/adapter/converters/vertex-formats.js +0 -9
  205. package/dist/esm/adapter/converters/vertex-formats.js.map +1 -1
  206. package/dist/esm/adapter/device-helpers/device-features.js +2 -19
  207. package/dist/esm/adapter/device-helpers/device-features.js.map +1 -1
  208. package/dist/esm/adapter/device-helpers/device-limits.js +0 -3
  209. package/dist/esm/adapter/device-helpers/device-limits.js.map +1 -1
  210. package/dist/esm/adapter/device-helpers/get-device-info.js +0 -6
  211. package/dist/esm/adapter/device-helpers/get-device-info.js.map +1 -1
  212. package/dist/esm/adapter/device-helpers/is-old-ie.js +2 -1
  213. package/dist/esm/adapter/device-helpers/is-old-ie.js.map +1 -1
  214. package/dist/esm/adapter/helpers/attribute-utils.js +0 -17
  215. package/dist/esm/adapter/helpers/attribute-utils.js.map +1 -1
  216. package/dist/esm/adapter/helpers/get-shader-info.js +25 -0
  217. package/dist/esm/adapter/helpers/get-shader-info.js.map +1 -0
  218. package/dist/esm/adapter/helpers/get-shader-layout.js +2 -48
  219. package/dist/esm/adapter/helpers/get-shader-layout.js.map +1 -1
  220. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js +0 -7
  221. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js.map +1 -1
  222. package/dist/esm/adapter/helpers/set-uniform.js +0 -30
  223. package/dist/esm/adapter/helpers/set-uniform.js.map +1 -1
  224. package/dist/esm/adapter/helpers/uniforms.js +0 -10
  225. package/dist/esm/adapter/helpers/uniforms.js.map +1 -1
  226. package/dist/esm/adapter/objects/constants-to-keys.js +0 -7
  227. package/dist/esm/adapter/objects/constants-to-keys.js.map +1 -1
  228. package/dist/esm/adapter/objects/webgl-renderbuffer.js +2 -18
  229. package/dist/esm/adapter/objects/webgl-renderbuffer.js.map +1 -1
  230. package/dist/esm/adapter/objects/webgl-resource.js +10 -57
  231. package/dist/esm/adapter/objects/webgl-resource.js.map +1 -1
  232. package/dist/esm/adapter/objects/webgl-vertex-array-object.js +5 -15
  233. package/dist/esm/adapter/objects/webgl-vertex-array-object.js.map +1 -1
  234. package/dist/esm/adapter/resources/webgl-buffer.js +12 -40
  235. package/dist/esm/adapter/resources/webgl-buffer.js.map +1 -1
  236. package/dist/esm/adapter/resources/webgl-command-buffer.js +2 -17
  237. package/dist/esm/adapter/resources/webgl-command-buffer.js.map +1 -1
  238. package/dist/esm/adapter/resources/webgl-command-encoder.js +0 -12
  239. package/dist/esm/adapter/resources/webgl-command-encoder.js.map +1 -1
  240. package/dist/esm/adapter/resources/webgl-external-texture.js.map +1 -1
  241. package/dist/esm/adapter/resources/webgl-framebuffer.js +0 -60
  242. package/dist/esm/adapter/resources/webgl-framebuffer.js.map +1 -1
  243. package/dist/esm/adapter/resources/webgl-render-pass.js +1 -8
  244. package/dist/esm/adapter/resources/webgl-render-pass.js.map +1 -1
  245. package/dist/esm/adapter/resources/webgl-render-pipeline.js +0 -89
  246. package/dist/esm/adapter/resources/webgl-render-pipeline.js.map +1 -1
  247. package/dist/esm/adapter/resources/webgl-sampler.js +0 -12
  248. package/dist/esm/adapter/resources/webgl-sampler.js.map +1 -1
  249. package/dist/esm/adapter/resources/webgl-shader.js +2 -16
  250. package/dist/esm/adapter/resources/webgl-shader.js.map +1 -1
  251. package/dist/esm/adapter/resources/webgl-texture.js +36 -154
  252. package/dist/esm/adapter/resources/webgl-texture.js.map +1 -1
  253. package/dist/esm/adapter/webgl-canvas-context.js +0 -14
  254. package/dist/esm/adapter/webgl-canvas-context.js.map +1 -1
  255. package/dist/esm/adapter/webgl-device.js +19 -89
  256. package/dist/esm/adapter/webgl-device.js.map +1 -1
  257. package/dist/esm/bundle.js +0 -1
  258. package/dist/esm/bundle.js.map +1 -1
  259. package/dist/esm/classic/accessor.js +10 -34
  260. package/dist/esm/classic/accessor.js.map +1 -1
  261. package/dist/esm/classic/buffer.js +15 -71
  262. package/dist/esm/classic/buffer.js.map +1 -1
  263. package/dist/esm/classic/typed-array-utils.js +0 -20
  264. package/dist/esm/classic/typed-array-utils.js.map +1 -1
  265. package/dist/esm/context/context/create-browser-context.js +6 -14
  266. package/dist/esm/context/context/create-browser-context.js.map +1 -1
  267. package/dist/esm/context/context/create-headless-context.js +2 -6
  268. package/dist/esm/context/context/create-headless-context.js.map +1 -1
  269. package/dist/esm/context/context/webgl-checks.js +0 -3
  270. package/dist/esm/context/context/webgl-checks.js.map +1 -1
  271. package/dist/esm/context/debug/spector.js +2 -14
  272. package/dist/esm/context/debug/spector.js.map +1 -1
  273. package/dist/esm/context/debug/webgl-developer-tools.js +4 -22
  274. package/dist/esm/context/debug/webgl-developer-tools.js.map +1 -1
  275. package/dist/esm/context/parameters/unified-parameter-api.js +2 -13
  276. package/dist/esm/context/parameters/unified-parameter-api.js.map +1 -1
  277. package/dist/esm/context/parameters/webgl-parameter-tables.js +0 -19
  278. package/dist/esm/context/parameters/webgl-parameter-tables.js.map +1 -1
  279. package/dist/esm/context/polyfill/context-data.js +0 -2
  280. package/dist/esm/context/polyfill/context-data.js.map +1 -1
  281. package/dist/esm/context/polyfill/get-parameter-polyfill.js +0 -5
  282. package/dist/esm/context/polyfill/get-parameter-polyfill.js.map +1 -1
  283. package/dist/esm/context/polyfill/polyfill-context.js +14 -21
  284. package/dist/esm/context/polyfill/polyfill-context.js.map +1 -1
  285. package/dist/esm/context/polyfill/polyfill-table.js +0 -23
  286. package/dist/esm/context/polyfill/polyfill-table.js.map +1 -1
  287. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js +0 -70
  288. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js.map +1 -1
  289. package/dist/esm/context/state-tracker/deep-array-equal.js +0 -4
  290. package/dist/esm/context/state-tracker/deep-array-equal.js.map +1 -1
  291. package/dist/esm/context/state-tracker/track-context-state.js +11 -45
  292. package/dist/esm/context/state-tracker/track-context-state.js.map +1 -1
  293. package/dist/esm/context/state-tracker/with-parameters.js +0 -6
  294. package/dist/esm/context/state-tracker/with-parameters.js.map +1 -1
  295. package/dist/esm/index.js.map +1 -1
  296. package/dist/esm/init.js.map +1 -1
  297. package/dist/esm/types/webgl.js.map +1 -1
  298. package/dist/esm/types.js.map +1 -1
  299. package/dist/index.js +39 -25
  300. package/dist/init.js +1 -2
  301. package/dist/types/webgl.d.ts +20 -20
  302. package/dist/types/webgl.d.ts.map +1 -1
  303. package/dist/types/webgl.js +0 -1
  304. package/dist/types.d.ts +1 -1
  305. package/dist/types.d.ts.map +1 -1
  306. package/dist/types.js +0 -1
  307. package/package.json +8 -8
  308. package/src/adapter/helpers/get-shader-info.ts +37 -0
  309. package/src/adapter/helpers/parse-shader-compiler-log.ts +1 -1
  310. package/src/adapter/resources/webgl-render-pass.ts +1 -1
  311. package/src/adapter/resources/webgl-shader.ts +2 -2
  312. package/src/adapter/webgl-device.ts +1 -1
  313. package/src/context/debug/webgl-developer-tools.ts +0 -1
  314. package/src/types/webgl.ts +4 -4
  315. package/dist/adapter/converters/device-parameters.js.map +0 -1
  316. package/dist/adapter/converters/renderbuffer-formats.js.map +0 -1
  317. package/dist/adapter/converters/sampler-parameters.js.map +0 -1
  318. package/dist/adapter/converters/texture-formats.js.map +0 -1
  319. package/dist/adapter/converters/vertex-formats.js.map +0 -1
  320. package/dist/adapter/device-helpers/device-features.js.map +0 -1
  321. package/dist/adapter/device-helpers/device-limits.js.map +0 -1
  322. package/dist/adapter/device-helpers/get-device-info.js.map +0 -1
  323. package/dist/adapter/device-helpers/is-old-ie.js.map +0 -1
  324. package/dist/adapter/helpers/attribute-utils.js.map +0 -1
  325. package/dist/adapter/helpers/get-shader-layout.js.map +0 -1
  326. package/dist/adapter/helpers/parse-shader-compiler-log.js.map +0 -1
  327. package/dist/adapter/helpers/set-uniform.js.map +0 -1
  328. package/dist/adapter/helpers/uniforms.js.map +0 -1
  329. package/dist/adapter/objects/constants-to-keys.js.map +0 -1
  330. package/dist/adapter/objects/webgl-renderbuffer.js.map +0 -1
  331. package/dist/adapter/objects/webgl-resource.js.map +0 -1
  332. package/dist/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  333. package/dist/adapter/resources/webgl-buffer.js.map +0 -1
  334. package/dist/adapter/resources/webgl-command-buffer.js.map +0 -1
  335. package/dist/adapter/resources/webgl-command-encoder.js.map +0 -1
  336. package/dist/adapter/resources/webgl-external-texture.js.map +0 -1
  337. package/dist/adapter/resources/webgl-framebuffer.js.map +0 -1
  338. package/dist/adapter/resources/webgl-render-pass.js.map +0 -1
  339. package/dist/adapter/resources/webgl-render-pipeline.js.map +0 -1
  340. package/dist/adapter/resources/webgl-sampler.js.map +0 -1
  341. package/dist/adapter/resources/webgl-shader.js.map +0 -1
  342. package/dist/adapter/resources/webgl-texture.js.map +0 -1
  343. package/dist/adapter/webgl-canvas-context.js.map +0 -1
  344. package/dist/adapter/webgl-device.js.map +0 -1
  345. package/dist/bundle.js.map +0 -1
  346. package/dist/classic/accessor.js.map +0 -1
  347. package/dist/classic/buffer.js.map +0 -1
  348. package/dist/classic/typed-array-utils.js.map +0 -1
  349. package/dist/context/context/create-browser-context.js.map +0 -1
  350. package/dist/context/context/create-headless-context.js.map +0 -1
  351. package/dist/context/context/webgl-checks.js.map +0 -1
  352. package/dist/context/debug/spector.js.map +0 -1
  353. package/dist/context/debug/webgl-developer-tools.js.map +0 -1
  354. package/dist/context/parameters/unified-parameter-api.js.map +0 -1
  355. package/dist/context/parameters/webgl-parameter-tables.js.map +0 -1
  356. package/dist/context/polyfill/context-data.js.map +0 -1
  357. package/dist/context/polyfill/get-parameter-polyfill.js.map +0 -1
  358. package/dist/context/polyfill/polyfill-context.js.map +0 -1
  359. package/dist/context/polyfill/polyfill-table.js.map +0 -1
  360. package/dist/context/polyfill/polyfill-vertex-array-object.js.map +0 -1
  361. package/dist/context/state-tracker/deep-array-equal.js.map +0 -1
  362. package/dist/context/state-tracker/track-context-state.js.map +0 -1
  363. package/dist/context/state-tracker/with-parameters.js.map +0 -1
  364. package/dist/index.js.map +0 -1
  365. package/dist/init.js.map +0 -1
  366. package/dist/types/webgl.js.map +0 -1
  367. package/dist/types.js.map +0 -1
@@ -1,17 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.setUniform = setUniform;
9
-
10
8
  var _constants = _interopRequireDefault(require("@luma.gl/constants"));
11
-
12
9
  function setUniform(gl, location, type, value) {
13
10
  var gl2 = gl;
14
-
15
11
  if (typeof value === 'number') {
16
12
  switch (type) {
17
13
  case _constants.default.SAMPLER_2D:
@@ -32,94 +28,65 @@ function setUniform(gl, location, type, value) {
32
28
  return gl.uniform1i(location, value);
33
29
  }
34
30
  }
35
-
36
31
  if (value === true) {
37
32
  value = 1;
38
33
  }
39
-
40
34
  if (value === false) {
41
35
  value = 1;
42
36
  }
43
-
44
37
  var arrayValue = typeof value === 'number' ? [value] : value;
45
-
46
38
  switch (type) {
47
39
  case _constants.default.FLOAT:
48
40
  return gl.uniform1fv(location, arrayValue);
49
-
50
41
  case _constants.default.FLOAT_VEC2:
51
42
  return gl.uniform2fv(location, arrayValue);
52
-
53
43
  case _constants.default.FLOAT_VEC3:
54
44
  return gl.uniform3fv(location, arrayValue);
55
-
56
45
  case _constants.default.FLOAT_VEC4:
57
46
  return gl.uniform4fv(location, arrayValue);
58
-
59
47
  case _constants.default.INT:
60
48
  return gl.uniform1iv(location, arrayValue);
61
-
62
49
  case _constants.default.INT_VEC2:
63
50
  return gl.uniform2iv(location, arrayValue);
64
-
65
51
  case _constants.default.INT_VEC3:
66
52
  return gl.uniform3iv(location, arrayValue);
67
-
68
53
  case _constants.default.INT_VEC4:
69
54
  return gl.uniform4iv(location, arrayValue);
70
-
71
55
  case _constants.default.BOOL:
72
56
  return gl.uniform1iv(location, arrayValue);
73
-
74
57
  case _constants.default.BOOL_VEC2:
75
58
  return gl.uniform2iv(location, arrayValue);
76
-
77
59
  case _constants.default.BOOL_VEC3:
78
60
  return gl.uniform3iv(location, arrayValue);
79
-
80
61
  case _constants.default.BOOL_VEC4:
81
62
  return gl.uniform4iv(location, arrayValue);
82
-
83
63
  case _constants.default.UNSIGNED_INT:
84
64
  return gl2.uniform1uiv(location, arrayValue, 1);
85
-
86
65
  case _constants.default.UNSIGNED_INT_VEC2:
87
66
  return gl2.uniform2uiv(location, arrayValue, 2);
88
-
89
67
  case _constants.default.UNSIGNED_INT_VEC3:
90
68
  return gl2.uniform3uiv(location, arrayValue, 3);
91
-
92
69
  case _constants.default.UNSIGNED_INT_VEC4:
93
70
  return gl2.uniform4uiv(location, arrayValue, 4);
94
-
95
71
  case _constants.default.FLOAT_MAT2:
96
72
  return gl.uniformMatrix2fv(location, false, arrayValue);
97
-
98
73
  case _constants.default.FLOAT_MAT3:
99
74
  return gl.uniformMatrix3fv(location, false, arrayValue);
100
-
101
75
  case _constants.default.FLOAT_MAT4:
102
76
  return gl.uniformMatrix4fv(location, false, arrayValue);
103
-
104
77
  case _constants.default.FLOAT_MAT2x3:
105
78
  return gl2.uniformMatrix2x3fv(location, false, arrayValue);
106
-
107
79
  case _constants.default.FLOAT_MAT2x4:
108
80
  return gl2.uniformMatrix2x4fv(location, false, arrayValue);
109
-
110
81
  case _constants.default.FLOAT_MAT3x2:
111
82
  return gl2.uniformMatrix3x2fv(location, false, arrayValue);
112
-
113
83
  case _constants.default.FLOAT_MAT3x4:
114
84
  return gl2.uniformMatrix3x4fv(location, false, arrayValue);
115
-
116
85
  case _constants.default.FLOAT_MAT4x2:
117
86
  return gl2.uniformMatrix4x2fv(location, false, arrayValue);
118
-
119
87
  case _constants.default.FLOAT_MAT4x3:
120
88
  return gl2.uniformMatrix4x3fv(location, false, arrayValue);
121
89
  }
122
-
123
90
  throw new Error('Illegal uniform');
124
91
  }
125
92
  //# sourceMappingURL=set-uniform.js.map
@@ -1 +1 @@
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: return 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
+ {"version":3,"file":"set-uniform.js","names":["_constants","_interopRequireDefault","require","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"],"sources":["../../../../src/adapter/helpers/set-uniform.ts"],"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: return 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"],"mappings":"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"}
@@ -1,86 +1,66 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.isSamplerUniform = isSamplerUniform;
9
- exports.decodeUniformType = decodeUniformType;
10
7
  exports.decodeAttributeType = decodeAttributeType;
8
+ exports.decodeUniformType = decodeUniformType;
11
9
  exports.decomposeCompositeGLType = decomposeCompositeGLType;
12
10
  exports.getCompositeGLType = getCompositeGLType;
13
-
11
+ exports.isSamplerUniform = isSamplerUniform;
14
12
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
14
  var _constants = _interopRequireDefault(require("@luma.gl/constants"));
19
-
20
15
  var _COMPOSITE_GL_TYPES;
21
-
22
16
  function isSamplerUniform(type) {
23
17
  return SAMPLER_TYPES.includes(type);
24
18
  }
25
-
26
19
  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
20
  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
21
  function decodeUniformType(uniformType) {
30
22
  var typeAndSize = COMPOSITE_GL_TYPES[uniformType];
31
-
32
23
  if (!typeAndSize) {
33
24
  throw new Error('uniform');
34
25
  }
35
-
36
26
  var _typeAndSize = (0, _slicedToArray2.default)(typeAndSize, 4),
37
- glType = _typeAndSize[0],
38
- components = _typeAndSize[1],
39
- format = _typeAndSize[3];
40
-
27
+ glType = _typeAndSize[0],
28
+ components = _typeAndSize[1],
29
+ format = _typeAndSize[3];
41
30
  return {
42
31
  format: format,
43
32
  components: components,
44
33
  glType: glType
45
34
  };
46
35
  }
47
-
48
36
  function decodeAttributeType(attributeType) {
49
37
  var typeAndSize = COMPOSITE_GL_TYPES[attributeType];
50
-
51
38
  if (!typeAndSize) {
52
39
  throw new Error('attribute');
53
40
  }
54
-
55
41
  var _typeAndSize2 = (0, _slicedToArray2.default)(typeAndSize, 5),
56
- glType = _typeAndSize2[0],
57
- components = _typeAndSize2[1],
58
- format = _typeAndSize2[4];
59
-
42
+ glType = _typeAndSize2[0],
43
+ components = _typeAndSize2[1],
44
+ format = _typeAndSize2[4];
60
45
  return {
61
46
  format: format,
62
47
  components: components,
63
48
  glType: glType
64
49
  };
65
50
  }
66
-
67
51
  function decomposeCompositeGLType(compositeGLType) {
68
52
  var typeAndSize = COMPOSITE_GL_TYPES[compositeGLType];
69
-
70
53
  if (!typeAndSize) {
71
54
  return null;
72
55
  }
73
-
74
56
  var _typeAndSize3 = (0, _slicedToArray2.default)(typeAndSize, 2),
75
- type = _typeAndSize3[0],
76
- components = _typeAndSize3[1];
77
-
57
+ type = _typeAndSize3[0],
58
+ components = _typeAndSize3[1];
78
59
  return {
79
60
  type: type,
80
61
  components: components
81
62
  };
82
63
  }
83
-
84
64
  function getCompositeGLType(type, components) {
85
65
  switch (type) {
86
66
  case _constants.default.BYTE:
@@ -89,16 +69,13 @@ function getCompositeGLType(type, components) {
89
69
  case _constants.default.UNSIGNED_SHORT:
90
70
  type = _constants.default.FLOAT;
91
71
  break;
92
-
93
72
  default:
94
73
  }
95
-
96
74
  for (var glType in COMPOSITE_GL_TYPES) {
97
75
  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
-
76
+ compType = _COMPOSITE_GL_TYPES$g[0],
77
+ compComponents = _COMPOSITE_GL_TYPES$g[1],
78
+ name = _COMPOSITE_GL_TYPES$g[2];
102
79
  if (compType === type && compComponents === components) {
103
80
  return {
104
81
  glType: Number(glType),
@@ -106,7 +83,6 @@ function getCompositeGLType(type, components) {
106
83
  };
107
84
  }
108
85
  }
109
-
110
86
  return null;
111
87
  }
112
88
  //# sourceMappingURL=uniforms.js.map
@@ -1 +1 @@
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":"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","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
+ {"version":3,"file":"uniforms.js","names":["_constants","_interopRequireDefault","require","_COMPOSITE_GL_TYPES","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","_defineProperty2","default","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","_typeAndSize","_slicedToArray2","glType","components","format","decodeAttributeType","attributeType","_typeAndSize2","decomposeCompositeGLType","compositeGLType","_typeAndSize3","getCompositeGLType","BYTE","UNSIGNED_BYTE","SHORT","UNSIGNED_SHORT","_COMPOSITE_GL_TYPES$g","compType","compComponents","name","Number"],"sources":["../../../../src/adapter/helpers/uniforms.ts"],"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"],"mappings":"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"}
@@ -3,52 +3,41 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getKeyValue = getKeyValue;
7
6
  exports.getKey = getKey;
8
7
  exports.getKeyType = getKeyType;
9
-
8
+ exports.getKeyValue = getKeyValue;
10
9
  var _api = require("@luma.gl/api");
11
-
12
10
  function getKeyValue(gl, name) {
13
11
  if (typeof name !== 'string') {
14
12
  return name;
15
13
  }
16
-
17
14
  var number = Number(name);
18
-
19
15
  if (!isNaN(number)) {
20
16
  return number;
21
17
  }
22
-
23
18
  name = name.replace(/^.*\./, '');
24
19
  var value = gl[name];
25
20
  (0, _api.assert)(value !== undefined, "Accessing undefined constant GL.".concat(name));
26
21
  return value;
27
22
  }
28
-
29
23
  function getKey(gl, value) {
30
24
  gl = gl.gl || gl;
31
25
  value = Number(value);
32
-
33
26
  for (var key in gl) {
34
27
  if (gl[key] === value) {
35
28
  return "GL.".concat(key);
36
29
  }
37
30
  }
38
-
39
31
  return String(value);
40
32
  }
41
-
42
33
  function getKeyType(gl, value) {
43
34
  (0, _api.assert)(value !== undefined, 'undefined key');
44
35
  value = Number(value);
45
-
46
36
  for (var key in gl) {
47
37
  if (gl[key] === value) {
48
38
  return "GL.".concat(key);
49
39
  }
50
40
  }
51
-
52
41
  return String(value);
53
42
  }
54
43
  //# sourceMappingURL=constants-to-keys.js.map
@@ -1 +1 @@
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;AAEA,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;AAEpB,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;AAEpB,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 // @ts-ignore expect-error depends on settings\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-ignore expect-error depends on settings \n gl = gl.gl || gl;\n value = Number(value);\n for (const key in gl) {\n // @ts-ignore expect-error depends on settings\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 // @ts-ignore expect-error depends on settings\n if (gl[key] === value) {\n return `GL.${key}`;\n }\n }\n return String(value);\n}\n"],"file":"constants-to-keys.js"}
1
+ {"version":3,"file":"constants-to-keys.js","names":["_api","require","getKeyValue","gl","name","number","Number","isNaN","replace","value","assert","undefined","concat","getKey","key","String","getKeyType"],"sources":["../../../../src/adapter/objects/constants-to-keys.ts"],"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 // @ts-ignore expect-error depends on settings\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-ignore expect-error depends on settings \n gl = gl.gl || gl;\n value = Number(value);\n for (const key in gl) {\n // @ts-ignore expect-error depends on settings\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 // @ts-ignore expect-error depends on settings\n if (gl[key] === value) {\n return `GL.${key}`;\n }\n }\n return String(value);\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AAIO,SAASC,WAAWA,CAACC,EAAyB,EAAEC,IAAiB,EAAM;EAE5E,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IAC5B,OAAOA,IAAI;EACb;EAGA,IAAMC,MAAM,GAAGC,MAAM,CAACF,IAAI,CAAC;EAC3B,IAAI,CAACG,KAAK,CAACF,MAAM,CAAC,EAAE;IAClB,OAAOA,MAAM;EACf;EAGAD,IAAI,GAAGA,IAAI,CAACI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;EAEhC,IAAMC,KAAK,GAAGN,EAAE,CAACC,IAAI,CAAC;EACtB,IAAAM,WAAM,EAACD,KAAK,KAAKE,SAAS,qCAAAC,MAAA,CAAqCR,IAAI,EAAG;EACtE,OAAOK,KAAK;AACd;AAEO,SAASI,MAAMA,CAACV,EAAyB,EAAEM,KAAU,EAAU;EAEpEN,EAAE,GAAGA,EAAE,CAACA,EAAE,IAAIA,EAAE;EAChBM,KAAK,GAAGH,MAAM,CAACG,KAAK,CAAC;EACrB,KAAK,IAAMK,GAAG,IAAIX,EAAE,EAAE;IAEpB,IAAIA,EAAE,CAACW,GAAG,CAAC,KAAKL,KAAK,EAAE;MACrB,aAAAG,MAAA,CAAaE,GAAG;IAClB;EACF;EACA,OAAOC,MAAM,CAACN,KAAK,CAAC;AACtB;AAEO,SAASO,UAAUA,CAACb,EAAyB,EAAEM,KAAU,EAAU;EACxE,IAAAC,WAAM,EAACD,KAAK,KAAKE,SAAS,EAAE,eAAe,CAAC;EAC5CF,KAAK,GAAGH,MAAM,CAACG,KAAK,CAAC;EACrB,KAAK,IAAMK,GAAG,IAAIX,EAAE,EAAE;IAEpB,IAAIA,EAAE,CAACW,GAAG,CAAC,KAAKL,KAAK,EAAE;MACrB,aAAAG,MAAA,CAAaE,GAAG;IAClB;EACF;EACA,OAAOC,MAAM,CAACN,KAAK,CAAC;AACtB"}
@@ -1,40 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
11
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
14
  var _api = require("@luma.gl/api");
23
-
24
15
  var _constants = _interopRequireDefault(require("@luma.gl/constants"));
25
-
26
16
  var _webglResource = _interopRequireDefault(require("./webgl-resource"));
27
-
28
17
  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
-
18
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
34
20
  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
21
  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
22
  var DEFAULT_RENDERBUFFER_PROPS = {
39
23
  id: undefined,
40
24
  handle: undefined,
@@ -44,23 +28,16 @@ var DEFAULT_RENDERBUFFER_PROPS = {
44
28
  height: 1,
45
29
  samples: 0
46
30
  };
47
-
48
31
  var WEBGLRenderbuffer = function (_WebGLResource, _Symbol$toStringTag) {
49
32
  (0, _inherits2.default)(WEBGLRenderbuffer, _WebGLResource);
50
-
51
33
  var _super = _createSuper(WEBGLRenderbuffer);
52
-
53
34
  function WEBGLRenderbuffer(device, props) {
54
35
  var _this;
55
-
56
36
  (0, _classCallCheck2.default)(this, WEBGLRenderbuffer);
57
37
  _this = _super.call(this, device, props, DEFAULT_RENDERBUFFER_PROPS);
58
-
59
38
  _this._initialize(_this.props);
60
-
61
39
  return _this;
62
40
  }
63
-
64
41
  (0, _createClass2.default)(WEBGLRenderbuffer, [{
65
42
  key: _Symbol$toStringTag,
66
43
  get: function get() {
@@ -94,29 +71,25 @@ var WEBGLRenderbuffer = function (_WebGLResource, _Symbol$toStringTag) {
94
71
  format: this.format,
95
72
  samples: this.samples
96
73
  }));
97
-
98
74
  this._initialize(this.props);
99
75
  }
100
-
101
76
  return this;
102
77
  }
103
78
  }, {
104
79
  key: "_initialize",
105
80
  value: function _initialize(props) {
106
81
  var format = props.format,
107
- width = props.width,
108
- height = props.height,
109
- samples = props.samples;
82
+ width = props.width,
83
+ height = props.height,
84
+ samples = props.samples;
110
85
  (0, _api.assert)(format, 'Needs format');
111
86
  this.trackDeallocatedMemory();
112
87
  this.gl.bindRenderbuffer(_constants.default.RENDERBUFFER, this.handle);
113
-
114
88
  if (samples !== 0 && this.device.isWebGL2) {
115
89
  this.gl.renderbufferStorageMultisample(_constants.default.RENDERBUFFER, samples, format, width, height);
116
90
  } else {
117
91
  this.gl.renderbufferStorage(_constants.default.RENDERBUFFER, format, width, height);
118
92
  }
119
-
120
93
  this.gl.bindRenderbuffer(_constants.default.RENDERBUFFER, null);
121
94
  this.trackAllocatedMemory(width * height * (samples || 1) * (0, _renderbufferFormats.getRenderbufferFormatBytesPerPixel)(format));
122
95
  return this;
@@ -145,6 +118,5 @@ var WEBGLRenderbuffer = function (_WebGLResource, _Symbol$toStringTag) {
145
118
  }]);
146
119
  return WEBGLRenderbuffer;
147
120
  }(_webglResource.default, Symbol.toStringTag);
148
-
149
121
  exports.default = WEBGLRenderbuffer;
150
122
  //# sourceMappingURL=webgl-renderbuffer.js.map
@@ -1 +1 @@
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 override 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 override _createHandle() {\n return this.gl.createRenderbuffer();\n }\n\n override _deleteHandle(): void {\n this.gl.deleteRenderbuffer(this.handle);\n this.trackDeallocatedMemory();\n }\n\n override _bindHandle(handle: WEBGLRenderbuffer): void {\n this.gl.bindRenderbuffer(GL.RENDERBUFFER, handle);\n }\n}\n"],"file":"webgl-renderbuffer.js"}
1
+ {"version":3,"file":"webgl-renderbuffer.js","names":["_api","require","_constants","_interopRequireDefault","_webglResource","_renderbufferFormats","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","DEFAULT_RENDERBUFFER_PROPS","id","undefined","handle","userData","format","width","height","samples","WEBGLRenderbuffer","_WebGLResource","_Symbol$toStringTag","_inherits2","_super","device","props","_this","_classCallCheck2","_initialize","_createClass2","get","value","resize","size","assign","assert","trackDeallocatedMemory","gl","bindRenderbuffer","GL","RENDERBUFFER","isWebGL2","renderbufferStorageMultisample","renderbufferStorage","trackAllocatedMemory","getRenderbufferFormatBytesPerPixel","_createHandle","createRenderbuffer","_deleteHandle","deleteRenderbuffer","_bindHandle","isSupported","options","isRenderbufferFormatSupported","WebGLResource","Symbol","toStringTag","exports"],"sources":["../../../../src/adapter/objects/webgl-renderbuffer.ts"],"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 override 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 override _createHandle() {\n return this.gl.createRenderbuffer();\n }\n\n override _deleteHandle(): void {\n this.gl.deleteRenderbuffer(this.handle);\n this.trackDeallocatedMemory();\n }\n\n override _bindHandle(handle: WEBGLRenderbuffer): void {\n this.gl.bindRenderbuffer(GL.RENDERBUFFER, handle);\n }\n}\n"],"mappings":"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"}