@luma.gl/webgl 9.0.0-alpha.14 → 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,72 +1,41 @@
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 _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
-
20
13
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
21
-
22
14
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
23
-
24
15
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
25
-
26
16
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
27
-
28
17
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
29
-
30
18
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
31
-
32
19
  var _api = require("@luma.gl/api");
33
-
34
20
  var _constants = _interopRequireDefault(require("@luma.gl/constants"));
35
-
36
21
  var _withParameters = require("../../context/state-tracker/with-parameters");
37
-
38
22
  var _textureFormats = require("../converters/texture-formats");
39
-
40
23
  var _samplerParameters = require("../converters/sampler-parameters");
41
-
42
24
  var _webglBuffer = _interopRequireDefault(require("./webgl-buffer"));
43
-
44
25
  var _webglSampler = _interopRequireDefault(require("./webgl-sampler"));
45
-
46
26
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
47
-
48
27
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
49
-
50
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
51
-
52
- 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; }
53
-
54
- 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; }
55
-
28
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
29
+ 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; }
30
+ 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; }
56
31
  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); }; }
57
-
58
32
  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; } }
59
-
60
33
  var WEBGLTexture = function (_Texture) {
61
34
  (0, _inherits2.default)(WEBGLTexture, _Texture);
62
-
63
35
  var _super = _createSuper(WEBGLTexture);
64
-
65
36
  function WEBGLTexture(device, props) {
66
37
  var _this$props;
67
-
68
38
  var _this;
69
-
70
39
  (0, _classCallCheck2.default)(this, WEBGLTexture);
71
40
  _this = _super.call(this, device, _objectSpread({
72
41
  format: _constants.default.RGBA
@@ -98,19 +67,15 @@ var WEBGLTexture = function (_Texture) {
98
67
  });
99
68
  _this.target = getWebGLTextureTarget(_this.props);
100
69
  _this.loaded = false;
101
-
102
70
  if (typeof ((_this$props = _this.props) === null || _this$props === void 0 ? void 0 : _this$props.data) === 'string') {
103
71
  Object.assign(_this.props, {
104
72
  data: (0, _api.loadImage)(_this.props.data)
105
73
  });
106
74
  }
107
-
108
75
  _this.initialize(_this.props);
109
-
110
76
  Object.seal((0, _assertThisInitialized2.default)(_this));
111
77
  return _this;
112
78
  }
113
-
114
79
  (0, _createClass2.default)(WEBGLTexture, [{
115
80
  key: "destroy",
116
81
  value: function destroy() {
@@ -130,15 +95,11 @@ var WEBGLTexture = function (_Texture) {
130
95
  key: "initialize",
131
96
  value: function initialize() {
132
97
  var _this2 = this;
133
-
134
98
  var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
135
-
136
99
  if (this.props.dimension === 'cube') {
137
100
  return this.initializeCube(props);
138
101
  }
139
-
140
102
  var data = props.data;
141
-
142
103
  if (data instanceof Promise) {
143
104
  data.then(function (resolvedImageData) {
144
105
  return _this2.initialize(Object.assign({}, props, {
@@ -148,9 +109,7 @@ var WEBGLTexture = function (_Texture) {
148
109
  });
149
110
  return this;
150
111
  }
151
-
152
112
  var isVideo = typeof HTMLVideoElement !== 'undefined' && data instanceof HTMLVideoElement;
153
-
154
113
  if (isVideo && data.readyState < HTMLVideoElement.HAVE_METADATA) {
155
114
  this._video = null;
156
115
  data.addEventListener('loadeddata', function () {
@@ -158,33 +117,29 @@ var WEBGLTexture = function (_Texture) {
158
117
  });
159
118
  return this;
160
119
  }
161
-
162
120
  var _props$parameters = props.parameters,
163
- parameters = _props$parameters === void 0 ? {} : _props$parameters;
121
+ parameters = _props$parameters === void 0 ? {} : _props$parameters;
164
122
  var _props$pixels = props.pixels,
165
- pixels = _props$pixels === void 0 ? null : _props$pixels,
166
- _props$recreate = props.recreate,
167
- recreate = _props$recreate === void 0 ? false : _props$recreate,
168
- _props$pixelStore = props.pixelStore,
169
- pixelStore = _props$pixelStore === void 0 ? {} : _props$pixelStore,
170
- _props$textureUnit = props.textureUnit,
171
- textureUnit = _props$textureUnit === void 0 ? undefined : _props$textureUnit;
172
-
123
+ pixels = _props$pixels === void 0 ? null : _props$pixels,
124
+ _props$recreate = props.recreate,
125
+ recreate = _props$recreate === void 0 ? false : _props$recreate,
126
+ _props$pixelStore = props.pixelStore,
127
+ pixelStore = _props$pixelStore === void 0 ? {} : _props$pixelStore,
128
+ _props$textureUnit = props.textureUnit,
129
+ textureUnit = _props$textureUnit === void 0 ? undefined : _props$textureUnit;
173
130
  if (!data) {
174
131
  data = pixels;
175
132
  }
176
-
177
133
  var width = props.width,
178
- height = props.height,
179
- dataFormat = props.dataFormat,
180
- type = props.type,
181
- _props$compressed = props.compressed,
182
- compressed = _props$compressed === void 0 ? false : _props$compressed,
183
- _props$mipmaps = props.mipmaps,
184
- mipmaps = _props$mipmaps === void 0 ? true : _props$mipmaps;
134
+ height = props.height,
135
+ dataFormat = props.dataFormat,
136
+ type = props.type,
137
+ _props$compressed = props.compressed,
138
+ compressed = _props$compressed === void 0 ? false : _props$compressed,
139
+ _props$mipmaps = props.mipmaps,
140
+ mipmaps = _props$mipmaps === void 0 ? true : _props$mipmaps;
185
141
  var _props$depth = props.depth,
186
- depth = _props$depth === void 0 ? 0 : _props$depth;
187
-
142
+ depth = _props$depth === void 0 ? 0 : _props$depth;
188
143
  var _this$_deduceParamete = this._deduceParameters({
189
144
  format: props.format,
190
145
  type: type,
@@ -194,7 +149,6 @@ var WEBGLTexture = function (_Texture) {
194
149
  width: width,
195
150
  height: height
196
151
  });
197
-
198
152
  width = _this$_deduceParamete.width;
199
153
  height = _this$_deduceParamete.height;
200
154
  compressed = _this$_deduceParamete.compressed;
@@ -208,18 +162,14 @@ var WEBGLTexture = function (_Texture) {
208
162
  this.type = type;
209
163
  this.dataFormat = dataFormat;
210
164
  this.textureUnit = textureUnit;
211
-
212
165
  if (Number.isFinite(this.textureUnit)) {
213
166
  this.gl.activeTexture(_constants.default.TEXTURE0 + this.textureUnit);
214
167
  this.gl.bindTexture(this.target, this.handle);
215
168
  }
216
-
217
169
  if (mipmaps && this.device.isWebGL1 && isNPOT(this.width, this.height)) {
218
170
  _api.log.warn("texture: ".concat(this, " is Non-Power-Of-Two, disabling mipmaps"))();
219
-
220
171
  mipmaps = false;
221
172
  }
222
-
223
173
  this.mipmaps = mipmaps;
224
174
  this.setImageData({
225
175
  data: data,
@@ -233,17 +183,13 @@ var WEBGLTexture = function (_Texture) {
233
183
  compressed: compressed
234
184
  });
235
185
  this.setSampler(props.sampler);
236
-
237
186
  this._setSamplerParameters(parameters);
238
-
239
187
  if (mipmaps) {
240
188
  this.generateMipmap();
241
189
  }
242
-
243
190
  if (recreate) {
244
191
  this.data = data;
245
192
  }
246
-
247
193
  if (isVideo) {
248
194
  this._video = {
249
195
  video: data,
@@ -251,27 +197,22 @@ var WEBGLTexture = function (_Texture) {
251
197
  lastTime: data.readyState >= HTMLVideoElement.HAVE_CURRENT_DATA ? data.currentTime : -1
252
198
  };
253
199
  }
254
-
255
200
  return this;
256
201
  }
257
202
  }, {
258
203
  key: "initializeCube",
259
204
  value: function initializeCube(props) {
260
205
  var _this3 = this;
261
-
262
206
  var _props$mipmaps2 = props.mipmaps,
263
- mipmaps = _props$mipmaps2 === void 0 ? true : _props$mipmaps2,
264
- _props$parameters2 = props.parameters,
265
- parameters = _props$parameters2 === void 0 ? {} : _props$parameters2;
207
+ mipmaps = _props$mipmaps2 === void 0 ? true : _props$mipmaps2,
208
+ _props$parameters2 = props.parameters,
209
+ parameters = _props$parameters2 === void 0 ? {} : _props$parameters2;
266
210
  this.setCubeMapImageData(props).then(function () {
267
211
  _this3.loaded = true;
268
-
269
212
  if (mipmaps) {
270
213
  _this3.generateMipmap(props);
271
214
  }
272
-
273
215
  _this3.setSampler(props.sampler);
274
-
275
216
  _this3._setSamplerParameters(parameters);
276
217
  });
277
218
  return this;
@@ -281,7 +222,6 @@ var WEBGLTexture = function (_Texture) {
281
222
  value: function setSampler() {
282
223
  var sampler = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
283
224
  var samplerProps;
284
-
285
225
  if (sampler instanceof _webglSampler.default) {
286
226
  this.sampler = sampler;
287
227
  samplerProps = sampler.props;
@@ -289,21 +229,17 @@ var WEBGLTexture = function (_Texture) {
289
229
  this.sampler = new _webglSampler.default(this.device, sampler);
290
230
  samplerProps = sampler;
291
231
  }
292
-
293
232
  var parameters = (0, _samplerParameters.convertSamplerParametersToWebGL)(samplerProps);
294
-
295
233
  this._setSamplerParameters(parameters);
296
-
297
234
  return this;
298
235
  }
299
236
  }, {
300
237
  key: "resize",
301
238
  value: function resize(options) {
302
239
  var height = options.height,
303
- width = options.width,
304
- _options$mipmaps = options.mipmaps,
305
- mipmaps = _options$mipmaps === void 0 ? false : _options$mipmaps;
306
-
240
+ width = options.width,
241
+ _options$mipmaps = options.mipmaps,
242
+ mipmaps = _options$mipmaps === void 0 ? false : _options$mipmaps;
307
243
  if (width !== this.width || height !== this.height) {
308
244
  return this.initialize({
309
245
  width: width,
@@ -314,7 +250,6 @@ var WEBGLTexture = function (_Texture) {
314
250
  mipmaps: mipmaps
315
251
  });
316
252
  }
317
-
318
253
  return this;
319
254
  }
320
255
  }, {
@@ -322,23 +257,19 @@ var WEBGLTexture = function (_Texture) {
322
257
  value: function update() {
323
258
  if (this._video) {
324
259
  var _this$_video = this._video,
325
- video = _this$_video.video,
326
- parameters = _this$_video.parameters,
327
- lastTime = _this$_video.lastTime;
328
-
260
+ video = _this$_video.video,
261
+ parameters = _this$_video.parameters,
262
+ lastTime = _this$_video.lastTime;
329
263
  if (lastTime === video.currentTime || video.readyState < HTMLVideoElement.HAVE_CURRENT_DATA) {
330
264
  return;
331
265
  }
332
-
333
266
  this.setSubImageData({
334
267
  data: video,
335
268
  parameters: parameters
336
269
  });
337
-
338
270
  if (this.mipmaps) {
339
271
  this.generateMipmap();
340
272
  }
341
-
342
273
  this._video.lastTime = video.currentTime;
343
274
  }
344
275
  }
@@ -346,15 +277,11 @@ var WEBGLTexture = function (_Texture) {
346
277
  key: "generateMipmap",
347
278
  value: function generateMipmap() {
348
279
  var _this4 = this;
349
-
350
280
  var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
351
-
352
281
  if (this.device.isWebGL1 && isNPOT(this.width, this.height)) {
353
282
  _api.log.warn("texture: ".concat(this, " is Non-Power-Of-Two, disabling mipmaping"))();
354
-
355
283
  return this;
356
284
  }
357
-
358
285
  this.mipmaps = true;
359
286
  this.gl.bindTexture(this.target, this.handle);
360
287
  (0, _withParameters.withParameters)(this.gl, params, function () {
@@ -367,41 +294,37 @@ var WEBGLTexture = function (_Texture) {
367
294
  key: "setImageData",
368
295
  value: function setImageData(options) {
369
296
  var _this5 = this;
370
-
371
297
  if (this.props.dimension === '3d') {
372
298
  return this.setImageData3D(options);
373
299
  }
374
-
375
300
  this.trackDeallocatedMemory('Texture');
376
301
  var _options$target = options.target,
377
- target = _options$target === void 0 ? this.target : _options$target,
378
- _options$pixels = options.pixels,
379
- pixels = _options$pixels === void 0 ? null : _options$pixels,
380
- _options$level = options.level,
381
- level = _options$level === void 0 ? 0 : _options$level,
382
- _options$format = options.format,
383
- format = _options$format === void 0 ? this.format : _options$format,
384
- _options$offset = options.offset,
385
- offset = _options$offset === void 0 ? 0 : _options$offset,
386
- _options$parameters = options.parameters,
387
- parameters = _options$parameters === void 0 ? {} : _options$parameters;
302
+ target = _options$target === void 0 ? this.target : _options$target,
303
+ _options$pixels = options.pixels,
304
+ pixels = _options$pixels === void 0 ? null : _options$pixels,
305
+ _options$level = options.level,
306
+ level = _options$level === void 0 ? 0 : _options$level,
307
+ _options$format = options.format,
308
+ format = _options$format === void 0 ? this.format : _options$format,
309
+ _options$offset = options.offset,
310
+ offset = _options$offset === void 0 ? 0 : _options$offset,
311
+ _options$parameters = options.parameters,
312
+ parameters = _options$parameters === void 0 ? {} : _options$parameters;
388
313
  var _options$data = options.data,
389
- data = _options$data === void 0 ? null : _options$data,
390
- _options$type = options.type,
391
- type = _options$type === void 0 ? this.type : _options$type,
392
- _options$width = options.width,
393
- width = _options$width === void 0 ? this.width : _options$width,
394
- _options$height = options.height,
395
- height = _options$height === void 0 ? this.height : _options$height,
396
- _options$dataFormat = options.dataFormat,
397
- dataFormat = _options$dataFormat === void 0 ? this.dataFormat : _options$dataFormat,
398
- _options$compressed = options.compressed,
399
- compressed = _options$compressed === void 0 ? false : _options$compressed;
400
-
314
+ data = _options$data === void 0 ? null : _options$data,
315
+ _options$type = options.type,
316
+ type = _options$type === void 0 ? this.type : _options$type,
317
+ _options$width = options.width,
318
+ width = _options$width === void 0 ? this.width : _options$width,
319
+ _options$height = options.height,
320
+ height = _options$height === void 0 ? this.height : _options$height,
321
+ _options$dataFormat = options.dataFormat,
322
+ dataFormat = _options$dataFormat === void 0 ? this.dataFormat : _options$dataFormat,
323
+ _options$compressed = options.compressed,
324
+ compressed = _options$compressed === void 0 ? false : _options$compressed;
401
325
  if (!data) {
402
326
  data = pixels;
403
327
  }
404
-
405
328
  var _this$_deduceParamete2 = this._deduceParameters({
406
329
  format: this.props.format,
407
330
  type: type,
@@ -411,7 +334,6 @@ var WEBGLTexture = function (_Texture) {
411
334
  width: width,
412
335
  height: height
413
336
  });
414
-
415
337
  type = _this$_deduceParamete2.type;
416
338
  dataFormat = _this$_deduceParamete2.dataFormat;
417
339
  compressed = _this$_deduceParamete2.compressed;
@@ -420,12 +342,10 @@ var WEBGLTexture = function (_Texture) {
420
342
  var gl = this.gl;
421
343
  gl.bindTexture(this.target, this.handle);
422
344
  var dataType = null;
423
-
424
345
  var _this$_getDataType = this._getDataType({
425
346
  data: data,
426
347
  compressed: compressed
427
348
  });
428
-
429
349
  data = _this$_getDataType.data;
430
350
  dataType = _this$_getDataType.dataType;
431
351
  var gl2;
@@ -434,37 +354,30 @@ var WEBGLTexture = function (_Texture) {
434
354
  case 'null':
435
355
  gl.texImage2D(target, level, format, width, height, 0, dataFormat, type, data);
436
356
  break;
437
-
438
357
  case 'typed-array':
439
358
  gl.texImage2D(target, level, format, width, height, 0, dataFormat, type, data, offset);
440
359
  break;
441
-
442
360
  case 'buffer':
443
361
  gl2 = _this5.device.assertWebGL2();
444
362
  gl2.bindBuffer(_constants.default.PIXEL_UNPACK_BUFFER, data.handle || data);
445
363
  gl2.texImage2D(target, level, format, width, height, 0, dataFormat, type, offset);
446
364
  gl2.bindBuffer(_constants.default.PIXEL_UNPACK_BUFFER, null);
447
365
  break;
448
-
449
366
  case 'browser-object':
450
367
  if (_this5.device.isWebGL2) {
451
368
  gl.texImage2D(target, level, format, width, height, 0, dataFormat, type, data);
452
369
  } else {
453
370
  gl.texImage2D(target, level, format, dataFormat, type, data);
454
371
  }
455
-
456
372
  break;
457
-
458
373
  case 'compressed':
459
374
  var _iterator = _createForOfIteratorHelper(data.entries()),
460
- _step;
461
-
375
+ _step;
462
376
  try {
463
377
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
464
378
  var _step$value = (0, _slicedToArray2.default)(_step.value, 2),
465
- levelIndex = _step$value[0],
466
- levelData = _step$value[1];
467
-
379
+ levelIndex = _step$value[0],
380
+ levelData = _step$value[1];
468
381
  gl.compressedTexImage2D(target, levelIndex, levelData.format, levelData.width, levelData.height, 0, levelData.data);
469
382
  }
470
383
  } catch (err) {
@@ -472,21 +385,17 @@ var WEBGLTexture = function (_Texture) {
472
385
  } finally {
473
386
  _iterator.f();
474
387
  }
475
-
476
388
  break;
477
-
478
389
  default:
479
390
  (0, _api.assert)(false, 'Unknown image data type');
480
391
  }
481
392
  });
482
-
483
393
  if (data && data.byteLength) {
484
394
  this.trackAllocatedMemory(data.byteLength, 'Texture');
485
395
  } else {
486
396
  var bytesPerPixel = (0, _textureFormats.getTextureFormatBytesPerPixel)(this.gl, this.props.format);
487
397
  this.trackAllocatedMemory(this.width * this.height * bytesPerPixel, 'Texture');
488
398
  }
489
-
490
399
  this.loaded = true;
491
400
  return this;
492
401
  }
@@ -494,36 +403,34 @@ var WEBGLTexture = function (_Texture) {
494
403
  key: "setSubImageData",
495
404
  value: function setSubImageData(_ref) {
496
405
  var _this6 = this;
497
-
498
406
  var _ref$target = _ref.target,
499
- target = _ref$target === void 0 ? this.target : _ref$target,
500
- _ref$pixels = _ref.pixels,
501
- pixels = _ref$pixels === void 0 ? null : _ref$pixels,
502
- _ref$data = _ref.data,
503
- data = _ref$data === void 0 ? null : _ref$data,
504
- _ref$x = _ref.x,
505
- x = _ref$x === void 0 ? 0 : _ref$x,
506
- _ref$y = _ref.y,
507
- y = _ref$y === void 0 ? 0 : _ref$y,
508
- _ref$width = _ref.width,
509
- width = _ref$width === void 0 ? this.width : _ref$width,
510
- _ref$height = _ref.height,
511
- height = _ref$height === void 0 ? this.height : _ref$height,
512
- _ref$level = _ref.level,
513
- level = _ref$level === void 0 ? 0 : _ref$level,
514
- _ref$format = _ref.format,
515
- format = _ref$format === void 0 ? this.format : _ref$format,
516
- _ref$type = _ref.type,
517
- type = _ref$type === void 0 ? this.type : _ref$type,
518
- _ref$dataFormat = _ref.dataFormat,
519
- dataFormat = _ref$dataFormat === void 0 ? this.dataFormat : _ref$dataFormat,
520
- _ref$compressed = _ref.compressed,
521
- compressed = _ref$compressed === void 0 ? false : _ref$compressed,
522
- _ref$offset = _ref.offset,
523
- offset = _ref$offset === void 0 ? 0 : _ref$offset,
524
- _ref$parameters = _ref.parameters,
525
- parameters = _ref$parameters === void 0 ? {} : _ref$parameters;
526
-
407
+ target = _ref$target === void 0 ? this.target : _ref$target,
408
+ _ref$pixels = _ref.pixels,
409
+ pixels = _ref$pixels === void 0 ? null : _ref$pixels,
410
+ _ref$data = _ref.data,
411
+ data = _ref$data === void 0 ? null : _ref$data,
412
+ _ref$x = _ref.x,
413
+ x = _ref$x === void 0 ? 0 : _ref$x,
414
+ _ref$y = _ref.y,
415
+ y = _ref$y === void 0 ? 0 : _ref$y,
416
+ _ref$width = _ref.width,
417
+ width = _ref$width === void 0 ? this.width : _ref$width,
418
+ _ref$height = _ref.height,
419
+ height = _ref$height === void 0 ? this.height : _ref$height,
420
+ _ref$level = _ref.level,
421
+ level = _ref$level === void 0 ? 0 : _ref$level,
422
+ _ref$format = _ref.format,
423
+ format = _ref$format === void 0 ? this.format : _ref$format,
424
+ _ref$type = _ref.type,
425
+ type = _ref$type === void 0 ? this.type : _ref$type,
426
+ _ref$dataFormat = _ref.dataFormat,
427
+ dataFormat = _ref$dataFormat === void 0 ? this.dataFormat : _ref$dataFormat,
428
+ _ref$compressed = _ref.compressed,
429
+ compressed = _ref$compressed === void 0 ? false : _ref$compressed,
430
+ _ref$offset = _ref.offset,
431
+ offset = _ref$offset === void 0 ? 0 : _ref$offset,
432
+ _ref$parameters = _ref.parameters,
433
+ parameters = _ref$parameters === void 0 ? {} : _ref$parameters;
527
434
  var _this$_deduceParamete3 = this._deduceParameters({
528
435
  format: this.props.format,
529
436
  type: type,
@@ -533,29 +440,24 @@ var WEBGLTexture = function (_Texture) {
533
440
  width: width,
534
441
  height: height
535
442
  });
536
-
537
443
  type = _this$_deduceParamete3.type;
538
444
  dataFormat = _this$_deduceParamete3.dataFormat;
539
445
  compressed = _this$_deduceParamete3.compressed;
540
446
  width = _this$_deduceParamete3.width;
541
447
  height = _this$_deduceParamete3.height;
542
448
  (0, _api.assert)(this.depth === 1, 'texSubImage not supported for 3D textures');
543
-
544
449
  if (!data) {
545
450
  data = pixels;
546
451
  }
547
-
548
452
  if (data && data.data) {
549
453
  var ndarray = data;
550
454
  data = ndarray.data;
551
455
  width = ndarray.shape[0];
552
456
  height = ndarray.shape[1];
553
457
  }
554
-
555
458
  if (data instanceof _webglBuffer.default) {
556
459
  data = data.handle;
557
460
  }
558
-
559
461
  this.gl.bindTexture(this.target, this.handle);
560
462
  (0, _withParameters.withParameters)(this.gl, parameters, function () {
561
463
  if (compressed) {
@@ -566,13 +468,11 @@ var WEBGLTexture = function (_Texture) {
566
468
  _this6.gl.texSubImage2D(target, level, x, y, width, height, dataFormat, type, data, offset);
567
469
  } else if (typeof WebGLBuffer !== 'undefined' && data instanceof WebGLBuffer) {
568
470
  var gl2 = _this6.device.assertWebGL2();
569
-
570
471
  gl2.bindBuffer(_constants.default.PIXEL_UNPACK_BUFFER, data);
571
472
  gl2.texSubImage2D(target, level, x, y, width, height, dataFormat, type, offset);
572
473
  gl2.bindBuffer(_constants.default.PIXEL_UNPACK_BUFFER, null);
573
474
  } else if (_this6.device.isWebGL2) {
574
475
  var _gl = _this6.device.assertWebGL2();
575
-
576
476
  _gl.texSubImage2D(target, level, x, y, width, height, dataFormat, type, data);
577
477
  } else {
578
478
  _this6.gl.texSubImage2D(target, level, x, y, dataFormat, type, data);
@@ -584,9 +484,7 @@ var WEBGLTexture = function (_Texture) {
584
484
  key: "copyFramebuffer",
585
485
  value: function copyFramebuffer() {
586
486
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
587
-
588
487
  _api.log.error('Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})')();
589
-
590
488
  return null;
591
489
  }
592
490
  }, {
@@ -599,12 +497,10 @@ var WEBGLTexture = function (_Texture) {
599
497
  value: function bind() {
600
498
  var textureUnit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.textureUnit;
601
499
  var gl = this.gl;
602
-
603
500
  if (textureUnit !== undefined) {
604
501
  this.textureUnit = textureUnit;
605
502
  gl.activeTexture(gl.TEXTURE0 + textureUnit);
606
503
  }
607
-
608
504
  gl.bindTexture(this.target, this.handle);
609
505
  return textureUnit;
610
506
  }
@@ -613,12 +509,10 @@ var WEBGLTexture = function (_Texture) {
613
509
  value: function unbind() {
614
510
  var textureUnit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.textureUnit;
615
511
  var gl = this.gl;
616
-
617
512
  if (textureUnit !== undefined) {
618
513
  this.textureUnit = textureUnit;
619
514
  gl.activeTexture(gl.TEXTURE0 + textureUnit);
620
515
  }
621
-
622
516
  gl.bindTexture(this.target, null);
623
517
  return textureUnit;
624
518
  }
@@ -626,44 +520,38 @@ var WEBGLTexture = function (_Texture) {
626
520
  key: "_getDataType",
627
521
  value: function _getDataType(_ref2) {
628
522
  var data = _ref2.data,
629
- _ref2$compressed = _ref2.compressed,
630
- compressed = _ref2$compressed === void 0 ? false : _ref2$compressed;
631
-
523
+ _ref2$compressed = _ref2.compressed,
524
+ compressed = _ref2$compressed === void 0 ? false : _ref2$compressed;
632
525
  if (compressed) {
633
526
  return {
634
527
  data: data,
635
528
  dataType: 'compressed'
636
529
  };
637
530
  }
638
-
639
531
  if (data === null) {
640
532
  return {
641
533
  data: data,
642
534
  dataType: 'null'
643
535
  };
644
536
  }
645
-
646
537
  if (ArrayBuffer.isView(data)) {
647
538
  return {
648
539
  data: data,
649
540
  dataType: 'typed-array'
650
541
  };
651
542
  }
652
-
653
543
  if (data instanceof _webglBuffer.default) {
654
544
  return {
655
545
  data: data.handle,
656
546
  dataType: 'buffer'
657
547
  };
658
548
  }
659
-
660
549
  if (typeof WebGLBuffer !== 'undefined' && data instanceof WebGLBuffer) {
661
550
  return {
662
551
  data: data,
663
552
  dataType: 'buffer'
664
553
  };
665
554
  }
666
-
667
555
  return {
668
556
  data: data,
669
557
  dataType: 'browser-object'
@@ -673,19 +561,17 @@ var WEBGLTexture = function (_Texture) {
673
561
  key: "_deduceParameters",
674
562
  value: function _deduceParameters(opts) {
675
563
  var format = opts.format,
676
- data = opts.data;
564
+ data = opts.data;
677
565
  var width = opts.width,
678
- height = opts.height,
679
- dataFormat = opts.dataFormat,
680
- type = opts.type,
681
- compressed = opts.compressed;
566
+ height = opts.height,
567
+ dataFormat = opts.dataFormat,
568
+ type = opts.type,
569
+ compressed = opts.compressed;
682
570
  var parameters = (0, _textureFormats.getWebGLTextureParameters)(this.gl, format);
683
571
  dataFormat = dataFormat || parameters.dataFormat;
684
572
  type = type || parameters.type;
685
573
  compressed = compressed || parameters.compressed;
686
-
687
574
  var _this$_deduceImageSiz = this._deduceImageSize(data, width, height);
688
-
689
575
  width = _this$_deduceImageSiz.width;
690
576
  height = _this$_deduceImageSiz.height;
691
577
  return {
@@ -702,7 +588,6 @@ var WEBGLTexture = function (_Texture) {
702
588
  key: "_deduceImageSize",
703
589
  value: function _deduceImageSize(data, width, height) {
704
590
  var size;
705
-
706
591
  if (typeof ImageData !== 'undefined' && data instanceof ImageData) {
707
592
  size = {
708
593
  width: data.width,
@@ -739,7 +624,6 @@ var WEBGLTexture = function (_Texture) {
739
624
  height: height
740
625
  };
741
626
  }
742
-
743
627
  (0, _api.assert)(size, 'Could not deduced texture size');
744
628
  (0, _api.assert)(width === undefined || size.width === width, 'Deduced texture width does not match supplied width');
745
629
  (0, _api.assert)(height === undefined || size.height === height, 'Deduced texture height does not match supplied height');
@@ -750,72 +634,61 @@ var WEBGLTexture = function (_Texture) {
750
634
  value: function () {
751
635
  var _setCubeMapImageData = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(options) {
752
636
  var _this7 = this;
753
-
754
637
  var gl, width, height, pixels, data, _options$format2, format, _options$type2, type, imageDataMap, resolvedFaces;
755
-
756
638
  return _regenerator.default.wrap(function _callee$(_context) {
757
- while (1) {
758
- switch (_context.prev = _context.next) {
759
- case 0:
760
- gl = this.gl;
761
- width = options.width, height = options.height, pixels = options.pixels, data = options.data, _options$format2 = options.format, format = _options$format2 === void 0 ? _constants.default.RGBA : _options$format2, _options$type2 = options.type, type = _options$type2 === void 0 ? _constants.default.UNSIGNED_BYTE : _options$type2;
762
- imageDataMap = pixels || data;
763
- _context.next = 5;
764
- return Promise.all(WEBGLTexture.FACES.map(function (face) {
765
- var facePixels = imageDataMap[face];
766
- return Promise.all(Array.isArray(facePixels) ? facePixels : [facePixels]);
767
- }));
768
-
769
- case 5:
770
- resolvedFaces = _context.sent;
771
- this.bind();
772
- WEBGLTexture.FACES.forEach(function (face, index) {
773
- if (resolvedFaces[index].length > 1 && _this7.props.mipmaps !== false) {
774
- _api.log.warn("".concat(_this7.id, " has mipmap and multiple LODs."))();
639
+ while (1) switch (_context.prev = _context.next) {
640
+ case 0:
641
+ gl = this.gl;
642
+ width = options.width, height = options.height, pixels = options.pixels, data = options.data, _options$format2 = options.format, format = _options$format2 === void 0 ? _constants.default.RGBA : _options$format2, _options$type2 = options.type, type = _options$type2 === void 0 ? _constants.default.UNSIGNED_BYTE : _options$type2;
643
+ imageDataMap = pixels || data;
644
+ _context.next = 5;
645
+ return Promise.all(WEBGLTexture.FACES.map(function (face) {
646
+ var facePixels = imageDataMap[face];
647
+ return Promise.all(Array.isArray(facePixels) ? facePixels : [facePixels]);
648
+ }));
649
+ case 5:
650
+ resolvedFaces = _context.sent;
651
+ this.bind();
652
+ WEBGLTexture.FACES.forEach(function (face, index) {
653
+ if (resolvedFaces[index].length > 1 && _this7.props.mipmaps !== false) {
654
+ _api.log.warn("".concat(_this7.id, " has mipmap and multiple LODs."))();
655
+ }
656
+ resolvedFaces[index].forEach(function (image, lodLevel) {
657
+ if (width && height) {
658
+ gl.texImage2D(face, lodLevel, format, width, height, 0, format, type, image);
659
+ } else {
660
+ gl.texImage2D(face, lodLevel, format, format, type, image);
775
661
  }
776
-
777
- resolvedFaces[index].forEach(function (image, lodLevel) {
778
- if (width && height) {
779
- gl.texImage2D(face, lodLevel, format, width, height, 0, format, type, image);
780
- } else {
781
- gl.texImage2D(face, lodLevel, format, format, type, image);
782
- }
783
- });
784
662
  });
785
- this.unbind();
786
-
787
- case 9:
788
- case "end":
789
- return _context.stop();
790
- }
663
+ });
664
+ this.unbind();
665
+ case 9:
666
+ case "end":
667
+ return _context.stop();
791
668
  }
792
669
  }, _callee, this);
793
670
  }));
794
-
795
671
  function setCubeMapImageData(_x) {
796
672
  return _setCubeMapImageData.apply(this, arguments);
797
673
  }
798
-
799
674
  return setCubeMapImageData;
800
675
  }()
801
676
  }, {
802
677
  key: "setImageDataForFace",
803
678
  value: function setImageDataForFace(options) {
804
679
  var _this8 = this;
805
-
806
680
  var face = options.face,
807
- width = options.width,
808
- height = options.height,
809
- pixels = options.pixels,
810
- data = options.data,
811
- _options$format3 = options.format,
812
- format = _options$format3 === void 0 ? _constants.default.RGBA : _options$format3,
813
- _options$type3 = options.type,
814
- type = _options$type3 === void 0 ? _constants.default.UNSIGNED_BYTE : _options$type3;
681
+ width = options.width,
682
+ height = options.height,
683
+ pixels = options.pixels,
684
+ data = options.data,
685
+ _options$format3 = options.format,
686
+ format = _options$format3 === void 0 ? _constants.default.RGBA : _options$format3,
687
+ _options$type3 = options.type,
688
+ type = _options$type3 === void 0 ? _constants.default.UNSIGNED_BYTE : _options$type3;
815
689
  var gl = this.gl;
816
690
  var imageData = pixels || data;
817
691
  this.bind();
818
-
819
692
  if (imageData instanceof Promise) {
820
693
  imageData.then(function (resolvedImageData) {
821
694
  return _this8.setImageDataForFace(Object.assign({}, options, {
@@ -829,28 +702,26 @@ var WEBGLTexture = function (_Texture) {
829
702
  } else {
830
703
  gl.texImage2D(face, 0, format, format, type, imageData);
831
704
  }
832
-
833
705
  return this;
834
706
  }
835
707
  }, {
836
708
  key: "setImageData3D",
837
709
  value: function setImageData3D(options) {
838
710
  var _this9 = this;
839
-
840
711
  var _options$level2 = options.level,
841
- level = _options$level2 === void 0 ? 0 : _options$level2,
842
- dataFormat = options.dataFormat,
843
- format = options.format,
844
- type = options.type,
845
- width = options.width,
846
- height = options.height,
847
- _options$depth = options.depth,
848
- depth = _options$depth === void 0 ? 1 : _options$depth,
849
- _options$offset2 = options.offset,
850
- offset = _options$offset2 === void 0 ? 0 : _options$offset2,
851
- data = options.data,
852
- _options$parameters2 = options.parameters,
853
- parameters = _options$parameters2 === void 0 ? {} : _options$parameters2;
712
+ level = _options$level2 === void 0 ? 0 : _options$level2,
713
+ dataFormat = options.dataFormat,
714
+ format = options.format,
715
+ type = options.type,
716
+ width = options.width,
717
+ height = options.height,
718
+ _options$depth = options.depth,
719
+ depth = _options$depth === void 0 ? 1 : _options$depth,
720
+ _options$offset2 = options.offset,
721
+ offset = _options$offset2 === void 0 ? 0 : _options$offset2,
722
+ data = options.data,
723
+ _options$parameters2 = options.parameters,
724
+ parameters = _options$parameters2 === void 0 ? {} : _options$parameters2;
854
725
  this.trackDeallocatedMemory('Texture');
855
726
  this.gl.bindTexture(this.target, this.handle);
856
727
  var webglTextureFormat = (0, _textureFormats.getWebGLTextureParameters)(this.gl, format);
@@ -858,21 +729,17 @@ var WEBGLTexture = function (_Texture) {
858
729
  if (ArrayBuffer.isView(data)) {
859
730
  _this9.gl.texImage3D(_this9.target, level, webglTextureFormat.format, width, height, depth, 0, webglTextureFormat.dataFormat, webglTextureFormat.type, data);
860
731
  }
861
-
862
732
  if (data instanceof _webglBuffer.default) {
863
733
  _this9.gl.bindBuffer(_constants.default.PIXEL_UNPACK_BUFFER, data.handle);
864
-
865
734
  _this9.gl.texImage3D(_this9.target, level, dataFormat, width, height, depth, 0, format, type, offset);
866
735
  }
867
736
  });
868
-
869
737
  if (data && data.byteLength) {
870
738
  this.trackAllocatedMemory(data.byteLength, 'Texture');
871
739
  } else {
872
740
  var bytesPerPixel = (0, _textureFormats.getTextureFormatBytesPerPixel)(this.gl, this.props.format);
873
741
  this.trackAllocatedMemory(this.width * this.height * this.depth * bytesPerPixel, 'Texture');
874
742
  }
875
-
876
743
  this.loaded = true;
877
744
  return this;
878
745
  }
@@ -882,34 +749,27 @@ var WEBGLTexture = function (_Texture) {
882
749
  if (this.device.isWebGL1 && isNPOT(this.width, this.height)) {
883
750
  parameters = (0, _samplerParameters.updateSamplerParametersForNPOT)(parameters);
884
751
  }
885
-
886
752
  if ((0, _api.isObjectEmpty)(parameters)) {
887
753
  return;
888
754
  }
889
-
890
755
  logParameters(parameters);
891
756
  this.gl.bindTexture(this.target, this.handle);
892
-
893
757
  for (var _i = 0, _Object$entries = Object.entries(parameters); _i < _Object$entries.length; _i++) {
894
758
  var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
895
- pname = _Object$entries$_i[0],
896
- pvalue = _Object$entries$_i[1];
897
-
759
+ pname = _Object$entries$_i[0],
760
+ pvalue = _Object$entries$_i[1];
898
761
  var param = Number(pname);
899
762
  var value = pvalue;
900
-
901
763
  switch (param) {
902
764
  case _constants.default.TEXTURE_MIN_LOD:
903
765
  case _constants.default.TEXTURE_MAX_LOD:
904
766
  this.gl.texParameterf(this.target, param, value);
905
767
  break;
906
-
907
768
  default:
908
769
  this.gl.texParameteri(this.target, param, value);
909
770
  break;
910
771
  }
911
772
  }
912
-
913
773
  this.gl.bindTexture(this.target, null);
914
774
  return;
915
775
  }
@@ -917,63 +777,49 @@ var WEBGLTexture = function (_Texture) {
917
777
  key: "_getWebGL1NPOTParameterOverride",
918
778
  value: function _getWebGL1NPOTParameterOverride(pname, value) {
919
779
  var npot = this.device.isWebGL1 && isNPOT(this.width, this.height);
920
-
921
780
  if (npot) {
922
781
  switch (pname) {
923
782
  case _constants.default.TEXTURE_MIN_FILTER:
924
783
  if (value !== _constants.default.LINEAR && value !== _constants.default.NEAREST) {
925
784
  return _constants.default.LINEAR;
926
785
  }
927
-
928
786
  break;
929
-
930
787
  case _constants.default.TEXTURE_WRAP_S:
931
788
  case _constants.default.TEXTURE_WRAP_T:
932
789
  return _constants.default.CLAMP_TO_EDGE;
933
-
934
790
  default:
935
791
  break;
936
792
  }
937
793
  }
938
-
939
794
  return value;
940
795
  }
941
796
  }]);
942
797
  return WEBGLTexture;
943
798
  }(_api.Texture);
944
-
945
799
  exports.default = WEBGLTexture;
946
800
  (0, _defineProperty2.default)(WEBGLTexture, "FACES", [_constants.default.TEXTURE_CUBE_MAP_POSITIVE_X, _constants.default.TEXTURE_CUBE_MAP_NEGATIVE_X, _constants.default.TEXTURE_CUBE_MAP_POSITIVE_Y, _constants.default.TEXTURE_CUBE_MAP_NEGATIVE_Y, _constants.default.TEXTURE_CUBE_MAP_POSITIVE_Z, _constants.default.TEXTURE_CUBE_MAP_NEGATIVE_Z]);
947
-
948
801
  function getWebGLTextureTarget(props) {
949
802
  switch (props.dimension) {
950
803
  case '2d':
951
804
  return _constants.default.TEXTURE_2D;
952
-
953
805
  case 'cube':
954
806
  return _constants.default.TEXTURE_CUBE_MAP;
955
-
956
807
  case '2d-array':
957
808
  return _constants.default.TEXTURE_2D_ARRAY;
958
-
959
809
  case '3d':
960
810
  return _constants.default.TEXTURE_3D;
961
-
962
811
  case '1d':
963
812
  case 'cube-array':
964
813
  default:
965
814
  throw new Error(props.dimension);
966
815
  }
967
816
  }
968
-
969
817
  function isNPOT(width, height) {
970
818
  if (!width || !height) {
971
819
  return false;
972
820
  }
973
-
974
821
  return !(0, _api.isPowerOfTwo)(width) || !(0, _api.isPowerOfTwo)(height);
975
822
  }
976
-
977
823
  function logParameters(parameters) {
978
824
  _api.log.log(1, 'texture sampler parameters', parameters)();
979
825
  }