@luma.gl/webgl 9.0.0-alpha.5 → 9.0.0-alpha.6

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 (208) hide show
  1. package/dist/adapter/converters/device-parameters.d.ts +11 -1
  2. package/dist/adapter/converters/device-parameters.d.ts.map +1 -1
  3. package/dist/adapter/converters/device-parameters.js +15 -2
  4. package/dist/adapter/converters/device-parameters.js.map +1 -1
  5. package/dist/adapter/converters/sampler-parameters.d.ts +4 -4
  6. package/dist/adapter/converters/sampler-parameters.d.ts.map +1 -1
  7. package/dist/adapter/converters/sampler-parameters.js +21 -2
  8. package/dist/adapter/converters/sampler-parameters.js.map +1 -1
  9. package/dist/adapter/converters/texture-formats.js +3 -3
  10. package/dist/adapter/converters/texture-formats.js.map +1 -1
  11. package/dist/adapter/device-helpers/device-features.d.ts.map +1 -1
  12. package/dist/adapter/device-helpers/device-features.js +12 -2
  13. package/dist/adapter/device-helpers/device-features.js.map +1 -1
  14. package/dist/adapter/device-helpers/device-limits.js.map +1 -1
  15. package/dist/adapter/helpers/get-shader-layout.d.ts.map +1 -1
  16. package/dist/adapter/helpers/get-shader-layout.js +40 -16
  17. package/dist/adapter/helpers/get-shader-layout.js.map +1 -1
  18. package/dist/adapter/helpers/uniforms.d.ts +1 -1
  19. package/dist/adapter/helpers/uniforms.d.ts.map +1 -1
  20. package/dist/adapter/helpers/uniforms.js +4 -4
  21. package/dist/adapter/helpers/uniforms.js.map +1 -1
  22. package/dist/adapter/objects/webgl-vertex-array-object.d.ts +1 -1
  23. package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +1 -1
  24. package/dist/adapter/objects/webgl-vertex-array-object.js.map +1 -1
  25. package/dist/adapter/resources/webgl-buffer.d.ts +1 -1
  26. package/dist/adapter/resources/webgl-buffer.d.ts.map +1 -1
  27. package/dist/adapter/resources/webgl-buffer.js +2 -2
  28. package/dist/adapter/resources/webgl-buffer.js.map +1 -1
  29. package/dist/adapter/resources/webgl-framebuffer.d.ts +2 -1
  30. package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -1
  31. package/dist/adapter/resources/webgl-framebuffer.js +5 -3
  32. package/dist/adapter/resources/webgl-framebuffer.js.map +1 -1
  33. package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -1
  34. package/dist/adapter/resources/webgl-render-pass.js +2 -0
  35. package/dist/adapter/resources/webgl-render-pass.js.map +1 -1
  36. package/dist/adapter/resources/webgl-render-pipeline.d.ts +1 -1
  37. package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -1
  38. package/dist/adapter/resources/webgl-render-pipeline.js +40 -24
  39. package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -1
  40. package/dist/adapter/resources/webgl-sampler.d.ts +2 -2
  41. package/dist/adapter/resources/webgl-sampler.d.ts.map +1 -1
  42. package/dist/adapter/resources/webgl-sampler.js.map +1 -1
  43. package/dist/adapter/resources/webgl-shader.d.ts.map +1 -1
  44. package/dist/adapter/resources/webgl-shader.js +4 -3
  45. package/dist/adapter/resources/webgl-shader.js.map +1 -1
  46. package/dist/adapter/resources/webgl-texture.d.ts +19 -19
  47. package/dist/adapter/resources/webgl-texture.d.ts.map +1 -1
  48. package/dist/adapter/resources/webgl-texture.js +14 -13
  49. package/dist/adapter/resources/webgl-texture.js.map +1 -1
  50. package/dist/adapter/webgl-canvas-context.d.ts.map +1 -1
  51. package/dist/adapter/webgl-canvas-context.js +1 -1
  52. package/dist/adapter/webgl-canvas-context.js.map +1 -1
  53. package/dist/classic/buffer.js +14 -6
  54. package/dist/classic/buffer.js.map +1 -1
  55. package/dist/context/context/create-context.d.ts.map +1 -1
  56. package/dist/context/context/create-context.js +8 -2
  57. package/dist/context/context/create-context.js.map +1 -1
  58. package/dist/context/context/device-pixels.d.ts.map +1 -1
  59. package/dist/context/context/device-pixels.js +13 -8
  60. package/dist/context/context/device-pixels.js.map +1 -1
  61. package/dist/context/debug/spector.js +1 -1
  62. package/dist/context/debug/spector.js.map +1 -1
  63. package/dist/context/debug/webgl-developer-tools.js +1 -1
  64. package/dist/context/debug/webgl-developer-tools.js.map +1 -1
  65. package/dist/context/parameters/unified-parameter-api.d.ts +5 -4
  66. package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -1
  67. package/dist/context/parameters/unified-parameter-api.js +1 -3
  68. package/dist/context/parameters/unified-parameter-api.js.map +1 -1
  69. package/dist/context/polyfill/polyfill-context.js.map +1 -1
  70. package/dist/context/polyfill/polyfill-table.d.ts +1 -1
  71. package/dist/context/polyfill/polyfill-table.d.ts.map +1 -1
  72. package/dist/context/polyfill/polyfill-table.js +1 -1
  73. package/dist/context/polyfill/polyfill-table.js.map +1 -1
  74. package/dist/context/state-tracker/track-context-state.js +1 -1
  75. package/dist/context/state-tracker/track-context-state.js.map +1 -1
  76. package/dist/es5/adapter/converters/device-parameters.js +17 -2
  77. package/dist/es5/adapter/converters/device-parameters.js.map +1 -1
  78. package/dist/es5/adapter/converters/sampler-parameters.js +21 -2
  79. package/dist/es5/adapter/converters/sampler-parameters.js.map +1 -1
  80. package/dist/es5/adapter/converters/texture-formats.js +3 -3
  81. package/dist/es5/adapter/converters/texture-formats.js.map +1 -1
  82. package/dist/es5/adapter/device-helpers/device-features.js +15 -4
  83. package/dist/es5/adapter/device-helpers/device-features.js.map +1 -1
  84. package/dist/es5/adapter/device-helpers/device-limits.js.map +1 -1
  85. package/dist/es5/adapter/helpers/get-shader-layout.js +48 -28
  86. package/dist/es5/adapter/helpers/get-shader-layout.js.map +1 -1
  87. package/dist/es5/adapter/helpers/uniforms.js +4 -4
  88. package/dist/es5/adapter/helpers/uniforms.js.map +1 -1
  89. package/dist/es5/adapter/objects/webgl-vertex-array-object.js.map +1 -1
  90. package/dist/es5/adapter/resources/webgl-buffer.js +2 -2
  91. package/dist/es5/adapter/resources/webgl-buffer.js.map +1 -1
  92. package/dist/es5/adapter/resources/webgl-framebuffer.js +4 -3
  93. package/dist/es5/adapter/resources/webgl-framebuffer.js.map +1 -1
  94. package/dist/es5/adapter/resources/webgl-render-pass.js +1 -0
  95. package/dist/es5/adapter/resources/webgl-render-pass.js.map +1 -1
  96. package/dist/es5/adapter/resources/webgl-render-pipeline.js +43 -30
  97. package/dist/es5/adapter/resources/webgl-render-pipeline.js.map +1 -1
  98. package/dist/es5/adapter/resources/webgl-sampler.js.map +1 -1
  99. package/dist/es5/adapter/resources/webgl-shader.js +4 -3
  100. package/dist/es5/adapter/resources/webgl-shader.js.map +1 -1
  101. package/dist/es5/adapter/resources/webgl-texture.js +16 -16
  102. package/dist/es5/adapter/resources/webgl-texture.js.map +1 -1
  103. package/dist/es5/adapter/webgl-canvas-context.js +1 -1
  104. package/dist/es5/adapter/webgl-canvas-context.js.map +1 -1
  105. package/dist/es5/classic/buffer.js +14 -6
  106. package/dist/es5/classic/buffer.js.map +1 -1
  107. package/dist/es5/context/context/create-context.js +8 -2
  108. package/dist/es5/context/context/create-context.js.map +1 -1
  109. package/dist/es5/context/context/device-pixels.js +14 -8
  110. package/dist/es5/context/context/device-pixels.js.map +1 -1
  111. package/dist/es5/context/debug/spector.js +1 -1
  112. package/dist/es5/context/debug/spector.js.map +1 -1
  113. package/dist/es5/context/debug/webgl-developer-tools.js +1 -1
  114. package/dist/es5/context/debug/webgl-developer-tools.js.map +1 -1
  115. package/dist/es5/context/parameters/unified-parameter-api.js +2 -2
  116. package/dist/es5/context/parameters/unified-parameter-api.js.map +1 -1
  117. package/dist/es5/context/polyfill/polyfill-context.js.map +1 -1
  118. package/dist/es5/context/polyfill/polyfill-table.js +1 -1
  119. package/dist/es5/context/polyfill/polyfill-table.js.map +1 -1
  120. package/dist/es5/context/state-tracker/track-context-state.js +1 -1
  121. package/dist/es5/context/state-tracker/track-context-state.js.map +1 -1
  122. package/dist/es5/index.js +22 -16
  123. package/dist/es5/index.js.map +1 -1
  124. package/dist/es5/types/webgl.js.map +1 -1
  125. package/dist/esm/adapter/converters/device-parameters.js +15 -2
  126. package/dist/esm/adapter/converters/device-parameters.js.map +1 -1
  127. package/dist/esm/adapter/converters/sampler-parameters.js +21 -2
  128. package/dist/esm/adapter/converters/sampler-parameters.js.map +1 -1
  129. package/dist/esm/adapter/converters/texture-formats.js +3 -3
  130. package/dist/esm/adapter/converters/texture-formats.js.map +1 -1
  131. package/dist/esm/adapter/device-helpers/device-features.js +12 -2
  132. package/dist/esm/adapter/device-helpers/device-features.js.map +1 -1
  133. package/dist/esm/adapter/device-helpers/device-limits.js.map +1 -1
  134. package/dist/esm/adapter/helpers/get-shader-layout.js +40 -16
  135. package/dist/esm/adapter/helpers/get-shader-layout.js.map +1 -1
  136. package/dist/esm/adapter/helpers/uniforms.js +4 -4
  137. package/dist/esm/adapter/helpers/uniforms.js.map +1 -1
  138. package/dist/esm/adapter/objects/webgl-vertex-array-object.js.map +1 -1
  139. package/dist/esm/adapter/resources/webgl-buffer.js +2 -2
  140. package/dist/esm/adapter/resources/webgl-buffer.js.map +1 -1
  141. package/dist/esm/adapter/resources/webgl-framebuffer.js +5 -3
  142. package/dist/esm/adapter/resources/webgl-framebuffer.js.map +1 -1
  143. package/dist/esm/adapter/resources/webgl-render-pass.js +2 -0
  144. package/dist/esm/adapter/resources/webgl-render-pass.js.map +1 -1
  145. package/dist/esm/adapter/resources/webgl-render-pipeline.js +40 -24
  146. package/dist/esm/adapter/resources/webgl-render-pipeline.js.map +1 -1
  147. package/dist/esm/adapter/resources/webgl-sampler.js.map +1 -1
  148. package/dist/esm/adapter/resources/webgl-shader.js +4 -3
  149. package/dist/esm/adapter/resources/webgl-shader.js.map +1 -1
  150. package/dist/esm/adapter/resources/webgl-texture.js +14 -13
  151. package/dist/esm/adapter/resources/webgl-texture.js.map +1 -1
  152. package/dist/esm/adapter/webgl-canvas-context.js +1 -1
  153. package/dist/esm/adapter/webgl-canvas-context.js.map +1 -1
  154. package/dist/esm/classic/buffer.js +14 -6
  155. package/dist/esm/classic/buffer.js.map +1 -1
  156. package/dist/esm/context/context/create-context.js +8 -2
  157. package/dist/esm/context/context/create-context.js.map +1 -1
  158. package/dist/esm/context/context/device-pixels.js +13 -8
  159. package/dist/esm/context/context/device-pixels.js.map +1 -1
  160. package/dist/esm/context/debug/spector.js +1 -1
  161. package/dist/esm/context/debug/spector.js.map +1 -1
  162. package/dist/esm/context/debug/webgl-developer-tools.js +1 -1
  163. package/dist/esm/context/debug/webgl-developer-tools.js.map +1 -1
  164. package/dist/esm/context/parameters/unified-parameter-api.js +1 -3
  165. package/dist/esm/context/parameters/unified-parameter-api.js.map +1 -1
  166. package/dist/esm/context/polyfill/polyfill-context.js.map +1 -1
  167. package/dist/esm/context/polyfill/polyfill-table.js +1 -1
  168. package/dist/esm/context/polyfill/polyfill-table.js.map +1 -1
  169. package/dist/esm/context/state-tracker/track-context-state.js +1 -1
  170. package/dist/esm/context/state-tracker/track-context-state.js.map +1 -1
  171. package/dist/esm/index.js +2 -2
  172. package/dist/esm/index.js.map +1 -1
  173. package/dist/esm/types/webgl.js.map +1 -1
  174. package/dist/index.d.ts +4 -3
  175. package/dist/index.d.ts.map +1 -1
  176. package/dist/index.js +2 -2
  177. package/dist/index.js.map +1 -1
  178. package/dist/types/webgl.d.ts +2 -2
  179. package/dist/types/webgl.d.ts.map +1 -1
  180. package/dist/types/webgl.js.map +1 -1
  181. package/package.json +7 -4
  182. package/src/adapter/converters/device-parameters.ts +28 -2
  183. package/src/adapter/converters/sampler-parameters.ts +16 -7
  184. package/src/adapter/converters/texture-formats.ts +3 -3
  185. package/src/adapter/device-helpers/device-features.ts +9 -1
  186. package/src/adapter/device-helpers/device-limits.ts +1 -1
  187. package/src/adapter/helpers/get-shader-layout.ts +40 -21
  188. package/src/adapter/helpers/uniforms.ts +21 -10
  189. package/src/adapter/objects/webgl-vertex-array-object.ts +1 -1
  190. package/src/adapter/resources/webgl-buffer.ts +3 -3
  191. package/src/adapter/resources/webgl-framebuffer.ts +6 -3
  192. package/src/adapter/resources/webgl-render-pass.ts +1 -0
  193. package/src/adapter/resources/webgl-render-pipeline.ts +43 -35
  194. package/src/adapter/resources/webgl-sampler.ts +5 -3
  195. package/src/adapter/resources/webgl-shader.ts +5 -4
  196. package/src/adapter/resources/webgl-texture.ts +37 -25
  197. package/src/adapter/webgl-canvas-context.ts +1 -1
  198. package/src/classic/buffer.ts +7 -7
  199. package/src/context/context/create-context.ts +9 -5
  200. package/src/context/context/device-pixels.ts +15 -9
  201. package/src/context/debug/spector.ts +1 -1
  202. package/src/context/debug/webgl-developer-tools.ts +1 -1
  203. package/src/context/parameters/unified-parameter-api.ts +12 -9
  204. package/src/context/polyfill/polyfill-context.ts +1 -1
  205. package/src/context/polyfill/polyfill-table.ts +1 -1
  206. package/src/context/state-tracker/track-context-state.ts +1 -1
  207. package/src/index.ts +11 -5
  208. package/src/types/webgl.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/types/webgl.ts"],"names":["GL"],"mappings":"AACA,OAAOA,EAAP,MAAe,oBAAf","sourcesContent":["import type {NumberArray} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\n\ntype Framebuffer = any;\n\nexport type GLDrawMode =\n | GL.POINTS\n | GL.LINES\n | GL.LINE_STRIP\n | GL.LINE_LOOP\n | GL.TRIANGLES\n | GL.TRIANGLE_STRIP\n | GL.TRIANGLE_FAN;\n\nexport type GLPrimitive = GL.POINTS | GL.LINES | GL.TRIANGLES;\n\nexport type GLType =\n | GL.FLOAT\n | GL.UNSIGNED_SHORT\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_BYTE\n | GL.BYTE\n | GL.SHORT\n | GL.INT;\n\nexport type GLPackedType =\n | GL.UNSIGNED_SHORT_5_6_5\n | GL.UNSIGNED_SHORT_4_4_4_4\n | GL.UNSIGNED_SHORT_5_5_5_1;\n\nexport type GLUniformType = GLSamplerType | GLCompositeType;\n\nexport type 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// Composite types table\nexport type GLCompositeType =\n | GL.FLOAT\n | GL.FLOAT_VEC2\n | GL.FLOAT_VEC3\n | GL.FLOAT_VEC4\n | GL.INT\n | GL.INT_VEC2\n | GL.INT_VEC3\n | GL.INT_VEC4\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_INT_VEC2\n | GL.UNSIGNED_INT_VEC3\n | GL.UNSIGNED_INT_VEC4\n | GL.BOOL\n | GL.BOOL_VEC2\n | GL.BOOL_VEC3\n | GL.BOOL_VEC4\n | GL.FLOAT_MAT2\n | GL.FLOAT_MAT2x3\n | GL.FLOAT_MAT2x4\n | GL.FLOAT_MAT3x2\n | GL.FLOAT_MAT3\n | GL.FLOAT_MAT3x4\n | GL.FLOAT_MAT4x2\n | GL.FLOAT_MAT4x3\n | GL.FLOAT_MAT4;\n\nexport type GLFunction =\n | GL.NEVER\n | GL.LESS\n | GL.EQUAL\n | GL.LEQUAL\n | GL.GREATER\n | GL.NOTEQUAL\n | GL.GEQUAL\n | GL.ALWAYS;\n\nexport type GLBlendEquation =\n | GL.FUNC_ADD\n | GL.FUNC_SUBTRACT\n | GL.FUNC_REVERSE_SUBTRACT\n | GL.MIN_EXT\n | GL.MAX_EXT;\n\nexport type GLBlendFunction =\n | GL.ZERO\n | GL.ONE\n | GL.SRC_COLOR\n | GL.ONE_MINUS_SRC_COLOR\n | GL.DST_COLOR\n | GL.ONE_MINUS_DST_COLOR\n | GL.SRC_ALPHA\n | GL.ONE_MINUS_SRC_ALPHA\n | GL.DST_ALPHA\n | GL.ONE_MINUS_DST_ALPHA\n | GL.CONSTANT_COLOR\n | GL.ONE_MINUS_CONSTANT_COLOR\n | GL.CONSTANT_ALPHA\n | GL.ONE_MINUS_CONSTANT_ALPHA\n | GL.SRC_ALPHA_SATURATE;\n\nexport type GLStencilOp =\n | GL.KEEP\n | GL.ZERO\n | GL.REPLACE\n | GL.INCR\n | GL.INCR_WRAP\n | GL.DECR\n | GL.DECR_WRAP\n | GL.INVERT;\n\n/** Parameters for textures and samplers */\nexport type WebGLSamplerParameters = {\n [GL.TEXTURE_WRAP_S]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_T]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_R]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_MAG_FILTER]?: GL.NEAREST | GL.LINEAR;\n [GL.TEXTURE_MIN_FILTER]?:\n | GL.NEAREST\n | GL.LINEAR\n | GL.NEAREST_MIPMAP_NEAREST\n | GL.NEAREST_MIPMAP_LINEAR\n | GL.LINEAR_MIPMAP_NEAREST\n | GL.LINEAR_MIPMAP_LINEAR;\n [GL.TEXTURE_MIN_LOD]?: number;\n [GL.TEXTURE_MAX_LOD]?: number;\n [GL.TEXTURE_COMPARE_FUNC]?: number; // COMPARE_FUNC);\n [GL.TEXTURE_COMPARE_MODE]?: GL.COMPARE_REF_TO_TEXTURE;\n [GL.TEXTURE_MAX_ANISOTROPY_EXT]?: number; //\n};\n\n/**\n * All global WebGL values set by a variety of setter gl.enable ...\n */\nexport type GLValueParameters = {\n [GL.BLEND]?: boolean;\n [GL.BLEND_COLOR]?: [number, number, number, number] | NumberArray;\n [GL.BLEND_EQUATION_RGB]?: GLBlendEquation;\n [GL.BLEND_EQUATION_ALPHA]?: GLBlendEquation;\n [GL.BLEND_SRC_RGB]?: GLBlendFunction;\n [GL.BLEND_DST_RGB]?: GLBlendFunction;\n [GL.BLEND_SRC_ALPHA]?: GLBlendFunction;\n [GL.BLEND_DST_ALPHA]?: GLBlendFunction;\n [GL.COLOR_CLEAR_VALUE]?: [number, number, number, number] | NumberArray;\n [GL.COLOR_WRITEMASK]?: [boolean, boolean, boolean, boolean] | boolean[];\n [GL.CULL_FACE]?: boolean;\n [GL.CULL_FACE_MODE]?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n [GL.DEPTH_TEST]?: boolean;\n [GL.DEPTH_CLEAR_VALUE]?: number;\n [GL.DEPTH_FUNC]?: GLFunction;\n [GL.DEPTH_RANGE]?: [number, number] | NumberArray;\n [GL.DEPTH_WRITEMASK]?: boolean;\n [GL.DITHER]?: boolean;\n [GL.FRAGMENT_SHADER_DERIVATIVE_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.CURRENT_PROGRAM]?: WebGLProgram | null;\n [GL.FRAMEBUFFER_BINDING]?: WebGLFramebuffer | null;\n [GL.RENDERBUFFER_BINDING]?: WebGLRenderbuffer | null;\n [GL.TRANSFORM_FEEDBACK_BINDING]?: WebGLTransformFeedback | null;\n [GL.VERTEX_ARRAY_BINDING]?: WebGLVertexArrayObject | null;\n [GL.ARRAY_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_READ_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_WRITE_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_PACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_UNPACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.TEXTURE_BINDING_2D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_2D_ARRAY]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_3D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_CUBE_MAP]?: WebGLTexture | null;\n [GL.FRONT_FACE]?: GL.CW | GL.CCW;\n [GL.GENERATE_MIPMAP_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.LINE_WIDTH]?: number;\n [GL.POLYGON_OFFSET_FILL]?: boolean;\n [GL.POLYGON_OFFSET_FACTOR]?: number;\n [GL.POLYGON_OFFSET_UNITS]?: number;\n [GL.SAMPLE_ALPHA_TO_COVERAGE]?: boolean;\n [GL.SAMPLE_COVERAGE]?: boolean;\n [GL.RASTERIZER_DISCARD]?: boolean;\n [GL.SAMPLE_COVERAGE_VALUE]?: number;\n [GL.SAMPLE_COVERAGE_INVERT]?: boolean;\n [GL.SCISSOR_TEST]?: boolean;\n [GL.SCISSOR_BOX]?: [number, number, number, number] | NumberArray;\n [GL.STENCIL_TEST]?: boolean;\n [GL.STENCIL_CLEAR_VALUE]?: number;\n [GL.STENCIL_WRITEMASK]?: number;\n [GL.STENCIL_BACK_WRITEMASK]?: number;\n [GL.STENCIL_FUNC]?: GLFunction;\n [GL.STENCIL_REF]?: GLFunction;\n [GL.STENCIL_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_BACK_FUNC]?: GLFunction;\n [GL.STENCIL_BACK_REF]?: GLFunction;\n [GL.STENCIL_BACK_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.STENCIL_BACK_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.VIEWPORT]?: [number, number, number, number] | NumberArray;\n\n // WEBGL1 PIXEL PACK/UNPACK MODES\n [GL.PACK_ALIGNMENT]?: number;\n [GL.UNPACK_ALIGNMENT]?: number;\n [GL.UNPACK_FLIP_Y_WEBGL]?: boolean;\n [GL.UNPACK_PREMULTIPLY_ALPHA_WEBGL]?: boolean;\n [GL.UNPACK_COLORSPACE_CONVERSION_WEBGL]?: GL.NONE | GL.BROWSER_DEFAULT_WEBGL;\n\n // WEBGL2 PIXEL PACK/UNPACK MODES\n // RASTERIZER_DISCARD ...\n [GL.PACK_ROW_LENGTH]?: number;\n [GL.PACK_SKIP_PIXELS]?: number;\n [GL.PACK_SKIP_ROWS]?: number;\n [GL.READ_FRAMEBUFFER_BINDING]?: Framebuffer | null;\n [GL.UNPACK_ROW_LENGTH]?: number;\n [GL.UNPACK_IMAGE_HEIGHT]?: number;\n [GL.UNPACK_SKIP_PIXELS]?: number;\n [GL.UNPACK_SKIP_ROWS]?: number;\n [GL.UNPACK_SKIP_IMAGES]?: number;\n};\n\nexport type GLFunctionParameters = {\n // Function-style setters\n framebuffer?: Framebuffer | null;\n blend?: boolean;\n blendColor?: [number, number, number, number] | NumberArray;\n blendEquation?: GLBlendEquation | [GLBlendEquation, GLBlendEquation];\n blendFunc?:\n | [GLBlendFunction, GLBlendFunction]\n | [GLBlendFunction, GLBlendFunction, GLBlendFunction, GLBlendFunction];\n\n clearColor?: [number, number, number, number] | NumberArray;\n clearDepth?: number;\n clearStencil?: number;\n\n colorMask?: [boolean, boolean, boolean, boolean];\n\n cull?: boolean;\n cullFace?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n\n depthTest?: boolean;\n depthFunc?: GLFunction;\n depthMask?: boolean;\n depthRange?: [number, number] | NumberArray;\n\n dither?: boolean;\n\n derivativeHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n frontFace?: GL.CW | GL.CCW;\n\n mipmapHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n lineWidth?: number;\n\n polygonOffsetFill?: boolean;\n polygonOffset?: [number, number];\n\n sampleCoverage?: [number, boolean];\n\n scissorTest?: boolean;\n scissor?: [number, number, number, number] | NumberArray;\n\n stencilTest?: boolean;\n stencilMask?: number | [number, number];\n stencilFunc?:\n | [GLFunction, number, number]\n | [GLFunction, number, number, GLFunction, number, number];\n stencilOp?:\n | [GLStencilOp, GLStencilOp, GLStencilOp]\n | [GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp];\n viewport?: [number, number, number, number] | NumberArray;\n};\n\n/** WebGL style parameters object (with both GL constants and function style fields) */\nexport type GLParameters = GLValueParameters | GLFunctionParameters;\n"],"file":"webgl.js"}
1
+ {"version":3,"sources":["../../../src/types/webgl.ts"],"names":["GL"],"mappings":"AACA,OAAOA,EAAP,MAAe,oBAAf","sourcesContent":["import type {NumberArray} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\n\ntype Framebuffer = any;\n\nexport type GLDrawMode =\n | GL.POINTS\n | GL.LINES\n | GL.LINE_STRIP\n | GL.LINE_LOOP\n | GL.TRIANGLES\n | GL.TRIANGLE_STRIP\n | GL.TRIANGLE_FAN;\n\nexport type GLPrimitive = GL.POINTS | GL.LINES | GL.TRIANGLES;\n\nexport type GLType =\n | GL.FLOAT\n | GL.UNSIGNED_SHORT\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_BYTE\n | GL.BYTE\n | GL.SHORT\n | GL.INT;\n\nexport type GLPackedType =\n | GL.UNSIGNED_SHORT_5_6_5\n | GL.UNSIGNED_SHORT_4_4_4_4\n | GL.UNSIGNED_SHORT_5_5_5_1;\n\nexport type GLUniformType = GLSamplerType | GLCompositeType;\n\nexport type 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// Composite types table\nexport type GLCompositeType =\n | GL.FLOAT\n | GL.FLOAT_VEC2\n | GL.FLOAT_VEC3\n | GL.FLOAT_VEC4\n | GL.INT\n | GL.INT_VEC2\n | GL.INT_VEC3\n | GL.INT_VEC4\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_INT_VEC2\n | GL.UNSIGNED_INT_VEC3\n | GL.UNSIGNED_INT_VEC4\n | GL.BOOL\n | GL.BOOL_VEC2\n | GL.BOOL_VEC3\n | GL.BOOL_VEC4\n | GL.FLOAT_MAT2\n | GL.FLOAT_MAT2x3\n | GL.FLOAT_MAT2x4\n | GL.FLOAT_MAT3x2\n | GL.FLOAT_MAT3\n | GL.FLOAT_MAT3x4\n | GL.FLOAT_MAT4x2\n | GL.FLOAT_MAT4x3\n | GL.FLOAT_MAT4;\n\nexport type GLFunction =\n | GL.NEVER\n | GL.LESS\n | GL.EQUAL\n | GL.LEQUAL\n | GL.GREATER\n | GL.NOTEQUAL\n | GL.GEQUAL\n | GL.ALWAYS;\n\nexport type GLBlendEquation =\n | GL.FUNC_ADD\n | GL.FUNC_SUBTRACT\n | GL.FUNC_REVERSE_SUBTRACT\n | GL.MIN_EXT\n | GL.MAX_EXT;\n\nexport type GLBlendFunction =\n | GL.ZERO\n | GL.ONE\n | GL.SRC_COLOR\n | GL.ONE_MINUS_SRC_COLOR\n | GL.DST_COLOR\n | GL.ONE_MINUS_DST_COLOR\n | GL.SRC_ALPHA\n | GL.ONE_MINUS_SRC_ALPHA\n | GL.DST_ALPHA\n | GL.ONE_MINUS_DST_ALPHA\n | GL.CONSTANT_COLOR\n | GL.ONE_MINUS_CONSTANT_COLOR\n | GL.CONSTANT_ALPHA\n | GL.ONE_MINUS_CONSTANT_ALPHA\n | GL.SRC_ALPHA_SATURATE;\n\nexport type GLStencilOp =\n | GL.KEEP\n | GL.ZERO\n | GL.REPLACE\n | GL.INCR\n | GL.INCR_WRAP\n | GL.DECR\n | GL.DECR_WRAP\n | GL.INVERT;\n\n/** Parameters for textures and samplers */\nexport type GLSamplerParameters = {\n [GL.TEXTURE_WRAP_S]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_T]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_R]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_MAG_FILTER]?: GL.NEAREST | GL.LINEAR;\n [GL.TEXTURE_MIN_FILTER]?:\n | GL.NEAREST\n | GL.LINEAR\n | GL.NEAREST_MIPMAP_NEAREST\n | GL.NEAREST_MIPMAP_LINEAR\n | GL.LINEAR_MIPMAP_NEAREST\n | GL.LINEAR_MIPMAP_LINEAR;\n [GL.TEXTURE_MIN_LOD]?: number;\n [GL.TEXTURE_MAX_LOD]?: number;\n [GL.TEXTURE_COMPARE_FUNC]?: number; // COMPARE_FUNC);\n [GL.TEXTURE_COMPARE_MODE]?: GL.COMPARE_REF_TO_TEXTURE;\n [GL.TEXTURE_MAX_ANISOTROPY_EXT]?: number; //\n};\n\n/**\n * All global WebGL values set by a variety of setter gl.enable ...\n */\nexport type GLValueParameters = {\n [GL.BLEND]?: boolean;\n [GL.BLEND_COLOR]?: [number, number, number, number] | NumberArray;\n [GL.BLEND_EQUATION_RGB]?: GLBlendEquation;\n [GL.BLEND_EQUATION_ALPHA]?: GLBlendEquation;\n [GL.BLEND_SRC_RGB]?: GLBlendFunction;\n [GL.BLEND_DST_RGB]?: GLBlendFunction;\n [GL.BLEND_SRC_ALPHA]?: GLBlendFunction;\n [GL.BLEND_DST_ALPHA]?: GLBlendFunction;\n [GL.COLOR_CLEAR_VALUE]?: [number, number, number, number] | NumberArray;\n [GL.COLOR_WRITEMASK]?: [boolean, boolean, boolean, boolean] | boolean[];\n [GL.CULL_FACE]?: boolean;\n [GL.CULL_FACE_MODE]?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n [GL.DEPTH_TEST]?: boolean;\n [GL.DEPTH_CLEAR_VALUE]?: number;\n [GL.DEPTH_FUNC]?: GLFunction;\n [GL.DEPTH_RANGE]?: [number, number] | NumberArray;\n [GL.DEPTH_WRITEMASK]?: boolean;\n [GL.DITHER]?: boolean;\n [GL.FRAGMENT_SHADER_DERIVATIVE_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.CURRENT_PROGRAM]?: WebGLProgram | null;\n [GL.FRAMEBUFFER_BINDING]?: WebGLFramebuffer | null;\n [GL.RENDERBUFFER_BINDING]?: WebGLRenderbuffer | null;\n [GL.TRANSFORM_FEEDBACK_BINDING]?: WebGLTransformFeedback | null;\n [GL.VERTEX_ARRAY_BINDING]?: WebGLVertexArrayObject | null;\n [GL.ARRAY_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_READ_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_WRITE_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_PACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_UNPACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.TEXTURE_BINDING_2D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_2D_ARRAY]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_3D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_CUBE_MAP]?: WebGLTexture | null;\n [GL.FRONT_FACE]?: GL.CW | GL.CCW;\n [GL.GENERATE_MIPMAP_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.LINE_WIDTH]?: number;\n [GL.POLYGON_OFFSET_FILL]?: boolean;\n [GL.POLYGON_OFFSET_FACTOR]?: number;\n [GL.POLYGON_OFFSET_UNITS]?: number;\n [GL.SAMPLE_ALPHA_TO_COVERAGE]?: boolean;\n [GL.SAMPLE_COVERAGE]?: boolean;\n [GL.RASTERIZER_DISCARD]?: boolean;\n [GL.SAMPLE_COVERAGE_VALUE]?: number;\n [GL.SAMPLE_COVERAGE_INVERT]?: boolean;\n [GL.SCISSOR_TEST]?: boolean;\n [GL.SCISSOR_BOX]?: [number, number, number, number] | NumberArray;\n [GL.STENCIL_TEST]?: boolean;\n [GL.STENCIL_CLEAR_VALUE]?: number;\n [GL.STENCIL_WRITEMASK]?: number;\n [GL.STENCIL_BACK_WRITEMASK]?: number;\n [GL.STENCIL_FUNC]?: GLFunction;\n [GL.STENCIL_REF]?: GLFunction;\n [GL.STENCIL_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_BACK_FUNC]?: GLFunction;\n [GL.STENCIL_BACK_REF]?: GLFunction;\n [GL.STENCIL_BACK_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.STENCIL_BACK_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.VIEWPORT]?: [number, number, number, number] | NumberArray;\n\n // WEBGL1 PIXEL PACK/UNPACK MODES\n [GL.PACK_ALIGNMENT]?: number;\n [GL.UNPACK_ALIGNMENT]?: number;\n [GL.UNPACK_FLIP_Y_WEBGL]?: boolean;\n [GL.UNPACK_PREMULTIPLY_ALPHA_WEBGL]?: boolean;\n [GL.UNPACK_COLORSPACE_CONVERSION_WEBGL]?: GL.NONE | GL.BROWSER_DEFAULT_WEBGL;\n\n // WEBGL2 PIXEL PACK/UNPACK MODES\n // RASTERIZER_DISCARD ...\n [GL.PACK_ROW_LENGTH]?: number;\n [GL.PACK_SKIP_PIXELS]?: number;\n [GL.PACK_SKIP_ROWS]?: number;\n [GL.READ_FRAMEBUFFER_BINDING]?: Framebuffer | null;\n [GL.UNPACK_ROW_LENGTH]?: number;\n [GL.UNPACK_IMAGE_HEIGHT]?: number;\n [GL.UNPACK_SKIP_PIXELS]?: number;\n [GL.UNPACK_SKIP_ROWS]?: number;\n [GL.UNPACK_SKIP_IMAGES]?: number;\n};\n\nexport type GLFunctionParameters = {\n // Function-style setters\n framebuffer?: Framebuffer | null;\n blend?: boolean;\n blendColor?: [number, number, number, number] | NumberArray;\n blendEquation?: GLBlendEquation | [GLBlendEquation, GLBlendEquation];\n blendFunc?:\n | [GLBlendFunction, GLBlendFunction]\n | [GLBlendFunction, GLBlendFunction, GLBlendFunction, GLBlendFunction];\n\n clearColor?: [number, number, number, number] | NumberArray;\n clearDepth?: number;\n clearStencil?: number;\n\n colorMask?: [boolean, boolean, boolean, boolean];\n\n cull?: boolean;\n cullFace?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n\n depthTest?: boolean;\n depthFunc?: GLFunction;\n depthMask?: boolean;\n depthRange?: [number, number] | NumberArray;\n\n dither?: boolean;\n\n derivativeHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n frontFace?: GL.CW | GL.CCW;\n\n mipmapHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n lineWidth?: number;\n\n polygonOffsetFill?: boolean;\n polygonOffset?: [number, number];\n\n sampleCoverage?: [number, boolean];\n\n scissorTest?: boolean;\n scissor?: [number, number, number, number] | NumberArray;\n\n stencilTest?: boolean;\n stencilMask?: number | [number, number];\n stencilFunc?:\n | [GLFunction, number, number]\n | [GLFunction, number, number, GLFunction, number, number];\n stencilOp?:\n | [GLStencilOp, GLStencilOp, GLStencilOp]\n | [GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp];\n viewport?: [number, number, number, number] | NumberArray;\n};\n\n/** WebGL style parameters object (with both GL constants and function style fields) */\nexport type GLParameters = GLValueParameters & GLFunctionParameters;\n"],"file":"webgl.js"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,8 @@
1
1
  import '@luma.gl/api';
2
2
  import './init';
3
+ export type { WebGLLimits } from './adapter/device-helpers/device-limits';
3
4
  export { default as WebGLDevice } from './adapter/webgl-device';
4
5
  export { default as WebGLCanvasContext } from './adapter/webgl-canvas-context';
5
- export { default as Accessor } from './classic/accessor';
6
- export type { ClassicBufferProps as BufferProps } from './classic/buffer';
7
- export { default as Buffer } from './classic/buffer';
8
6
  export { default as WEBGLResource, default as WebGLResource } from './adapter/objects/webgl-resource';
9
7
  export { default as WEBGLBuffer } from './adapter/resources/webgl-buffer';
10
8
  export { default as WEBGLTexture } from './adapter/resources/webgl-texture';
@@ -17,6 +15,9 @@ export { default as WEBGLRenderPass } from './adapter/resources/webgl-render-pas
17
15
  export type { RenderbufferProps } from './adapter/objects/webgl-renderbuffer';
18
16
  export { default as WEBGLRenderbuffer } from './adapter/objects/webgl-renderbuffer';
19
17
  export { default as WEBGLVertexArrayObject } from './adapter/objects/webgl-vertex-array-object';
18
+ export { default as Accessor } from './classic/accessor';
19
+ export type { ClassicBufferProps, ClassicBufferProps as BufferProps } from './classic/buffer';
20
+ export { default as ClassicBuffer, default as Buffer } from './classic/buffer';
20
21
  export { isWebGL, isWebGL2, getWebGL2Context, assertWebGLContext, assertWebGL2Context } from './context/context/webgl-checks';
21
22
  export { cssToDeviceRatio, cssToDevicePixels } from './context/context/device-pixels';
22
23
  export { setDeviceParameters, withDeviceParameters } from './adapter/converters/device-parameters';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,cAAc,CAAC;AACtB,OAAO,QAAQ,CAAA;AAEf,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAG7E,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAC,kBAAkB,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,aAAa,EAAE,OAAO,IAAI,aAAa,EAAC,MAAM,kCAAkC,CAAC;AACpG,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AAGzF,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,uCAAuC,CAAC;AAGjF,YAAY,EAAC,iBAAiB,EAAC,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAC,OAAO,IAAI,sBAAsB,EAAC,MAAM,6CAA6C,CAAC;AAE9F,OAAO,EACL,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAC,gBAAgB,EAAE,iBAAiB,EAAC,MAAM,iCAAiC,CAAC;AAIpF,OAAO,EAAC,mBAAmB,EAAE,oBAAoB,EAAC,MAAM,wCAAwC,CAAC;AAEjG,YAAY,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,EAChB,MAAM,4CAA4C,CAAC;AAEpD,OAAO,EACL,cAAc,EACf,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EAChB,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAC,eAAe,EAAC,MAAM,qCAAqC,CAAC;AAGpE,OAAO,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAC,4BAA4B,EAAC,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,cAAc,CAAC;AACtB,OAAO,QAAQ,CAAA;AAGf,YAAY,EAAC,WAAW,EAAC,MAAM,wCAAwC,CAAC;AAGxE,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAG7E,OAAO,EAAC,OAAO,IAAI,aAAa,EAAE,OAAO,IAAI,aAAa,EAAC,MAAM,kCAAkC,CAAC;AACpG,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AAEzF,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,uCAAuC,CAAC;AAIjF,YAAY,EAAC,iBAAiB,EAAC,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAC,OAAO,IAAI,sBAAsB,EAAC,MAAM,6CAA6C,CAAC;AAG9F,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAC,kBAAkB,EAAE,kBAAkB,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAC,OAAO,IAAI,aAAa,EAAE,OAAO,IAAI,MAAM,EAAC,MAAM,kBAAkB,CAAC;AAE7E,OAAO,EACL,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAC,gBAAgB,EAAE,iBAAiB,EAAC,MAAM,iCAAiC,CAAC;AAIpF,OAAO,EAAC,mBAAmB,EAAE,oBAAoB,EAAC,MAAM,wCAAwC,CAAC;AAEjG,YAAY,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,EAChB,MAAM,4CAA4C,CAAC;AAEpD,OAAO,EACL,cAAc,EACf,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EAChB,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAC,eAAe,EAAC,MAAM,qCAAqC,CAAC;AAGpE,OAAO,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAC,4BAA4B,EAAC,MAAM,sCAAsC,CAAC"}
package/dist/index.js CHANGED
@@ -2,8 +2,6 @@ import '@luma.gl/api';
2
2
  import './init';
3
3
  export { default as WebGLDevice } from './adapter/webgl-device';
4
4
  export { default as WebGLCanvasContext } from './adapter/webgl-canvas-context';
5
- export { default as Accessor } from './classic/accessor';
6
- export { default as Buffer } from './classic/buffer';
7
5
  export { default as WEBGLResource, default as WebGLResource } from './adapter/objects/webgl-resource';
8
6
  export { default as WEBGLBuffer } from './adapter/resources/webgl-buffer';
9
7
  export { default as WEBGLTexture } from './adapter/resources/webgl-texture';
@@ -15,6 +13,8 @@ export { default as WEBGLCommandEncoder } from './adapter/resources/webgl-comman
15
13
  export { default as WEBGLRenderPass } from './adapter/resources/webgl-render-pass';
16
14
  export { default as WEBGLRenderbuffer } from './adapter/objects/webgl-renderbuffer';
17
15
  export { default as WEBGLVertexArrayObject } from './adapter/objects/webgl-vertex-array-object';
16
+ export { default as Accessor } from './classic/accessor';
17
+ export { default as ClassicBuffer, default as Buffer } from './classic/buffer';
18
18
  export { isWebGL, isWebGL2, getWebGL2Context, assertWebGLContext, assertWebGL2Context } from './context/context/webgl-checks';
19
19
  export { cssToDeviceRatio, cssToDevicePixels } from './context/context/device-pixels';
20
20
  export { setDeviceParameters, withDeviceParameters } from './adapter/converters/device-parameters';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["default","WebGLDevice","WebGLCanvasContext","Accessor","Buffer","WEBGLResource","WebGLResource","WEBGLBuffer","WEBGLTexture","WEBGLShader","WEBGLSampler","WEBGLFramebuffer","WEBGLRenderPipeline","WEBGLCommandEncoder","WEBGLRenderPass","WEBGLRenderbuffer","WEBGLVertexArrayObject","isWebGL","isWebGL2","getWebGL2Context","assertWebGLContext","assertWebGL2Context","cssToDeviceRatio","cssToDevicePixels","setDeviceParameters","withDeviceParameters","getParameters","setParameters","resetParameters","withParameters","trackContextState","pushContextState","popContextState","polyfillContext","getShaderLayout","getProgramBindings","_checkFloat32ColorAttachment"],"mappings":"AAOA,OAAO,cAAP;AACA,OAAO,QAAP;AAEA,SAAQA,OAAO,IAAIC,WAAnB,QAAqC,wBAArC;AACA,SAAQD,OAAO,IAAIE,kBAAnB,QAA4C,gCAA5C;AAGA,SAAQF,OAAO,IAAIG,QAAnB,QAAkC,oBAAlC;AAEA,SAAQH,OAAO,IAAII,MAAnB,QAAgC,kBAAhC;AACA,SAAQJ,OAAO,IAAIK,aAAnB,EAAkCL,OAAO,IAAIM,aAA7C,QAAiE,kCAAjE;AACA,SAAQN,OAAO,IAAIO,WAAnB,QAAqC,kCAArC;AACA,SAAQP,OAAO,IAAIQ,YAAnB,QAAsC,mCAAtC;AAEA,SAAQR,OAAO,IAAIS,WAAnB,QAAqC,kCAArC;AACA,SAAQT,OAAO,IAAIU,YAAnB,QAAsC,mCAAtC;AACA,SAAQV,OAAO,IAAIW,gBAAnB,QAA0C,uCAA1C;AAEA,SAAQX,OAAO,IAAIY,mBAAnB,QAA6C,2CAA7C;AAGA,SAAQZ,OAAO,IAAIa,mBAAnB,QAA6C,2CAA7C;AACA,SAAQb,OAAO,IAAIc,eAAnB,QAAyC,uCAAzC;AAIA,SAAQd,OAAO,IAAIe,iBAAnB,QAA2C,sCAA3C;AACA,SAAQf,OAAO,IAAIgB,sBAAnB,QAAgD,6CAAhD;AAEA,SACEC,OADF,EAEEC,QAFF,EAGEC,gBAHF,EAIEC,kBAJF,EAKEC,mBALF,QAMO,gCANP;AASA,SAAQC,gBAAR,EAA0BC,iBAA1B,QAAkD,iCAAlD;AAIA,SAAQC,mBAAR,EAA6BC,oBAA7B,QAAwD,wCAAxD;AAGA,SACEC,aADF,EAEEC,aAFF,EAGEC,eAHF,QAIO,4CAJP;AAMA,SACEC,cADF,QAEO,yCAFP;AAKA,SACEC,iBADF,EAEEC,gBAFF,EAGEC,eAHF,QAIO,6CAJP;AAOA,SAAQC,eAAR,QAA8B,qCAA9B;AAGA,SAAQC,eAAR,EAAyBC,kBAAzB,QAAkD,qCAAlD;AACA,SAAQC,4BAAR,QAA2C,sCAA3C","sourcesContent":["// luma.gl Base WebGL wrapper library\n// Provides simple class/function wrappers around the low level webgl objects\n// These classes are intentionally close to the WebGL API\n// but make it easier to use.\n// Higher level abstractions can be built on these classes\n\n// Initialize any global state\nimport '@luma.gl/api';\nimport './init'\n\nexport {default as WebGLDevice} from './adapter/webgl-device';\nexport {default as WebGLCanvasContext} from './adapter/webgl-canvas-context';\n\n// Legacy WebGL Classes - will be moved to gltools\nexport {default as Accessor} from './classic/accessor';\nexport type {ClassicBufferProps as BufferProps} from './classic/buffer';\nexport {default as Buffer} from './classic/buffer';\nexport {default as WEBGLResource, default as WebGLResource} from './adapter/objects/webgl-resource';\nexport {default as WEBGLBuffer} from './adapter/resources/webgl-buffer';\nexport {default as WEBGLTexture} from './adapter/resources/webgl-texture';\n// export {default as WEBGLExternalTexture} from './adapter/resources/webgl-external-texture';\nexport {default as WEBGLShader} from './adapter/resources/webgl-shader';\nexport {default as WEBGLSampler} from './adapter/resources/webgl-sampler';\nexport {default as WEBGLFramebuffer} from './adapter/resources/webgl-framebuffer';\n\nexport {default as WEBGLRenderPipeline} from './adapter/resources/webgl-render-pipeline';\n\n// export {default as WEBGLComputePipeline} from './adapter/resources/webgl-compute-pipeline';\nexport {default as WEBGLCommandEncoder} from './adapter/resources/webgl-command-encoder';\nexport {default as WEBGLRenderPass} from './adapter/resources/webgl-render-pass';\n//export {default as WEBGLComputePass} from './adapter/resources/webgl-compute-pass';\n\nexport type {RenderbufferProps} from './adapter/objects/webgl-renderbuffer';\nexport {default as WEBGLRenderbuffer} from './adapter/objects/webgl-renderbuffer';\nexport {default as WEBGLVertexArrayObject} from './adapter/objects/webgl-vertex-array-object';\n\nexport {\n isWebGL,\n isWebGL2,\n getWebGL2Context,\n assertWebGLContext,\n assertWebGL2Context\n} from './context/context/webgl-checks';\n\n// Device ratio\nexport {cssToDeviceRatio, cssToDevicePixels} from './context/context/device-pixels';\n\n// Unified parameter API\n\nexport {setDeviceParameters, withDeviceParameters} from './adapter/converters/device-parameters';\n\nexport type {GLParameters} from './types/webgl';\nexport {\n getParameters,\n setParameters,\n resetParameters\n} from './context/parameters/unified-parameter-api';\n\nexport {\n withParameters\n} from './context/state-tracker/with-parameters';\n\n// State tracking\nexport {\n trackContextState,\n pushContextState,\n popContextState\n} from './context/state-tracker/track-context-state';\n\n// Polyfills (supports a subset of WebGL2 APIs on WebGL1 contexts)\nexport {polyfillContext} from './context/polyfill/polyfill-context';\n\n// HELPERS - EXPERIMENTAL\nexport {getShaderLayout, getProgramBindings} from './adapter/helpers/get-shader-layout';\nexport {_checkFloat32ColorAttachment} from './adapter/converters/texture-formats';\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.ts"],"names":["default","WebGLDevice","WebGLCanvasContext","WEBGLResource","WebGLResource","WEBGLBuffer","WEBGLTexture","WEBGLShader","WEBGLSampler","WEBGLFramebuffer","WEBGLRenderPipeline","WEBGLCommandEncoder","WEBGLRenderPass","WEBGLRenderbuffer","WEBGLVertexArrayObject","Accessor","ClassicBuffer","Buffer","isWebGL","isWebGL2","getWebGL2Context","assertWebGLContext","assertWebGL2Context","cssToDeviceRatio","cssToDevicePixels","setDeviceParameters","withDeviceParameters","getParameters","setParameters","resetParameters","withParameters","trackContextState","pushContextState","popContextState","polyfillContext","getShaderLayout","getProgramBindings","_checkFloat32ColorAttachment"],"mappings":"AAOA,OAAO,cAAP;AACA,OAAO,QAAP;AAMA,SAAQA,OAAO,IAAIC,WAAnB,QAAqC,wBAArC;AACA,SAAQD,OAAO,IAAIE,kBAAnB,QAA4C,gCAA5C;AAGA,SAAQF,OAAO,IAAIG,aAAnB,EAAkCH,OAAO,IAAII,aAA7C,QAAiE,kCAAjE;AACA,SAAQJ,OAAO,IAAIK,WAAnB,QAAqC,kCAArC;AACA,SAAQL,OAAO,IAAIM,YAAnB,QAAsC,mCAAtC;AAEA,SAAQN,OAAO,IAAIO,WAAnB,QAAqC,kCAArC;AACA,SAAQP,OAAO,IAAIQ,YAAnB,QAAsC,mCAAtC;AACA,SAAQR,OAAO,IAAIS,gBAAnB,QAA0C,uCAA1C;AAEA,SAAQT,OAAO,IAAIU,mBAAnB,QAA6C,2CAA7C;AAEA,SAAQV,OAAO,IAAIW,mBAAnB,QAA6C,2CAA7C;AACA,SAAQX,OAAO,IAAIY,eAAnB,QAAyC,uCAAzC;AAKA,SAAQZ,OAAO,IAAIa,iBAAnB,QAA2C,sCAA3C;AACA,SAAQb,OAAO,IAAIc,sBAAnB,QAAgD,6CAAhD;AAGA,SAAQd,OAAO,IAAIe,QAAnB,QAAkC,oBAAlC;AAEA,SAAQf,OAAO,IAAIgB,aAAnB,EAAkChB,OAAO,IAAIiB,MAA7C,QAA0D,kBAA1D;AAEA,SACEC,OADF,EAEEC,QAFF,EAGEC,gBAHF,EAIEC,kBAJF,EAKEC,mBALF,QAMO,gCANP;AASA,SAAQC,gBAAR,EAA0BC,iBAA1B,QAAkD,iCAAlD;AAIA,SAAQC,mBAAR,EAA6BC,oBAA7B,QAAwD,wCAAxD;AAGA,SACEC,aADF,EAEEC,aAFF,EAGEC,eAHF,QAIO,4CAJP;AAMA,SACEC,cADF,QAEO,yCAFP;AAKA,SACEC,iBADF,EAEEC,gBAFF,EAGEC,eAHF,QAIO,6CAJP;AAOA,SAAQC,eAAR,QAA8B,qCAA9B;AAGA,SAAQC,eAAR,EAAyBC,kBAAzB,QAAkD,qCAAlD;AACA,SAAQC,4BAAR,QAA2C,sCAA3C","sourcesContent":["// luma.gl Base WebGL wrapper library\n// Provides simple class/function wrappers around the low level webgl objects\n// These classes are intentionally close to the WebGL API\n// but make it easier to use.\n// Higher level abstractions can be built on these classes\n\n// Initialize any global state\nimport '@luma.gl/api';\nimport './init'\n\n// Types\nexport type {WebGLLimits} from './adapter/device-helpers/device-limits';\n\n// WebGL adapter classes\nexport {default as WebGLDevice} from './adapter/webgl-device';\nexport {default as WebGLCanvasContext} from './adapter/webgl-canvas-context';\n\n// WebGL Resource classes\nexport {default as WEBGLResource, default as WebGLResource} from './adapter/objects/webgl-resource';\nexport {default as WEBGLBuffer} from './adapter/resources/webgl-buffer';\nexport {default as WEBGLTexture} from './adapter/resources/webgl-texture';\n// export {default as WEBGLExternalTexture} from './adapter/resources/webgl-external-texture';\nexport {default as WEBGLShader} from './adapter/resources/webgl-shader';\nexport {default as WEBGLSampler} from './adapter/resources/webgl-sampler';\nexport {default as WEBGLFramebuffer} from './adapter/resources/webgl-framebuffer';\n\nexport {default as WEBGLRenderPipeline} from './adapter/resources/webgl-render-pipeline';\n// export {default as WEBGLComputePipeline} from './adapter/resources/webgl-compute-pipeline';\nexport {default as WEBGLCommandEncoder} from './adapter/resources/webgl-command-encoder';\nexport {default as WEBGLRenderPass} from './adapter/resources/webgl-render-pass';\n//export {default as WEBGLComputePass} from './adapter/resources/webgl-compute-pass';\n\n// non-api resources\nexport type {RenderbufferProps} from './adapter/objects/webgl-renderbuffer';\nexport {default as WEBGLRenderbuffer} from './adapter/objects/webgl-renderbuffer';\nexport {default as WEBGLVertexArrayObject} from './adapter/objects/webgl-vertex-array-object';\n\n// WebGL adapter classes (Legacy, will be moved to gltools)\nexport {default as Accessor} from './classic/accessor';\nexport type {ClassicBufferProps, ClassicBufferProps as BufferProps} from './classic/buffer';\nexport {default as ClassicBuffer, default as Buffer} from './classic/buffer';\n\nexport {\n isWebGL,\n isWebGL2,\n getWebGL2Context,\n assertWebGLContext,\n assertWebGL2Context\n} from './context/context/webgl-checks';\n\n// Device ratio\nexport {cssToDeviceRatio, cssToDevicePixels} from './context/context/device-pixels';\n\n// Unified parameter API\n\nexport {setDeviceParameters, withDeviceParameters} from './adapter/converters/device-parameters';\n\nexport type {GLParameters} from './types/webgl';\nexport {\n getParameters,\n setParameters,\n resetParameters\n} from './context/parameters/unified-parameter-api';\n\nexport {\n withParameters\n} from './context/state-tracker/with-parameters';\n\n// State tracking\nexport {\n trackContextState,\n pushContextState,\n popContextState\n} from './context/state-tracker/track-context-state';\n\n// Polyfills (supports a subset of WebGL2 APIs on WebGL1 contexts)\nexport {polyfillContext} from './context/polyfill/polyfill-context';\n\n// HELPERS - EXPERIMENTAL\nexport {getShaderLayout, getProgramBindings} from './adapter/helpers/get-shader-layout';\nexport {_checkFloat32ColorAttachment} from './adapter/converters/texture-formats';\n"],"file":"index.js"}
@@ -13,7 +13,7 @@ export declare type GLBlendEquation = GL.FUNC_ADD | GL.FUNC_SUBTRACT | GL.FUNC_R
13
13
  export declare type GLBlendFunction = GL.ZERO | GL.ONE | GL.SRC_COLOR | GL.ONE_MINUS_SRC_COLOR | GL.DST_COLOR | GL.ONE_MINUS_DST_COLOR | GL.SRC_ALPHA | GL.ONE_MINUS_SRC_ALPHA | GL.DST_ALPHA | GL.ONE_MINUS_DST_ALPHA | GL.CONSTANT_COLOR | GL.ONE_MINUS_CONSTANT_COLOR | GL.CONSTANT_ALPHA | GL.ONE_MINUS_CONSTANT_ALPHA | GL.SRC_ALPHA_SATURATE;
14
14
  export declare type GLStencilOp = GL.KEEP | GL.ZERO | GL.REPLACE | GL.INCR | GL.INCR_WRAP | GL.DECR | GL.DECR_WRAP | GL.INVERT;
15
15
  /** Parameters for textures and samplers */
16
- export declare type WebGLSamplerParameters = {
16
+ export declare type GLSamplerParameters = {
17
17
  [GL.TEXTURE_WRAP_S]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;
18
18
  [GL.TEXTURE_WRAP_T]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;
19
19
  [GL.TEXTURE_WRAP_R]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;
@@ -140,6 +140,6 @@ export declare type GLFunctionParameters = {
140
140
  viewport?: [number, number, number, number] | NumberArray;
141
141
  };
142
142
  /** WebGL style parameters object (with both GL constants and function style fields) */
143
- export declare type GLParameters = GLValueParameters | GLFunctionParameters;
143
+ export declare type GLParameters = GLValueParameters & GLFunctionParameters;
144
144
  export {};
145
145
  //# sourceMappingURL=webgl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"webgl.d.ts","sourceRoot":"","sources":["../../src/types/webgl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webgl.d.ts","sourceRoot":"","sources":["../../src/types/webgl.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/types/webgl.ts"],"names":["GL"],"mappings":"AACA,OAAOA,EAAP,MAAe,oBAAf","sourcesContent":["import type {NumberArray} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\n\ntype Framebuffer = any;\n\nexport type GLDrawMode =\n | GL.POINTS\n | GL.LINES\n | GL.LINE_STRIP\n | GL.LINE_LOOP\n | GL.TRIANGLES\n | GL.TRIANGLE_STRIP\n | GL.TRIANGLE_FAN;\n\nexport type GLPrimitive = GL.POINTS | GL.LINES | GL.TRIANGLES;\n\nexport type GLType =\n | GL.FLOAT\n | GL.UNSIGNED_SHORT\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_BYTE\n | GL.BYTE\n | GL.SHORT\n | GL.INT;\n\nexport type GLPackedType =\n | GL.UNSIGNED_SHORT_5_6_5\n | GL.UNSIGNED_SHORT_4_4_4_4\n | GL.UNSIGNED_SHORT_5_5_5_1;\n\nexport type GLUniformType = GLSamplerType | GLCompositeType;\n\nexport type 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// Composite types table\nexport type GLCompositeType =\n | GL.FLOAT\n | GL.FLOAT_VEC2\n | GL.FLOAT_VEC3\n | GL.FLOAT_VEC4\n | GL.INT\n | GL.INT_VEC2\n | GL.INT_VEC3\n | GL.INT_VEC4\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_INT_VEC2\n | GL.UNSIGNED_INT_VEC3\n | GL.UNSIGNED_INT_VEC4\n | GL.BOOL\n | GL.BOOL_VEC2\n | GL.BOOL_VEC3\n | GL.BOOL_VEC4\n | GL.FLOAT_MAT2\n | GL.FLOAT_MAT2x3\n | GL.FLOAT_MAT2x4\n | GL.FLOAT_MAT3x2\n | GL.FLOAT_MAT3\n | GL.FLOAT_MAT3x4\n | GL.FLOAT_MAT4x2\n | GL.FLOAT_MAT4x3\n | GL.FLOAT_MAT4;\n\nexport type GLFunction =\n | GL.NEVER\n | GL.LESS\n | GL.EQUAL\n | GL.LEQUAL\n | GL.GREATER\n | GL.NOTEQUAL\n | GL.GEQUAL\n | GL.ALWAYS;\n\nexport type GLBlendEquation =\n | GL.FUNC_ADD\n | GL.FUNC_SUBTRACT\n | GL.FUNC_REVERSE_SUBTRACT\n | GL.MIN_EXT\n | GL.MAX_EXT;\n\nexport type GLBlendFunction =\n | GL.ZERO\n | GL.ONE\n | GL.SRC_COLOR\n | GL.ONE_MINUS_SRC_COLOR\n | GL.DST_COLOR\n | GL.ONE_MINUS_DST_COLOR\n | GL.SRC_ALPHA\n | GL.ONE_MINUS_SRC_ALPHA\n | GL.DST_ALPHA\n | GL.ONE_MINUS_DST_ALPHA\n | GL.CONSTANT_COLOR\n | GL.ONE_MINUS_CONSTANT_COLOR\n | GL.CONSTANT_ALPHA\n | GL.ONE_MINUS_CONSTANT_ALPHA\n | GL.SRC_ALPHA_SATURATE;\n\nexport type GLStencilOp =\n | GL.KEEP\n | GL.ZERO\n | GL.REPLACE\n | GL.INCR\n | GL.INCR_WRAP\n | GL.DECR\n | GL.DECR_WRAP\n | GL.INVERT;\n\n/** Parameters for textures and samplers */\nexport type WebGLSamplerParameters = {\n [GL.TEXTURE_WRAP_S]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_T]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_R]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_MAG_FILTER]?: GL.NEAREST | GL.LINEAR;\n [GL.TEXTURE_MIN_FILTER]?:\n | GL.NEAREST\n | GL.LINEAR\n | GL.NEAREST_MIPMAP_NEAREST\n | GL.NEAREST_MIPMAP_LINEAR\n | GL.LINEAR_MIPMAP_NEAREST\n | GL.LINEAR_MIPMAP_LINEAR;\n [GL.TEXTURE_MIN_LOD]?: number;\n [GL.TEXTURE_MAX_LOD]?: number;\n [GL.TEXTURE_COMPARE_FUNC]?: number; // COMPARE_FUNC);\n [GL.TEXTURE_COMPARE_MODE]?: GL.COMPARE_REF_TO_TEXTURE;\n [GL.TEXTURE_MAX_ANISOTROPY_EXT]?: number; //\n};\n\n/**\n * All global WebGL values set by a variety of setter gl.enable ...\n */\nexport type GLValueParameters = {\n [GL.BLEND]?: boolean;\n [GL.BLEND_COLOR]?: [number, number, number, number] | NumberArray;\n [GL.BLEND_EQUATION_RGB]?: GLBlendEquation;\n [GL.BLEND_EQUATION_ALPHA]?: GLBlendEquation;\n [GL.BLEND_SRC_RGB]?: GLBlendFunction;\n [GL.BLEND_DST_RGB]?: GLBlendFunction;\n [GL.BLEND_SRC_ALPHA]?: GLBlendFunction;\n [GL.BLEND_DST_ALPHA]?: GLBlendFunction;\n [GL.COLOR_CLEAR_VALUE]?: [number, number, number, number] | NumberArray;\n [GL.COLOR_WRITEMASK]?: [boolean, boolean, boolean, boolean] | boolean[];\n [GL.CULL_FACE]?: boolean;\n [GL.CULL_FACE_MODE]?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n [GL.DEPTH_TEST]?: boolean;\n [GL.DEPTH_CLEAR_VALUE]?: number;\n [GL.DEPTH_FUNC]?: GLFunction;\n [GL.DEPTH_RANGE]?: [number, number] | NumberArray;\n [GL.DEPTH_WRITEMASK]?: boolean;\n [GL.DITHER]?: boolean;\n [GL.FRAGMENT_SHADER_DERIVATIVE_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.CURRENT_PROGRAM]?: WebGLProgram | null;\n [GL.FRAMEBUFFER_BINDING]?: WebGLFramebuffer | null;\n [GL.RENDERBUFFER_BINDING]?: WebGLRenderbuffer | null;\n [GL.TRANSFORM_FEEDBACK_BINDING]?: WebGLTransformFeedback | null;\n [GL.VERTEX_ARRAY_BINDING]?: WebGLVertexArrayObject | null;\n [GL.ARRAY_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_READ_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_WRITE_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_PACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_UNPACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.TEXTURE_BINDING_2D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_2D_ARRAY]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_3D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_CUBE_MAP]?: WebGLTexture | null;\n [GL.FRONT_FACE]?: GL.CW | GL.CCW;\n [GL.GENERATE_MIPMAP_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.LINE_WIDTH]?: number;\n [GL.POLYGON_OFFSET_FILL]?: boolean;\n [GL.POLYGON_OFFSET_FACTOR]?: number;\n [GL.POLYGON_OFFSET_UNITS]?: number;\n [GL.SAMPLE_ALPHA_TO_COVERAGE]?: boolean;\n [GL.SAMPLE_COVERAGE]?: boolean;\n [GL.RASTERIZER_DISCARD]?: boolean;\n [GL.SAMPLE_COVERAGE_VALUE]?: number;\n [GL.SAMPLE_COVERAGE_INVERT]?: boolean;\n [GL.SCISSOR_TEST]?: boolean;\n [GL.SCISSOR_BOX]?: [number, number, number, number] | NumberArray;\n [GL.STENCIL_TEST]?: boolean;\n [GL.STENCIL_CLEAR_VALUE]?: number;\n [GL.STENCIL_WRITEMASK]?: number;\n [GL.STENCIL_BACK_WRITEMASK]?: number;\n [GL.STENCIL_FUNC]?: GLFunction;\n [GL.STENCIL_REF]?: GLFunction;\n [GL.STENCIL_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_BACK_FUNC]?: GLFunction;\n [GL.STENCIL_BACK_REF]?: GLFunction;\n [GL.STENCIL_BACK_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.STENCIL_BACK_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.VIEWPORT]?: [number, number, number, number] | NumberArray;\n\n // WEBGL1 PIXEL PACK/UNPACK MODES\n [GL.PACK_ALIGNMENT]?: number;\n [GL.UNPACK_ALIGNMENT]?: number;\n [GL.UNPACK_FLIP_Y_WEBGL]?: boolean;\n [GL.UNPACK_PREMULTIPLY_ALPHA_WEBGL]?: boolean;\n [GL.UNPACK_COLORSPACE_CONVERSION_WEBGL]?: GL.NONE | GL.BROWSER_DEFAULT_WEBGL;\n\n // WEBGL2 PIXEL PACK/UNPACK MODES\n // RASTERIZER_DISCARD ...\n [GL.PACK_ROW_LENGTH]?: number;\n [GL.PACK_SKIP_PIXELS]?: number;\n [GL.PACK_SKIP_ROWS]?: number;\n [GL.READ_FRAMEBUFFER_BINDING]?: Framebuffer | null;\n [GL.UNPACK_ROW_LENGTH]?: number;\n [GL.UNPACK_IMAGE_HEIGHT]?: number;\n [GL.UNPACK_SKIP_PIXELS]?: number;\n [GL.UNPACK_SKIP_ROWS]?: number;\n [GL.UNPACK_SKIP_IMAGES]?: number;\n};\n\nexport type GLFunctionParameters = {\n // Function-style setters\n framebuffer?: Framebuffer | null;\n blend?: boolean;\n blendColor?: [number, number, number, number] | NumberArray;\n blendEquation?: GLBlendEquation | [GLBlendEquation, GLBlendEquation];\n blendFunc?:\n | [GLBlendFunction, GLBlendFunction]\n | [GLBlendFunction, GLBlendFunction, GLBlendFunction, GLBlendFunction];\n\n clearColor?: [number, number, number, number] | NumberArray;\n clearDepth?: number;\n clearStencil?: number;\n\n colorMask?: [boolean, boolean, boolean, boolean];\n\n cull?: boolean;\n cullFace?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n\n depthTest?: boolean;\n depthFunc?: GLFunction;\n depthMask?: boolean;\n depthRange?: [number, number] | NumberArray;\n\n dither?: boolean;\n\n derivativeHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n frontFace?: GL.CW | GL.CCW;\n\n mipmapHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n lineWidth?: number;\n\n polygonOffsetFill?: boolean;\n polygonOffset?: [number, number];\n\n sampleCoverage?: [number, boolean];\n\n scissorTest?: boolean;\n scissor?: [number, number, number, number] | NumberArray;\n\n stencilTest?: boolean;\n stencilMask?: number | [number, number];\n stencilFunc?:\n | [GLFunction, number, number]\n | [GLFunction, number, number, GLFunction, number, number];\n stencilOp?:\n | [GLStencilOp, GLStencilOp, GLStencilOp]\n | [GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp];\n viewport?: [number, number, number, number] | NumberArray;\n};\n\n/** WebGL style parameters object (with both GL constants and function style fields) */\nexport type GLParameters = GLValueParameters | GLFunctionParameters;\n"],"file":"webgl.js"}
1
+ {"version":3,"sources":["../../src/types/webgl.ts"],"names":["GL"],"mappings":"AACA,OAAOA,EAAP,MAAe,oBAAf","sourcesContent":["import type {NumberArray} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\n\ntype Framebuffer = any;\n\nexport type GLDrawMode =\n | GL.POINTS\n | GL.LINES\n | GL.LINE_STRIP\n | GL.LINE_LOOP\n | GL.TRIANGLES\n | GL.TRIANGLE_STRIP\n | GL.TRIANGLE_FAN;\n\nexport type GLPrimitive = GL.POINTS | GL.LINES | GL.TRIANGLES;\n\nexport type GLType =\n | GL.FLOAT\n | GL.UNSIGNED_SHORT\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_BYTE\n | GL.BYTE\n | GL.SHORT\n | GL.INT;\n\nexport type GLPackedType =\n | GL.UNSIGNED_SHORT_5_6_5\n | GL.UNSIGNED_SHORT_4_4_4_4\n | GL.UNSIGNED_SHORT_5_5_5_1;\n\nexport type GLUniformType = GLSamplerType | GLCompositeType;\n\nexport type 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// Composite types table\nexport type GLCompositeType =\n | GL.FLOAT\n | GL.FLOAT_VEC2\n | GL.FLOAT_VEC3\n | GL.FLOAT_VEC4\n | GL.INT\n | GL.INT_VEC2\n | GL.INT_VEC3\n | GL.INT_VEC4\n | GL.UNSIGNED_INT\n | GL.UNSIGNED_INT_VEC2\n | GL.UNSIGNED_INT_VEC3\n | GL.UNSIGNED_INT_VEC4\n | GL.BOOL\n | GL.BOOL_VEC2\n | GL.BOOL_VEC3\n | GL.BOOL_VEC4\n | GL.FLOAT_MAT2\n | GL.FLOAT_MAT2x3\n | GL.FLOAT_MAT2x4\n | GL.FLOAT_MAT3x2\n | GL.FLOAT_MAT3\n | GL.FLOAT_MAT3x4\n | GL.FLOAT_MAT4x2\n | GL.FLOAT_MAT4x3\n | GL.FLOAT_MAT4;\n\nexport type GLFunction =\n | GL.NEVER\n | GL.LESS\n | GL.EQUAL\n | GL.LEQUAL\n | GL.GREATER\n | GL.NOTEQUAL\n | GL.GEQUAL\n | GL.ALWAYS;\n\nexport type GLBlendEquation =\n | GL.FUNC_ADD\n | GL.FUNC_SUBTRACT\n | GL.FUNC_REVERSE_SUBTRACT\n | GL.MIN_EXT\n | GL.MAX_EXT;\n\nexport type GLBlendFunction =\n | GL.ZERO\n | GL.ONE\n | GL.SRC_COLOR\n | GL.ONE_MINUS_SRC_COLOR\n | GL.DST_COLOR\n | GL.ONE_MINUS_DST_COLOR\n | GL.SRC_ALPHA\n | GL.ONE_MINUS_SRC_ALPHA\n | GL.DST_ALPHA\n | GL.ONE_MINUS_DST_ALPHA\n | GL.CONSTANT_COLOR\n | GL.ONE_MINUS_CONSTANT_COLOR\n | GL.CONSTANT_ALPHA\n | GL.ONE_MINUS_CONSTANT_ALPHA\n | GL.SRC_ALPHA_SATURATE;\n\nexport type GLStencilOp =\n | GL.KEEP\n | GL.ZERO\n | GL.REPLACE\n | GL.INCR\n | GL.INCR_WRAP\n | GL.DECR\n | GL.DECR_WRAP\n | GL.INVERT;\n\n/** Parameters for textures and samplers */\nexport type GLSamplerParameters = {\n [GL.TEXTURE_WRAP_S]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_T]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_WRAP_R]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;\n [GL.TEXTURE_MAG_FILTER]?: GL.NEAREST | GL.LINEAR;\n [GL.TEXTURE_MIN_FILTER]?:\n | GL.NEAREST\n | GL.LINEAR\n | GL.NEAREST_MIPMAP_NEAREST\n | GL.NEAREST_MIPMAP_LINEAR\n | GL.LINEAR_MIPMAP_NEAREST\n | GL.LINEAR_MIPMAP_LINEAR;\n [GL.TEXTURE_MIN_LOD]?: number;\n [GL.TEXTURE_MAX_LOD]?: number;\n [GL.TEXTURE_COMPARE_FUNC]?: number; // COMPARE_FUNC);\n [GL.TEXTURE_COMPARE_MODE]?: GL.COMPARE_REF_TO_TEXTURE;\n [GL.TEXTURE_MAX_ANISOTROPY_EXT]?: number; //\n};\n\n/**\n * All global WebGL values set by a variety of setter gl.enable ...\n */\nexport type GLValueParameters = {\n [GL.BLEND]?: boolean;\n [GL.BLEND_COLOR]?: [number, number, number, number] | NumberArray;\n [GL.BLEND_EQUATION_RGB]?: GLBlendEquation;\n [GL.BLEND_EQUATION_ALPHA]?: GLBlendEquation;\n [GL.BLEND_SRC_RGB]?: GLBlendFunction;\n [GL.BLEND_DST_RGB]?: GLBlendFunction;\n [GL.BLEND_SRC_ALPHA]?: GLBlendFunction;\n [GL.BLEND_DST_ALPHA]?: GLBlendFunction;\n [GL.COLOR_CLEAR_VALUE]?: [number, number, number, number] | NumberArray;\n [GL.COLOR_WRITEMASK]?: [boolean, boolean, boolean, boolean] | boolean[];\n [GL.CULL_FACE]?: boolean;\n [GL.CULL_FACE_MODE]?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n [GL.DEPTH_TEST]?: boolean;\n [GL.DEPTH_CLEAR_VALUE]?: number;\n [GL.DEPTH_FUNC]?: GLFunction;\n [GL.DEPTH_RANGE]?: [number, number] | NumberArray;\n [GL.DEPTH_WRITEMASK]?: boolean;\n [GL.DITHER]?: boolean;\n [GL.FRAGMENT_SHADER_DERIVATIVE_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.CURRENT_PROGRAM]?: WebGLProgram | null;\n [GL.FRAMEBUFFER_BINDING]?: WebGLFramebuffer | null;\n [GL.RENDERBUFFER_BINDING]?: WebGLRenderbuffer | null;\n [GL.TRANSFORM_FEEDBACK_BINDING]?: WebGLTransformFeedback | null;\n [GL.VERTEX_ARRAY_BINDING]?: WebGLVertexArrayObject | null;\n [GL.ARRAY_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_READ_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.COPY_WRITE_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_PACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.PIXEL_UNPACK_BUFFER_BINDING]?: WebGLBuffer | null;\n [GL.TEXTURE_BINDING_2D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_2D_ARRAY]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_3D]?: WebGLTexture | null;\n [GL.TEXTURE_BINDING_CUBE_MAP]?: WebGLTexture | null;\n [GL.FRONT_FACE]?: GL.CW | GL.CCW;\n [GL.GENERATE_MIPMAP_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n [GL.LINE_WIDTH]?: number;\n [GL.POLYGON_OFFSET_FILL]?: boolean;\n [GL.POLYGON_OFFSET_FACTOR]?: number;\n [GL.POLYGON_OFFSET_UNITS]?: number;\n [GL.SAMPLE_ALPHA_TO_COVERAGE]?: boolean;\n [GL.SAMPLE_COVERAGE]?: boolean;\n [GL.RASTERIZER_DISCARD]?: boolean;\n [GL.SAMPLE_COVERAGE_VALUE]?: number;\n [GL.SAMPLE_COVERAGE_INVERT]?: boolean;\n [GL.SCISSOR_TEST]?: boolean;\n [GL.SCISSOR_BOX]?: [number, number, number, number] | NumberArray;\n [GL.STENCIL_TEST]?: boolean;\n [GL.STENCIL_CLEAR_VALUE]?: number;\n [GL.STENCIL_WRITEMASK]?: number;\n [GL.STENCIL_BACK_WRITEMASK]?: number;\n [GL.STENCIL_FUNC]?: GLFunction;\n [GL.STENCIL_REF]?: GLFunction;\n [GL.STENCIL_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_BACK_FUNC]?: GLFunction;\n [GL.STENCIL_BACK_REF]?: GLFunction;\n [GL.STENCIL_BACK_VALUE_MASK]?: GLFunction;\n [GL.STENCIL_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.STENCIL_BACK_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_FAIL]?: GLStencilOp;\n [GL.STENCIL_BACK_PASS_DEPTH_PASS]?: GLStencilOp;\n [GL.VIEWPORT]?: [number, number, number, number] | NumberArray;\n\n // WEBGL1 PIXEL PACK/UNPACK MODES\n [GL.PACK_ALIGNMENT]?: number;\n [GL.UNPACK_ALIGNMENT]?: number;\n [GL.UNPACK_FLIP_Y_WEBGL]?: boolean;\n [GL.UNPACK_PREMULTIPLY_ALPHA_WEBGL]?: boolean;\n [GL.UNPACK_COLORSPACE_CONVERSION_WEBGL]?: GL.NONE | GL.BROWSER_DEFAULT_WEBGL;\n\n // WEBGL2 PIXEL PACK/UNPACK MODES\n // RASTERIZER_DISCARD ...\n [GL.PACK_ROW_LENGTH]?: number;\n [GL.PACK_SKIP_PIXELS]?: number;\n [GL.PACK_SKIP_ROWS]?: number;\n [GL.READ_FRAMEBUFFER_BINDING]?: Framebuffer | null;\n [GL.UNPACK_ROW_LENGTH]?: number;\n [GL.UNPACK_IMAGE_HEIGHT]?: number;\n [GL.UNPACK_SKIP_PIXELS]?: number;\n [GL.UNPACK_SKIP_ROWS]?: number;\n [GL.UNPACK_SKIP_IMAGES]?: number;\n};\n\nexport type GLFunctionParameters = {\n // Function-style setters\n framebuffer?: Framebuffer | null;\n blend?: boolean;\n blendColor?: [number, number, number, number] | NumberArray;\n blendEquation?: GLBlendEquation | [GLBlendEquation, GLBlendEquation];\n blendFunc?:\n | [GLBlendFunction, GLBlendFunction]\n | [GLBlendFunction, GLBlendFunction, GLBlendFunction, GLBlendFunction];\n\n clearColor?: [number, number, number, number] | NumberArray;\n clearDepth?: number;\n clearStencil?: number;\n\n colorMask?: [boolean, boolean, boolean, boolean];\n\n cull?: boolean;\n cullFace?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;\n\n depthTest?: boolean;\n depthFunc?: GLFunction;\n depthMask?: boolean;\n depthRange?: [number, number] | NumberArray;\n\n dither?: boolean;\n\n derivativeHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n frontFace?: GL.CW | GL.CCW;\n\n mipmapHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;\n\n lineWidth?: number;\n\n polygonOffsetFill?: boolean;\n polygonOffset?: [number, number];\n\n sampleCoverage?: [number, boolean];\n\n scissorTest?: boolean;\n scissor?: [number, number, number, number] | NumberArray;\n\n stencilTest?: boolean;\n stencilMask?: number | [number, number];\n stencilFunc?:\n | [GLFunction, number, number]\n | [GLFunction, number, number, GLFunction, number, number];\n stencilOp?:\n | [GLStencilOp, GLStencilOp, GLStencilOp]\n | [GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp];\n viewport?: [number, number, number, number] | NumberArray;\n};\n\n/** WebGL style parameters object (with both GL constants and function style fields) */\nexport type GLParameters = GLValueParameters & GLFunctionParameters;\n"],"file":"webgl.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luma.gl/webgl",
3
- "version": "9.0.0-alpha.5",
3
+ "version": "9.0.0-alpha.6",
4
4
  "description": "WebGL2 adapter for the luma.gl API",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -35,9 +35,12 @@
35
35
  },
36
36
  "dependencies": {
37
37
  "@babel/runtime": "^7.0.0",
38
- "@luma.gl/api": "9.0.0-alpha.5",
39
- "@luma.gl/constants": "9.0.0-alpha.5",
38
+ "@luma.gl/api": "9.0.0-alpha.6",
39
+ "@luma.gl/constants": "9.0.0-alpha.6",
40
40
  "@probe.gl/env": "^3.5.0"
41
41
  },
42
- "gitHead": "729cfdd272836270d0f59793b8a36a2a3aea47ca"
42
+ "devDependencies": {
43
+ "@luma.gl/test-utils": "9.0.0-alpha.6"
44
+ },
45
+ "gitHead": "d4a92477c1d76f6242ec0fe377e238669e0667c0"
43
46
  }
@@ -12,8 +12,9 @@ import WebGLDevice from '../webgl-device';
12
12
  * - Executes supplied function
13
13
  * - Restores parameters
14
14
  * - Returns the return value of the supplied function
15
+ * @deprecated use withDeviceParameters instead
15
16
  */
16
- export function withDeviceParameters<T = unknown>(device: Device, parameters: Parameters & GLParameters, func: (device?: Device) => T): T {
17
+ export function withGLParameters<T = unknown>(device: Device, parameters: GLParameters, func: (device?: Device) => T): T {
17
18
  if (isObjectEmpty(parameters)) {
18
19
  // Avoid setting state if no parameters provided. Just call and return
19
20
  return func(device);
@@ -24,6 +25,31 @@ export function withDeviceParameters<T = unknown>(device: Device, parameters: Pa
24
25
  pushContextState(device.gl);
25
26
  try {
26
27
  setParameters(device, parameters);
28
+ return func(device);
29
+ } finally {
30
+ // @ts-expect-error
31
+ popContextState(device.gl);
32
+ }
33
+ }
34
+
35
+ /**
36
+ * Execute a function with a set of temporary WebGL parameter overrides
37
+ * - Saves current "global" WebGL context settings
38
+ * - Sets the supplies WebGL context parameters,
39
+ * - Executes supplied function
40
+ * - Restores parameters
41
+ * - Returns the return value of the supplied function
42
+ */
43
+ export function withDeviceParameters<T = unknown>(device: Device, parameters: Parameters, func: (device?: Device) => T): T {
44
+ if (isObjectEmpty(parameters)) {
45
+ // Avoid setting state if no parameters provided. Just call and return
46
+ return func(device);
47
+ }
48
+
49
+ // Wrap in a try-catch to ensure that parameters are restored on exceptions
50
+ // @ts-expect-error
51
+ pushContextState(device.gl);
52
+ try {
27
53
  setDeviceParameters(device, parameters);
28
54
  return func(device);
29
55
  } finally {
@@ -101,7 +127,7 @@ export function setDeviceParameters(device: Device, parameters: Parameters) {
101
127
  gl.stencilFuncSeparate(GL.BACK, glValue, 0, mask);
102
128
  }
103
129
 
104
- if (parameters.stencilPassOperation) {
130
+ if (parameters.stencilPassOperation && parameters.stencilFailOperation && parameters.stencilDepthFailOperation) {
105
131
  const dppass = convertStencilOperation('stencilPassOperation', parameters.stencilPassOperation);
106
132
  const sfail = convertStencilOperation('stencilFailOperation', parameters.stencilFailOperation);
107
133
  const dpfail = convertStencilOperation('stencilDepthFailOperation', parameters.stencilDepthFailOperation);
@@ -1,7 +1,7 @@
1
1
  // SAMPLER FILTERS
2
2
  import {SamplerParameters} from '@luma.gl/api';
3
3
  import GL from '@luma.gl/constants';
4
- import {WebGLSamplerParameters} from '../../types/webgl';
4
+ import {GLSamplerParameters} from '../../types/webgl';
5
5
  import {convertCompareFunction, convertToCompareFunction} from './device-parameters';
6
6
 
7
7
  /**
@@ -9,7 +9,7 @@ import {convertCompareFunction, convertToCompareFunction} from './device-paramet
9
9
  * @param props
10
10
  * @returns
11
11
  */
12
- export function convertSamplerParametersToWebGL(props: SamplerParameters): WebGLSamplerParameters {
12
+ export function convertSamplerParametersToWebGL(props: SamplerParameters): GLSamplerParameters {
13
13
  const params: Record<number, number> = {};
14
14
  if (props.addressModeU) {
15
15
  params[GL.TEXTURE_WRAP_S] = convertAddressMode(props.addressModeU);
@@ -33,10 +33,12 @@ export function convertSamplerParametersToWebGL(props: SamplerParameters): WebGL
33
33
  if (props.lodMaxClamp !== undefined) {
34
34
  params[GL.TEXTURE_MAX_LOD] = props.lodMaxClamp;
35
35
  }
36
- if (props.compare) {
36
+ if (props.type === 'comparison-sampler') {
37
37
  // Setting prop.compare turns this into a comparison sampler
38
38
  params[GL.TEXTURE_COMPARE_MODE] = GL.COMPARE_REF_TO_TEXTURE;
39
- params[GL.TEXTURE_COMPARE_FUNC] = convertCompareFunction('compare', props.compare);
39
+ }
40
+ if (props.compare) {
41
+ params[GL.TEXTURE_COMPARE_FUNC] = convertCompareFunction('compare', props.compare);
40
42
  }
41
43
  // Note depends on WebGL extension
42
44
  if (props.maxAnisotropy) {
@@ -82,7 +84,7 @@ function convertMinFilterMode(minFilter: 'nearest' | 'linear', mipmapFilter?: 'n
82
84
  * @param props
83
85
  * @returns
84
86
  */
85
- export function convertToSamplerParameters(params: WebGLSamplerParameters): SamplerParameters {
87
+ export function convertToSamplerParameters(params: GLSamplerParameters): SamplerParameters {
86
88
  const props: SamplerParameters = {};
87
89
  if (params[GL.TEXTURE_WRAP_S]) {
88
90
  props.addressModeU = convertToAddressMode(params[GL.TEXTURE_WRAP_S]);
@@ -108,7 +110,10 @@ function convertMinFilterMode(minFilter: 'nearest' | 'linear', mipmapFilter?: 'n
108
110
  if (params[GL.TEXTURE_MAX_LOD]) {
109
111
  props.lodMaxClamp = params[GL.TEXTURE_MAX_LOD];
110
112
  }
111
- if (params[GL.TEXTURE_COMPARE_MODE] === GL.COMPARE_REF_TO_TEXTURE) {
113
+ if (params[GL.TEXTURE_COMPARE_MODE]) {
114
+ props.type = params[GL.TEXTURE_COMPARE_MODE] === GL.COMPARE_REF_TO_TEXTURE ? 'comparison-sampler' : 'color-sampler';
115
+ }
116
+ if (params[GL.TEXTURE_COMPARE_FUNC]) {
112
117
  props.compare = convertToCompareFunction('compare', params[GL.TEXTURE_COMPARE_FUNC]);
113
118
  }
114
119
  // NOTE depends on extension (very common)
@@ -124,6 +129,7 @@ function convertToAddressMode(addressMode: number): 'clamp-to-edge' | 'repeat' |
124
129
  case GL.CLAMP_TO_EDGE: return 'clamp-to-edge';
125
130
  case GL.REPEAT: return 'repeat';
126
131
  case GL.MIRRORED_REPEAT: return 'mirror-repeat';
132
+ default: throw new Error('address');
127
133
  }
128
134
  }
129
135
 
@@ -131,6 +137,7 @@ function convertToMaxFilterMode(filterMode: number): 'nearest' | 'linear' {
131
137
  switch (filterMode) {
132
138
  case GL.NEAREST: return 'nearest';
133
139
  case GL.LINEAR: return 'linear';
140
+ default: throw new Error('maxfilter');
134
141
  }
135
142
  }
136
143
 
@@ -144,6 +151,7 @@ function convertToMinFilterMode(filterMode: number): 'nearest' | 'linear' {
144
151
  case GL.LINEAR_MIPMAP_NEAREST: return 'linear';
145
152
  case GL.NEAREST_MIPMAP_LINEAR: return 'nearest';
146
153
  case GL.LINEAR_MIPMAP_LINEAR: return 'linear';
154
+ default: throw new Error('minfilter');
147
155
  }
148
156
  }
149
157
 
@@ -156,13 +164,14 @@ function convertToMipmapFilterMode(filterMode: number): 'nearest' | 'linear' {
156
164
  case GL.LINEAR_MIPMAP_NEAREST: return 'nearest';
157
165
  case GL.NEAREST_MIPMAP_LINEAR: return 'linear';
158
166
  case GL.LINEAR_MIPMAP_LINEAR: return 'linear';
167
+ default: throw new Error('mipmap');
159
168
  }
160
169
  }
161
170
 
162
171
  /**
163
172
  * Override sampler settings that are not supported by Non-Power-of-Two textures in WebGL1.
164
173
  */
165
- export function updateSamplerParametersForNPOT(parameters: WebGLSamplerParameters): WebGLSamplerParameters {
174
+ export function updateSamplerParametersForNPOT(parameters: GLSamplerParameters): GLSamplerParameters {
166
175
  const newParameters = {...parameters};
167
176
  if (parameters[GL.TEXTURE_MIN_FILTER] !== GL.NEAREST) {
168
177
  // log.warn(`texture: ${this} is Non-Power-Of-Two, forcing TEXTURE_MIN_FILTER to LINEAR`)();
@@ -64,7 +64,7 @@ const TEXTURE_FEATURE_CHECKS: Partial<Record<DeviceFeature, (gl: WebGLRenderingC
64
64
  };
65
65
 
66
66
  export function checkTextureFeature(gl: WebGLRenderingContext, feature: DeviceFeature): boolean {
67
- return TEXTURE_FEATURE_CHECKS[feature]?.(gl);
67
+ return TEXTURE_FEATURE_CHECKS[feature]?.(gl) || false;
68
68
  }
69
69
 
70
70
  const checkTextureFeatures = (gl: WebGLRenderingContext, features: DeviceFeature[]): boolean =>
@@ -520,8 +520,8 @@ export function _checkFloat32ColorAttachment(
520
520
  srcFormat = GL.RGBA,
521
521
  srcType = GL.UNSIGNED_BYTE
522
522
  ) {
523
- let texture: WebGLTexture;
524
- let framebuffer: WebGLFramebuffer;
523
+ let texture: WebGLTexture | null = null;
524
+ let framebuffer: WebGLFramebuffer | null = null;
525
525
  try {
526
526
  texture = gl.createTexture();
527
527
  gl.bindTexture(GL.TEXTURE_2D, texture);
@@ -47,7 +47,12 @@ export function getWebGLFeatures(gl: WebGLRenderingContext): Set<DeviceFeature>
47
47
  }
48
48
 
49
49
  function isFeatureSupported(gl: WebGLRenderingContext, feature: DeviceFeature): boolean {
50
- const [webgl1Feature, webgl2Feature] = WEBGL_FEATURES[feature];;
50
+ const featureInfo = WEBGL_FEATURES[feature];
51
+ if (!featureInfo) {
52
+ return false;
53
+ }
54
+
55
+ const [webgl1Feature, webgl2Feature] = featureInfo || [];
51
56
 
52
57
  // Get extension name from table
53
58
  const featureDefinition = isWebGL2(gl) ? webgl2Feature : webgl1Feature;
@@ -100,6 +105,9 @@ export function canCompileGLSLExtension(gl: WebGLRenderingContext, extensionName
100
105
  const source = `#extension GL_${extensionName} : ${behavior}\nvoid main(void) {}`;
101
106
 
102
107
  const shader = gl.createShader(gl.VERTEX_SHADER);
108
+ if (!shader) {
109
+ throw new Error('shader');
110
+ }
103
111
  gl.shaderSource(shader, source);
104
112
  gl.compileShader(shader);
105
113
  const canCompile = gl.getShaderParameter(shader, gl.COMPILE_STATUS);
@@ -5,7 +5,7 @@ import {getWebGL2Context} from '../../context/context/webgl-checks';
5
5
 
6
6
  /** Populate a WebGPU style device limits */
7
7
  export function getDeviceLimits(gl: WebGLRenderingContext): DeviceLimits {
8
- const gl2: WebGL2RenderingContext = getWebGL2Context(gl);
8
+ const gl2: WebGL2RenderingContext | null = getWebGL2Context(gl);
9
9
  return {
10
10
  maxTextureDimension1D: 0, // WebGL does not support 1D textures
11
11
  maxTextureDimension2D: gl.getParameter(GL.MAX_TEXTURE_SIZE),
@@ -1,3 +1,5 @@
1
+ // luma.gl, MIT license
2
+
1
3
  import {
2
4
  ShaderLayout,
3
5
  BindingLayout,
@@ -123,12 +125,16 @@ function readAttributeBindings(
123
125
  const count = gl.getProgramParameter(program, gl.ACTIVE_ATTRIBUTES);
124
126
 
125
127
  for (let index = 0; index < count; index++) {
126
- const {name, type: compositeType, size} = gl.getActiveAttrib(program, index);
128
+ const activeInfo = gl.getActiveAttrib(program, index);
129
+ if (!activeInfo) {
130
+ throw new Error('activeInfo');
131
+ }
132
+ const {name, type: compositeType, size} = activeInfo;
127
133
  const location = gl.getAttribLocation(program, name);
128
134
  // Add only user provided attributes, for built-in attributes like
129
135
  // `gl_InstanceID` locaiton will be < 0
130
136
  if (location >= 0) {
131
- const {glType, components} = decodeAttributeType(compositeType);
137
+ const {glType, components} = decodeAttributeType(compositeType);;
132
138
  const accessor: AccessorObject = {type: glType, size: size * components};
133
139
  // Any attribute name containing the word "instance" will be assumed to be instanced
134
140
  if (/instance/i.test(name)) {
@@ -158,8 +164,12 @@ function readVaryings(gl: WebGLRenderingContext, program: WebGLProgram): Varying
158
164
 
159
165
  const count = gl.getProgramParameter(program, GL.TRANSFORM_FEEDBACK_VARYINGS);
160
166
  for (let location = 0; location < count; location++) {
161
- const {name, type: compositeType, size} = gl2.getTransformFeedbackVarying(program, location);
162
- const {glType, components} = decodeUniformType(compositeType);
167
+ const activeInfo = gl2.getTransformFeedbackVarying(program, location);
168
+ if (!activeInfo) {
169
+ throw new Error('activeInfo');
170
+ }
171
+ const {name, type: compositeType, size} = activeInfo;
172
+ const {glType, components} = decodeUniformType(compositeType);;
163
173
  const accessor = new Accessor({type: glType, size: size * components});
164
174
  const varying = {location, name, accessor}; // Base values
165
175
  varyings.push(varying);
@@ -179,7 +189,11 @@ function readUniformBindings(gl: WebGLRenderingContext, program: WebGLProgram):
179
189
 
180
190
  const uniformCount = gl.getProgramParameter(program, GL.ACTIVE_UNIFORMS);
181
191
  for (let i = 0; i < uniformCount; i++) {
182
- const {name: rawName, size, type} = gl.getActiveUniform(program, i);
192
+ const activeInfo = gl.getActiveUniform(program, i);
193
+ if (!activeInfo) {
194
+ throw new Error('activeInfo');
195
+ }
196
+ const {name: rawName, size, type} = activeInfo;
183
197
  const {name, isArray} = parseUniformName(rawName);
184
198
  let webglLocation = gl.getUniformLocation(program, name);
185
199
  const uniformInfo = {
@@ -234,8 +248,8 @@ function readUniformBlocks(
234
248
 
235
249
  const blockCount = gl2.getProgramParameter(program, GL.ACTIVE_UNIFORM_BLOCKS);
236
250
  for (let blockIndex = 0; blockIndex < blockCount; blockIndex++) {
237
- const blockInfo = {
238
- name: gl2.getActiveUniformBlockName(program, blockIndex),
251
+ const blockInfo: UniformBlockBinding = {
252
+ name: gl2.getActiveUniformBlockName(program, blockIndex) || '',
239
253
  location: getBlockParameter(blockIndex, GL.UNIFORM_BLOCK_BINDING),
240
254
  byteLength: getBlockParameter(blockIndex, GL.UNIFORM_BLOCK_DATA_SIZE),
241
255
  vertex: getBlockParameter(blockIndex, GL.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER),
@@ -244,7 +258,7 @@ function readUniformBlocks(
244
258
  uniforms: [] as any[]
245
259
  };
246
260
 
247
- const uniformIndices = getBlockParameter(blockIndex, GL.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES);
261
+ const uniformIndices = getBlockParameter(blockIndex, GL.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES) as number[] || [];
248
262
 
249
263
  const uniformType = gl2.getActiveUniforms(program, uniformIndices, GL.UNIFORM_TYPE); // Array of GLenum indicating the types of the uniforms.
250
264
  const uniformArrayLength = gl2.getActiveUniforms(program, uniformIndices, GL.UNIFORM_SIZE); // Array of GLuint indicating the sizes of the uniforms.
@@ -262,15 +276,20 @@ function readUniformBlocks(
262
276
  ); // Array of GLint indicating the strides between columns of a column-major matrix or a row-major matrix.
263
277
  const uniformRowMajor = gl2.getActiveUniforms(program, uniformIndices, GL.UNIFORM_IS_ROW_MAJOR);
264
278
  for (let i = 0; i < blockInfo.uniformCount; ++i) {
279
+ const activeInfo = gl2.getActiveUniform(program, uniformIndices[i]);
280
+ if (!activeInfo) {
281
+ throw new Error('activeInfo');
282
+ }
283
+
265
284
  blockInfo.uniforms.push({
266
- name: gl2.getActiveUniform(program, uniformIndices[i]).name,
285
+ name: activeInfo.name,
267
286
  format: decodeUniformType(uniformType[i]).format,
268
287
  type: uniformType[i],
269
288
  arrayLength: uniformArrayLength[i],
270
289
  byteOffset: uniformOffset[i],
271
290
  byteStride: uniformStride[i],
272
- matrixStride: uniformStride[i],
273
- rowMajor: uniformRowMajor[i]
291
+ // matrixStride: uniformStride[i],
292
+ // rowMajor: uniformRowMajor[i]
274
293
  });
275
294
  }
276
295
 
@@ -305,18 +324,18 @@ const SAMPLER_UNIFORMS_GL_TO_GPU: Record<
305
324
  [GL.UNSIGNED_INT_SAMPLER_2D_ARRAY]: ['2d-array', 'uint']
306
325
  };
307
326
 
308
- function getSamplerInfo(type: GL):
309
- | {
310
- viewDimension: '1d' | '2d' | '2d-array' | 'cube' | 'cube-array' | '3d';
311
- sampleType: 'float' | 'unfilterable-float' | 'depth' | 'sint' | 'uint';
312
- }
313
- | undefined {
327
+ type SamplerInfo = | {
328
+ viewDimension: '1d' | '2d' | '2d-array' | 'cube' | 'cube-array' | '3d';
329
+ sampleType: 'float' | 'unfilterable-float' | 'depth' | 'sint' | 'uint';
330
+ };
331
+
332
+ function getSamplerInfo(type: GL): SamplerInfo {
314
333
  let sampler = SAMPLER_UNIFORMS_GL_TO_GPU[type];
315
- if (sampler) {
316
- const [viewDimension, sampleType] = sampler;
317
- return {viewDimension, sampleType};
334
+ if (!sampler) {
335
+ throw new Error('sampler');
318
336
  }
319
- return null;
337
+ const [viewDimension, sampleType] = sampler;
338
+ return {viewDimension, sampleType};
320
339
  }
321
340
 
322
341
  // HELPERS