@luma.gl/webgl 8.5.10 → 8.6.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.d.ts +2 -0
- package/dist/bundle.d.ts.map +1 -0
- package/dist/bundle.js +5 -0
- package/dist/bundle.js.map +1 -0
- package/dist/classes/accessor.d.ts +28 -0
- package/dist/classes/accessor.d.ts.map +1 -0
- package/dist/classes/accessor.js +112 -0
- package/dist/classes/accessor.js.map +1 -0
- package/dist/classes/accessor.ts.disabled +159 -0
- package/dist/classes/clear.d.ts +16 -0
- package/dist/classes/clear.d.ts.map +1 -0
- package/dist/classes/clear.js +102 -0
- package/dist/classes/clear.js.map +1 -0
- package/dist/classes/copy-and-blit.d.ts +69 -0
- package/dist/classes/copy-and-blit.d.ts.map +1 -0
- package/dist/classes/copy-and-blit.js +333 -0
- package/dist/classes/copy-and-blit.js.map +1 -0
- package/dist/classes/framebuffer.d.ts +130 -0
- package/dist/classes/framebuffer.d.ts.map +1 -0
- package/dist/classes/framebuffer.js +656 -0
- package/dist/classes/framebuffer.js.map +1 -0
- package/dist/classes/program-configuration.d.ts +27 -0
- package/dist/classes/program-configuration.d.ts.map +1 -0
- package/dist/classes/program-configuration.js +160 -0
- package/dist/classes/program-configuration.js.map +1 -0
- package/dist/classes/program.d.ts +61 -0
- package/dist/classes/program.d.ts.map +1 -0
- package/dist/classes/program.js +368 -0
- package/dist/classes/program.js.map +1 -0
- package/dist/classes/query.d.ts +27 -0
- package/dist/classes/query.d.ts.map +1 -0
- package/dist/classes/query.js +144 -0
- package/dist/classes/query.js.map +1 -0
- package/dist/classes/renderbuffer-formats.d.ts +16 -0
- package/dist/classes/renderbuffer-formats.d.ts.map +1 -0
- package/dist/classes/renderbuffer-formats.js +185 -0
- package/dist/classes/renderbuffer-formats.js.map +1 -0
- package/dist/classes/renderbuffer.d.ts +60 -0
- package/dist/classes/renderbuffer.d.ts.map +1 -0
- package/dist/classes/renderbuffer.js +127 -0
- package/dist/classes/renderbuffer.js.map +1 -0
- package/dist/classes/texture-2d.d.ts +8 -0
- package/dist/classes/texture-2d.d.ts.map +1 -0
- package/dist/classes/texture-2d.js +39 -0
- package/dist/classes/texture-2d.js.map +1 -0
- package/dist/classes/texture-3d.d.ts +28 -0
- package/dist/classes/texture-3d.d.ts.map +1 -0
- package/dist/classes/texture-3d.js +67 -0
- package/dist/classes/texture-3d.js.map +1 -0
- package/dist/classes/texture-cube.d.ts +27 -0
- package/dist/classes/texture-cube.d.ts.map +1 -0
- package/dist/classes/texture-cube.js +131 -0
- package/dist/classes/texture-cube.js.map +1 -0
- package/dist/classes/texture-formats.d.ts +37 -0
- package/dist/classes/texture-formats.d.ts.map +1 -0
- package/dist/classes/texture-formats.js +98 -0
- package/dist/classes/texture-formats.js.map +1 -0
- package/dist/classes/texture.d.ts +118 -0
- package/dist/classes/texture.d.ts.map +1 -0
- package/dist/classes/texture.js +785 -0
- package/dist/classes/texture.js.map +1 -0
- package/dist/classes/transform-feedback.d.ts +33 -0
- package/dist/classes/transform-feedback.d.ts.map +1 -0
- package/dist/classes/transform-feedback.js +197 -0
- package/dist/classes/transform-feedback.js.map +1 -0
- package/dist/classes/uniform-buffer-layout.d.ts +17 -0
- package/dist/classes/uniform-buffer-layout.d.ts.map +1 -0
- package/dist/classes/uniform-buffer-layout.js +104 -0
- package/dist/classes/uniform-buffer-layout.js.map +1 -0
- package/dist/classes/uniforms.d.ts +38 -0
- package/dist/classes/uniforms.d.ts.map +1 -0
- package/dist/classes/uniforms.js +251 -0
- package/dist/classes/uniforms.js.map +1 -0
- package/dist/classes/vertex-array-object.d.ts +75 -0
- package/dist/classes/vertex-array-object.d.ts.map +1 -0
- package/dist/classes/vertex-array-object.js +262 -0
- package/dist/classes/vertex-array-object.js.map +1 -0
- package/dist/classes/vertex-array.d.ts +75 -0
- package/dist/classes/vertex-array.d.ts.map +1 -0
- package/dist/classes/vertex-array.js +409 -0
- package/dist/classes/vertex-array.js.map +1 -0
- package/dist/classes/webgl-buffer.d.ts +98 -0
- package/dist/classes/webgl-buffer.d.ts.map +1 -0
- package/dist/{esm/classes/buffer.js → classes/webgl-buffer.js} +97 -73
- package/dist/classes/webgl-buffer.js.map +1 -0
- package/dist/classes/webgl-resource.d.ts +54 -0
- package/dist/classes/webgl-resource.d.ts.map +1 -0
- package/dist/{esm/classes/resource.js → classes/webgl-resource.js} +31 -52
- package/dist/classes/webgl-resource.js.map +1 -0
- package/dist/classes/webgl-shader.d.ts +51 -0
- package/dist/classes/webgl-shader.d.ts.map +1 -0
- package/dist/classes/webgl-shader.js +190 -0
- package/dist/classes/webgl-shader.js.map +1 -0
- package/dist/context/gl-context.d.ts +15 -0
- package/dist/context/gl-context.d.ts.map +1 -0
- package/dist/context/gl-context.js +32 -0
- package/dist/context/gl-context.js.map +1 -0
- package/dist/context/luma-context-data.d.ts +31 -0
- package/dist/context/luma-context-data.d.ts.map +1 -0
- package/dist/context/luma-context-data.js +5 -0
- package/dist/context/luma-context-data.js.map +1 -0
- package/dist/debug/debug-program-configuration.d.ts +2 -0
- package/dist/debug/debug-program-configuration.d.ts.map +1 -0
- package/dist/debug/debug-program-configuration.js +40 -0
- package/dist/debug/debug-program-configuration.js.map +1 -0
- package/dist/debug/debug-uniforms.d.ts +12 -0
- package/dist/debug/debug-uniforms.d.ts.map +1 -0
- package/dist/debug/debug-uniforms.js +108 -0
- package/dist/debug/debug-uniforms.js.map +1 -0
- package/dist/debug/debug-vertex-array.d.ts +5 -0
- package/dist/debug/debug-vertex-array.d.ts.map +1 -0
- package/dist/debug/debug-vertex-array.js +118 -0
- package/dist/debug/debug-vertex-array.js.map +1 -0
- package/dist/es5/bundle.js +3 -5
- package/dist/es5/bundle.js.map +1 -1
- package/dist/es5/classes/accessor.js +76 -108
- package/dist/es5/classes/accessor.js.map +1 -1
- package/dist/es5/classes/accessor.ts.disabled +159 -0
- package/dist/es5/classes/clear.js +33 -48
- package/dist/es5/classes/clear.js.map +1 -1
- package/dist/es5/classes/copy-and-blit.js +177 -192
- package/dist/es5/classes/copy-and-blit.js.map +1 -1
- package/dist/es5/classes/framebuffer.js +538 -655
- package/dist/es5/classes/framebuffer.js.map +1 -1
- package/dist/es5/classes/program-configuration.js +127 -141
- package/dist/es5/classes/program-configuration.js.map +1 -1
- package/dist/es5/classes/program.js +294 -358
- package/dist/es5/classes/program.js.map +1 -1
- package/dist/es5/classes/query.js +115 -181
- package/dist/es5/classes/query.js.map +1 -1
- package/dist/es5/classes/renderbuffer-formats.js +186 -121
- package/dist/es5/classes/renderbuffer-formats.js.map +1 -1
- package/dist/es5/classes/renderbuffer.js +104 -128
- package/dist/es5/classes/renderbuffer.js.map +1 -1
- package/dist/es5/classes/texture-2d.js +16 -39
- package/dist/es5/classes/texture-2d.js.map +1 -1
- package/dist/es5/classes/texture-3d.js +50 -89
- package/dist/es5/classes/texture-3d.js.map +1 -1
- package/dist/es5/classes/texture-cube.js +112 -162
- package/dist/es5/classes/texture-cube.js.map +1 -1
- package/dist/es5/classes/texture-formats.js +73 -42
- package/dist/es5/classes/texture-formats.js.map +1 -1
- package/dist/es5/classes/texture.js +670 -673
- package/dist/es5/classes/texture.js.map +1 -1
- package/dist/es5/classes/transform-feedback.js +150 -203
- package/dist/es5/classes/transform-feedback.js.map +1 -1
- package/dist/es5/classes/uniform-buffer-layout.js +89 -103
- package/dist/es5/classes/uniform-buffer-layout.js.map +1 -1
- package/dist/es5/classes/uniforms.js +134 -93
- package/dist/es5/classes/uniforms.js.map +1 -1
- package/dist/es5/classes/vertex-array-object.js +204 -306
- package/dist/es5/classes/vertex-array-object.js.map +1 -1
- package/dist/es5/classes/vertex-array.js +317 -353
- package/dist/es5/classes/vertex-array.js.map +1 -1
- package/dist/es5/classes/webgl-buffer.js +391 -0
- package/dist/es5/classes/webgl-buffer.js.map +1 -0
- package/dist/es5/classes/webgl-resource.js +217 -0
- package/dist/es5/classes/webgl-resource.js.map +1 -0
- package/dist/es5/classes/webgl-shader.js +213 -0
- package/dist/es5/classes/webgl-shader.js.map +1 -0
- package/dist/es5/context/gl-context.js +46 -0
- package/dist/es5/context/gl-context.js.map +1 -0
- package/dist/es5/context/luma-context-data.js +12 -0
- package/dist/es5/context/luma-context-data.js.map +1 -0
- package/dist/es5/debug/debug-program-configuration.js +20 -48
- package/dist/es5/debug/debug-program-configuration.js.map +1 -1
- package/dist/es5/debug/debug-uniforms.js +72 -114
- package/dist/es5/debug/debug-uniforms.js.map +1 -1
- package/dist/es5/debug/debug-vertex-array.js +56 -51
- package/dist/es5/debug/debug-vertex-array.js.map +1 -1
- package/dist/es5/features/check-glsl-extension.js +9 -10
- package/dist/es5/features/check-glsl-extension.js.map +1 -1
- package/dist/es5/features/check-old-ie.js +5 -6
- package/dist/es5/features/check-old-ie.js.map +1 -1
- package/dist/es5/features/features.js +23 -37
- package/dist/es5/features/features.js.map +1 -1
- package/dist/es5/features/index.js +8 -8
- package/dist/es5/features/index.js.map +1 -1
- package/dist/es5/features/limits.js +36 -28
- package/dist/es5/features/limits.js.map +1 -1
- package/dist/es5/features/webgl-features-table.js +35 -15
- package/dist/es5/features/webgl-features-table.js.map +1 -1
- package/dist/es5/features/webgl-limits-table.js +160 -120
- package/dist/es5/features/webgl-limits-table.js.map +1 -1
- package/dist/es5/index.js +144 -90
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/init.js +12 -36
- package/dist/es5/init.js.map +1 -1
- package/dist/es5/types.js +2 -0
- package/dist/es5/types.js.map +1 -0
- package/dist/es5/utils/array-utils-flat.js +13 -14
- package/dist/es5/utils/array-utils-flat.js.map +1 -1
- package/dist/es5/utils/assert.js +1 -1
- package/dist/es5/utils/assert.js.map +1 -1
- package/dist/es5/utils/check-props.js +20 -21
- package/dist/es5/utils/check-props.js.map +1 -1
- package/dist/es5/utils/format-value.js +14 -14
- package/dist/es5/utils/format-value.js.map +1 -1
- package/dist/es5/utils/index.js +68 -0
- package/dist/es5/utils/index.js.map +1 -0
- package/dist/es5/utils/is-old-ie.js +2 -3
- package/dist/es5/utils/is-old-ie.js.map +1 -1
- package/dist/es5/utils/load-file.js +11 -18
- package/dist/es5/utils/load-file.js.map +1 -1
- package/dist/es5/utils/stub-methods.js +4 -4
- package/dist/es5/utils/stub-methods.js.map +1 -1
- package/dist/es5/utils/utils.js +5 -10
- package/dist/es5/utils/utils.js.map +1 -1
- package/dist/es5/webgl-utils/attribute-utils.js +87 -74
- package/dist/es5/webgl-utils/attribute-utils.js.map +1 -1
- package/dist/es5/webgl-utils/constants-to-keys.js +7 -7
- package/dist/es5/webgl-utils/constants-to-keys.js.map +1 -1
- package/dist/es5/webgl-utils/format-utils.js +21 -17
- package/dist/es5/webgl-utils/format-utils.js.map +1 -1
- package/dist/es5/webgl-utils/get-error.js +18 -18
- package/dist/es5/webgl-utils/get-error.js.map +1 -1
- package/dist/es5/webgl-utils/index.js +74 -0
- package/dist/es5/webgl-utils/index.js.map +1 -0
- package/dist/es5/webgl-utils/parse-shader-compiler-log.js +44 -0
- package/dist/es5/webgl-utils/parse-shader-compiler-log.js.map +1 -0
- package/dist/es5/webgl-utils/request-animation-frame.js.map +1 -1
- package/dist/es5/webgl-utils/texture-utils.js +35 -29
- package/dist/es5/webgl-utils/texture-utils.js.map +1 -1
- package/dist/es5/webgl-utils/typed-array-utils.js +51 -47
- package/dist/es5/webgl-utils/typed-array-utils.js.map +1 -1
- package/dist/esm/bundle.js +2 -4
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/classes/accessor.js +7 -7
- package/dist/esm/classes/accessor.js.map +1 -1
- package/dist/esm/classes/accessor.ts.disabled +159 -0
- package/dist/esm/classes/clear.js +15 -13
- package/dist/esm/classes/clear.js.map +1 -1
- package/dist/esm/classes/copy-and-blit.js +41 -43
- package/dist/esm/classes/copy-and-blit.js.map +1 -1
- package/dist/esm/classes/framebuffer.js +336 -308
- package/dist/esm/classes/framebuffer.js.map +1 -1
- package/dist/esm/classes/program-configuration.js +17 -9
- package/dist/esm/classes/program-configuration.js.map +1 -1
- package/dist/esm/classes/program.js +69 -44
- package/dist/esm/classes/program.js.map +1 -1
- package/dist/esm/classes/query.js +17 -14
- package/dist/esm/classes/query.js.map +1 -1
- package/dist/esm/classes/renderbuffer-formats.js +72 -49
- package/dist/esm/classes/renderbuffer-formats.js.map +1 -1
- package/dist/esm/classes/renderbuffer.js +84 -72
- package/dist/esm/classes/renderbuffer.js.map +1 -1
- package/dist/esm/classes/texture-2d.js +10 -3
- package/dist/esm/classes/texture-2d.js.map +1 -1
- package/dist/esm/classes/texture-3d.js +14 -11
- package/dist/esm/classes/texture-3d.js.map +1 -1
- package/dist/esm/classes/texture-cube.js +43 -28
- package/dist/esm/classes/texture-cube.js.map +1 -1
- package/dist/esm/classes/texture-formats.js +51 -50
- package/dist/esm/classes/texture-formats.js.map +1 -1
- package/dist/esm/classes/texture.js +164 -49
- package/dist/esm/classes/texture.js.map +1 -1
- package/dist/esm/classes/transform-feedback.js +24 -13
- package/dist/esm/classes/transform-feedback.js.map +1 -1
- package/dist/esm/classes/uniform-buffer-layout.js +1 -1
- package/dist/esm/classes/uniform-buffer-layout.js.map +1 -1
- package/dist/esm/classes/uniforms.js +111 -112
- package/dist/esm/classes/uniforms.js.map +1 -1
- package/dist/esm/classes/vertex-array-object.js +52 -88
- package/dist/esm/classes/vertex-array-object.js.map +1 -1
- package/dist/esm/classes/vertex-array.js +50 -28
- package/dist/esm/classes/vertex-array.js.map +1 -1
- package/dist/esm/classes/webgl-buffer.js +379 -0
- package/dist/esm/classes/webgl-buffer.js.map +1 -0
- package/dist/esm/classes/webgl-resource.js +208 -0
- package/dist/esm/classes/webgl-resource.js.map +1 -0
- package/dist/esm/classes/webgl-shader.js +190 -0
- package/dist/esm/classes/webgl-shader.js.map +1 -0
- package/dist/esm/context/gl-context.js +32 -0
- package/dist/esm/context/gl-context.js.map +1 -0
- package/dist/esm/context/luma-context-data.js +5 -0
- package/dist/esm/context/luma-context-data.js.map +1 -0
- package/dist/esm/debug/debug-program-configuration.js +4 -4
- package/dist/esm/debug/debug-program-configuration.js.map +1 -1
- package/dist/esm/debug/debug-uniforms.js +9 -9
- package/dist/esm/debug/debug-uniforms.js.map +1 -1
- package/dist/esm/debug/debug-vertex-array.js +19 -17
- package/dist/esm/debug/debug-vertex-array.js.map +1 -1
- package/dist/esm/features/check-glsl-extension.js +4 -4
- package/dist/esm/features/check-glsl-extension.js.map +1 -1
- package/dist/esm/features/check-old-ie.js.map +1 -1
- package/dist/esm/features/features.js +14 -13
- package/dist/esm/features/features.js.map +1 -1
- package/dist/esm/features/index.js.map +1 -1
- package/dist/esm/features/limits.js +25 -22
- package/dist/esm/features/limits.js.map +1 -1
- package/dist/esm/features/webgl-features-table.js +6 -6
- package/dist/esm/features/webgl-features-table.js.map +1 -1
- package/dist/esm/features/webgl-limits-table.js +43 -42
- package/dist/esm/features/webgl-limits-table.js.map +1 -1
- package/dist/esm/index.js +13 -15
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/init.js +4 -23
- package/dist/esm/init.js.map +1 -1
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/array-utils-flat.js.map +1 -1
- package/dist/esm/utils/assert.js +1 -1
- package/dist/esm/utils/assert.js.map +1 -1
- package/dist/esm/utils/check-props.js +4 -4
- package/dist/esm/utils/check-props.js.map +1 -1
- package/dist/esm/utils/format-value.js +4 -4
- package/dist/esm/utils/format-value.js.map +1 -1
- package/dist/esm/utils/index.js +7 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/is-old-ie.js +1 -1
- package/dist/esm/utils/is-old-ie.js.map +1 -1
- package/dist/esm/utils/load-file.js +2 -2
- package/dist/esm/utils/load-file.js.map +1 -1
- package/dist/esm/utils/stub-methods.js +2 -3
- package/dist/esm/utils/stub-methods.js.map +1 -1
- package/dist/esm/utils/utils.js +1 -3
- package/dist/esm/utils/utils.js.map +1 -1
- package/dist/esm/webgl-utils/attribute-utils.js +1 -1
- package/dist/esm/webgl-utils/attribute-utils.js.map +1 -1
- package/dist/esm/webgl-utils/constants-to-keys.js +4 -4
- package/dist/esm/webgl-utils/constants-to-keys.js.map +1 -1
- package/dist/esm/webgl-utils/format-utils.js +16 -15
- package/dist/esm/webgl-utils/format-utils.js.map +1 -1
- package/dist/esm/webgl-utils/get-error.js +1 -1
- package/dist/esm/webgl-utils/get-error.js.map +1 -1
- package/dist/esm/webgl-utils/index.js +5 -0
- package/dist/esm/webgl-utils/index.js.map +1 -0
- package/dist/esm/webgl-utils/parse-shader-compiler-log.js +37 -0
- package/dist/esm/webgl-utils/parse-shader-compiler-log.js.map +1 -0
- package/dist/esm/webgl-utils/request-animation-frame.js.map +1 -1
- package/dist/esm/webgl-utils/texture-utils.js +4 -3
- package/dist/esm/webgl-utils/texture-utils.js.map +1 -1
- package/dist/esm/webgl-utils/typed-array-utils.js +19 -18
- package/dist/esm/webgl-utils/typed-array-utils.js.map +1 -1
- package/dist/features/check-glsl-extension.d.ts +2 -0
- package/dist/features/check-glsl-extension.d.ts.map +1 -0
- package/dist/features/check-glsl-extension.js +27 -0
- package/dist/features/check-glsl-extension.js.map +1 -0
- package/dist/features/check-old-ie.d.ts +2 -0
- package/dist/features/check-old-ie.d.ts.map +1 -0
- package/dist/features/check-old-ie.js +8 -0
- package/dist/features/check-old-ie.js.map +1 -0
- package/dist/features/features.d.ts +6 -0
- package/dist/features/features.d.ts.map +1 -0
- package/dist/features/features.js +67 -0
- package/dist/features/features.js.map +1 -0
- package/dist/features/index.d.ts +5 -0
- package/dist/features/index.d.ts.map +1 -0
- package/dist/features/index.js +5 -0
- package/dist/features/index.js.map +1 -0
- package/dist/features/limits.d.ts +28 -0
- package/dist/features/limits.d.ts.map +1 -0
- package/dist/features/limits.js +55 -0
- package/dist/features/limits.js.map +1 -0
- package/dist/features/webgl-features-table.d.ts +30 -0
- package/dist/features/webgl-features-table.d.ts.map +1 -0
- package/dist/features/webgl-features-table.js +71 -0
- package/dist/features/webgl-features-table.js.map +1 -0
- package/dist/features/webgl-limits-table.d.ts +161 -0
- package/dist/features/webgl-limits-table.d.ts.map +1 -0
- package/dist/features/webgl-limits-table.js +161 -0
- package/dist/features/webgl-limits-table.js.map +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -0
- package/dist/init.d.ts +5 -0
- package/dist/init.d.ts.map +1 -0
- package/dist/init.js +30 -0
- package/dist/init.js.map +1 -0
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/array-utils-flat.d.ts +9 -0
- package/dist/utils/array-utils-flat.d.ts.map +1 -0
- package/dist/utils/array-utils-flat.js +39 -0
- package/dist/utils/array-utils-flat.js.map +1 -0
- package/dist/utils/assert.d.ts +2 -0
- package/dist/utils/assert.d.ts.map +1 -0
- package/dist/utils/assert.js +6 -0
- package/dist/utils/assert.js.map +1 -0
- package/dist/utils/check-props.d.ts +2 -0
- package/dist/utils/check-props.d.ts.map +1 -0
- package/dist/utils/check-props.js +38 -0
- package/dist/utils/check-props.js.map +1 -0
- package/dist/utils/format-value.d.ts +5 -0
- package/dist/utils/format-value.d.ts.map +1 -0
- package/dist/utils/format-value.js +50 -0
- package/dist/utils/format-value.js.map +1 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +7 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/is-old-ie.d.ts +4 -0
- package/dist/utils/is-old-ie.d.ts.map +1 -0
- package/dist/utils/is-old-ie.js +5 -0
- package/dist/utils/is-old-ie.js.map +1 -0
- package/dist/utils/load-file.d.ts +4 -0
- package/dist/utils/load-file.d.ts.map +1 -0
- package/dist/utils/load-file.js +30 -0
- package/dist/utils/load-file.js.map +1 -0
- package/dist/utils/stub-methods.d.ts +2 -0
- package/dist/utils/stub-methods.d.ts.map +1 -0
- package/dist/utils/stub-methods.js +16 -0
- package/dist/utils/stub-methods.js.map +1 -0
- package/dist/utils/utils.d.ts +15 -0
- package/dist/utils/utils.d.ts.map +1 -0
- package/dist/utils/utils.js +20 -0
- package/dist/utils/utils.js.map +1 -0
- package/dist/webgl-utils/attribute-utils.d.ts +18 -0
- package/dist/webgl-utils/attribute-utils.d.ts.map +1 -0
- package/dist/webgl-utils/attribute-utils.js +182 -0
- package/dist/webgl-utils/attribute-utils.js.map +1 -0
- package/dist/webgl-utils/constants-to-keys.d.ts +4 -0
- package/dist/webgl-utils/constants-to-keys.d.ts.map +1 -0
- package/dist/webgl-utils/constants-to-keys.js +41 -0
- package/dist/webgl-utils/constants-to-keys.js.map +1 -0
- package/dist/webgl-utils/format-utils.d.ts +3 -0
- package/dist/webgl-utils/format-utils.d.ts.map +1 -0
- package/dist/webgl-utils/format-utils.js +45 -0
- package/dist/webgl-utils/format-utils.js.map +1 -0
- package/dist/webgl-utils/get-error.d.ts +3 -0
- package/dist/webgl-utils/get-error.d.ts.map +1 -0
- package/dist/webgl-utils/get-error.js +41 -0
- package/dist/webgl-utils/get-error.js.map +1 -0
- package/dist/webgl-utils/index.d.ts +5 -0
- package/dist/webgl-utils/index.d.ts.map +1 -0
- package/dist/webgl-utils/index.js +5 -0
- package/dist/webgl-utils/index.js.map +1 -0
- package/dist/webgl-utils/parse-shader-compiler-log.d.ts +8 -0
- package/dist/webgl-utils/parse-shader-compiler-log.d.ts.map +1 -0
- package/dist/webgl-utils/parse-shader-compiler-log.js +37 -0
- package/dist/webgl-utils/parse-shader-compiler-log.js.map +1 -0
- package/dist/webgl-utils/request-animation-frame.d.ts +4 -0
- package/dist/webgl-utils/request-animation-frame.d.ts.map +1 -0
- package/dist/webgl-utils/request-animation-frame.js +7 -0
- package/dist/webgl-utils/request-animation-frame.js.map +1 -0
- package/dist/webgl-utils/texture-utils.d.ts +11 -0
- package/dist/webgl-utils/texture-utils.d.ts.map +1 -0
- package/dist/webgl-utils/texture-utils.js +48 -0
- package/dist/webgl-utils/texture-utils.js.map +1 -0
- package/dist/webgl-utils/typed-array-utils.d.ts +36 -0
- package/dist/webgl-utils/typed-array-utils.d.ts.map +1 -0
- package/dist/webgl-utils/typed-array-utils.js +108 -0
- package/dist/webgl-utils/typed-array-utils.js.map +1 -0
- package/package.json +9 -8
- package/src/bundle.ts +4 -0
- package/src/classes/accessor.js +3 -4
- package/src/classes/accessor.ts.disabled +159 -0
- package/src/classes/{clear.js → clear.ts} +13 -9
- package/src/classes/{copy-and-blit.js → copy-and-blit.ts} +113 -22
- package/src/classes/{framebuffer.js → framebuffer.ts} +355 -298
- package/src/classes/{program-configuration.js → program-configuration.ts} +18 -11
- package/src/classes/{program.js → program.ts} +56 -36
- package/src/classes/{query.js → query.ts} +28 -22
- package/src/classes/{renderbuffer-formats.js → renderbuffer-formats.ts} +42 -14
- package/src/classes/renderbuffer.ts +153 -0
- package/src/classes/{texture-2d.js → texture-2d.ts} +15 -5
- package/src/classes/{texture-3d.js → texture-3d.ts} +35 -10
- package/src/classes/{texture-cube.js → texture-cube.ts} +46 -28
- package/src/classes/{texture-formats.js → texture-formats.ts} +9 -1
- package/src/classes/{texture.js → texture.ts} +204 -37
- package/src/classes/{transform-feedback.js → transform-feedback.ts} +22 -14
- package/src/classes/{uniform-buffer-layout.js → uniform-buffer-layout.ts} +10 -6
- package/src/classes/{uniforms.js → uniforms.ts} +122 -70
- package/src/classes/{vertex-array-object.js → vertex-array-object.ts} +132 -107
- package/src/classes/{vertex-array.js → vertex-array.ts} +74 -54
- package/src/classes/{buffer.js → webgl-buffer.ts} +125 -51
- package/src/classes/{resource.js → webgl-resource.ts} +43 -36
- package/src/classes/webgl-shader.ts +200 -0
- package/src/context/gl-context.ts +31 -0
- package/src/context/luma-context-data.ts +27 -0
- package/src/debug/{debug-program-configuration.js → debug-program-configuration.ts} +0 -0
- package/src/debug/{debug-uniforms.js → debug-uniforms.ts} +18 -8
- package/src/debug/{debug-vertex-array.js → debug-vertex-array.ts} +7 -4
- package/src/features/{check-glsl-extension.js → check-glsl-extension.ts} +1 -1
- package/src/features/{check-old-ie.js → check-old-ie.ts} +0 -0
- package/src/features/{features.js → features.ts} +14 -13
- package/src/features/{index.js → index.ts} +0 -0
- package/src/features/{limits.js → limits.ts} +18 -17
- package/src/features/{webgl-features-table.js → webgl-features-table.ts} +0 -0
- package/src/features/{webgl-limits-table.js → webgl-limits-table.ts} +0 -0
- package/{dist/es5/index.d.ts → src/index.ts} +18 -16
- package/src/{init.js → init.ts} +1 -18
- package/{dist/es5/types.d.ts → src/types.ts} +0 -0
- package/src/utils/{array-utils-flat.js → array-utils-flat.ts} +0 -0
- package/src/utils/{assert.js → assert.ts} +1 -1
- package/src/utils/{check-props.js → check-props.ts} +0 -0
- package/src/utils/{format-value.js → format-value.ts} +2 -2
- package/src/utils/index.ts +6 -0
- package/src/utils/{is-old-ie.js → is-old-ie.ts} +1 -1
- package/src/utils/{load-file.js → load-file.ts} +3 -2
- package/src/utils/{stub-methods.js → stub-methods.ts} +1 -1
- package/src/utils/utils.ts +35 -0
- package/src/webgl-utils/{attribute-utils.js → attribute-utils.ts} +1 -2
- package/src/webgl-utils/{constants-to-keys.js → constants-to-keys.ts} +1 -1
- package/src/webgl-utils/{format-utils.js → format-utils.ts} +1 -1
- package/src/webgl-utils/{get-error.js → get-error.ts} +0 -0
- package/src/webgl-utils/index.ts +12 -0
- package/src/webgl-utils/parse-shader-compiler-log.ts +48 -0
- package/src/webgl-utils/{request-animation-frame.js → request-animation-frame.ts} +3 -2
- package/src/webgl-utils/texture-utils.js +2 -1
- package/dist/dist.js +0 -13555
- package/dist/dist.min.js +0 -1
- package/dist/es5/classes/buffer.d.ts +0 -84
- package/dist/es5/classes/buffer.js +0 -453
- package/dist/es5/classes/buffer.js.map +0 -1
- package/dist/es5/classes/clear.d.ts +0 -11
- package/dist/es5/classes/copy-and-blit.d.ts +0 -101
- package/dist/es5/classes/framebuffer.d.ts +0 -96
- package/dist/es5/classes/program-configuration.d.ts +0 -15
- package/dist/es5/classes/program.d.ts +0 -44
- package/dist/es5/classes/query.d.ts +0 -21
- package/dist/es5/classes/renderbuffer.d.ts +0 -34
- package/dist/es5/classes/resource.d.ts +0 -47
- package/dist/es5/classes/resource.js +0 -308
- package/dist/es5/classes/resource.js.map +0 -1
- package/dist/es5/classes/shader.d.ts +0 -29
- package/dist/es5/classes/shader.js +0 -221
- package/dist/es5/classes/shader.js.map +0 -1
- package/dist/es5/classes/texture-2d.d.ts +0 -11
- package/dist/es5/classes/texture-3d.d.ts +0 -29
- package/dist/es5/classes/texture-cube.d.ts +0 -23
- package/dist/es5/classes/texture.d.ts +0 -80
- package/dist/es5/classes/transform-feedback.d.ts +0 -16
- package/dist/es5/classes/uniform-buffer-layout.d.ts +0 -18
- package/dist/es5/classes/uniforms.d.ts +0 -63
- package/dist/es5/classes/vertex-array-object.d.ts +0 -25
- package/dist/es5/classes/vertex-array.d.ts +0 -37
- package/dist/es5/debug/debug-program-configuration.d.ts +0 -1
- package/dist/es5/debug/debug-uniforms.d.ts +0 -11
- package/dist/es5/debug/debug-vertex-array.d.ts +0 -1
- package/dist/es5/glsl-utils/format-glsl-error.d.ts +0 -16
- package/dist/es5/glsl-utils/format-glsl-error.js +0 -108
- package/dist/es5/glsl-utils/format-glsl-error.js.map +0 -1
- package/dist/es5/glsl-utils/get-shader-name.js +0 -14
- package/dist/es5/glsl-utils/get-shader-name.js.map +0 -1
- package/dist/es5/glsl-utils/get-shader-type-name.js +0 -22
- package/dist/es5/glsl-utils/get-shader-type-name.js.map +0 -1
- package/dist/es5/glsl-utils/get-shader-version.js +0 -22
- package/dist/es5/glsl-utils/get-shader-version.js.map +0 -1
- package/dist/es5/glsl-utils/index.js +0 -48
- package/dist/es5/glsl-utils/index.js.map +0 -1
- package/dist/es5/init.d.ts +0 -12
- package/dist/es5/utils/assert.d.ts +0 -1
- package/dist/es5/utils/is-old-ie.d.ts +0 -1
- package/dist/es5/utils/utils.d.ts +0 -13
- package/dist/es5/webgl-utils/request-animation-frame.d.ts +0 -3
- package/dist/esm/classes/buffer.d.ts +0 -84
- package/dist/esm/classes/buffer.js.map +0 -1
- package/dist/esm/classes/clear.d.ts +0 -11
- package/dist/esm/classes/copy-and-blit.d.ts +0 -101
- package/dist/esm/classes/framebuffer.d.ts +0 -96
- package/dist/esm/classes/program-configuration.d.ts +0 -15
- package/dist/esm/classes/program.d.ts +0 -44
- package/dist/esm/classes/query.d.ts +0 -21
- package/dist/esm/classes/renderbuffer.d.ts +0 -34
- package/dist/esm/classes/resource.d.ts +0 -47
- package/dist/esm/classes/resource.js.map +0 -1
- package/dist/esm/classes/shader.d.ts +0 -29
- package/dist/esm/classes/shader.js +0 -138
- package/dist/esm/classes/shader.js.map +0 -1
- package/dist/esm/classes/texture-2d.d.ts +0 -11
- package/dist/esm/classes/texture-3d.d.ts +0 -29
- package/dist/esm/classes/texture-cube.d.ts +0 -23
- package/dist/esm/classes/texture.d.ts +0 -80
- package/dist/esm/classes/transform-feedback.d.ts +0 -16
- package/dist/esm/classes/uniform-buffer-layout.d.ts +0 -18
- package/dist/esm/classes/uniforms.d.ts +0 -63
- package/dist/esm/classes/vertex-array-object.d.ts +0 -25
- package/dist/esm/classes/vertex-array.d.ts +0 -37
- package/dist/esm/debug/debug-program-configuration.d.ts +0 -1
- package/dist/esm/debug/debug-uniforms.d.ts +0 -11
- package/dist/esm/debug/debug-vertex-array.d.ts +0 -1
- package/dist/esm/glsl-utils/format-glsl-error.d.ts +0 -16
- package/dist/esm/glsl-utils/format-glsl-error.js +0 -93
- package/dist/esm/glsl-utils/format-glsl-error.js.map +0 -1
- package/dist/esm/glsl-utils/get-shader-name.js +0 -6
- package/dist/esm/glsl-utils/get-shader-name.js.map +0 -1
- package/dist/esm/glsl-utils/get-shader-type-name.js +0 -15
- package/dist/esm/glsl-utils/get-shader-type-name.js.map +0 -1
- package/dist/esm/glsl-utils/get-shader-version.js +0 -15
- package/dist/esm/glsl-utils/get-shader-version.js.map +0 -1
- package/dist/esm/glsl-utils/index.js +0 -5
- package/dist/esm/glsl-utils/index.js.map +0 -1
- package/dist/esm/index.d.ts +0 -71
- package/dist/esm/init.d.ts +0 -12
- package/dist/esm/types.d.ts +0 -8
- package/dist/esm/utils/assert.d.ts +0 -1
- package/dist/esm/utils/is-old-ie.d.ts +0 -1
- package/dist/esm/utils/utils.d.ts +0 -13
- package/dist/esm/webgl-utils/request-animation-frame.d.ts +0 -3
- package/src/bundle.js +0 -8
- package/src/classes/buffer.d.ts +0 -84
- package/src/classes/clear.d.ts +0 -11
- package/src/classes/copy-and-blit.d.ts +0 -101
- package/src/classes/framebuffer.d.ts +0 -96
- package/src/classes/program-configuration.d.ts +0 -15
- package/src/classes/program.d.ts +0 -44
- package/src/classes/query.d.ts +0 -21
- package/src/classes/renderbuffer.d.ts +0 -34
- package/src/classes/renderbuffer.js +0 -105
- package/src/classes/resource.d.ts +0 -47
- package/src/classes/shader.d.ts +0 -29
- package/src/classes/shader.js +0 -147
- package/src/classes/texture-2d.d.ts +0 -11
- package/src/classes/texture-3d.d.ts +0 -29
- package/src/classes/texture-cube.d.ts +0 -23
- package/src/classes/texture.d.ts +0 -80
- package/src/classes/transform-feedback.d.ts +0 -16
- package/src/classes/uniform-buffer-layout.d.ts +0 -18
- package/src/classes/uniforms.d.ts +0 -63
- package/src/classes/vertex-array-object.d.ts +0 -25
- package/src/classes/vertex-array.d.ts +0 -37
- package/src/debug/debug-program-configuration.d.ts +0 -1
- package/src/debug/debug-uniforms.d.ts +0 -11
- package/src/debug/debug-vertex-array.d.ts +0 -1
- package/src/glsl-utils/format-glsl-error.d.ts +0 -16
- package/src/glsl-utils/format-glsl-error.js +0 -107
- package/src/glsl-utils/get-shader-name.js +0 -7
- package/src/glsl-utils/get-shader-type-name.js +0 -13
- package/src/glsl-utils/get-shader-version.js +0 -12
- package/src/glsl-utils/index.js +0 -8
- package/src/index.d.ts +0 -71
- package/src/index.js +0 -70
- package/src/init.d.ts +0 -12
- package/src/types.d.ts +0 -8
- package/src/utils/assert.d.ts +0 -1
- package/src/utils/is-old-ie.d.ts +0 -1
- package/src/utils/utils.d.ts +0 -13
- package/src/utils/utils.js +0 -36
- package/src/webgl-utils/request-animation-frame.d.ts +0 -3
|
@@ -1,130 +1,116 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
exports.default = void 0;
|
|
9
7
|
|
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
-
|
|
14
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
-
|
|
16
8
|
var _attributeUtils = require("../webgl-utils/attribute-utils");
|
|
17
9
|
|
|
18
|
-
var
|
|
10
|
+
var _utils = require("../utils");
|
|
19
11
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
12
|
+
const ERR_ARGUMENT = 'UniformBufferLayout illegal argument';
|
|
13
|
+
const GL_FLOAT = 0x1406;
|
|
14
|
+
const GL_INT = 0x1404;
|
|
15
|
+
const GL_UNSIGNED_INT = 0x1405;
|
|
24
16
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
var _this$typedArray;
|
|
28
|
-
|
|
29
|
-
(0, _classCallCheck2.default)(this, UniformBufferLayout);
|
|
17
|
+
class UniformBufferLayout {
|
|
18
|
+
constructor(layout) {
|
|
30
19
|
this.layout = {};
|
|
31
20
|
this.size = 0;
|
|
32
21
|
|
|
33
|
-
for (
|
|
22
|
+
for (const key in layout) {
|
|
34
23
|
this._addUniform(key, layout[key]);
|
|
35
24
|
}
|
|
36
25
|
|
|
37
26
|
this.size += (4 - this.size % 4) % 4;
|
|
38
|
-
|
|
39
|
-
this.typedArray =
|
|
27
|
+
const data = new Float32Array(this.size);
|
|
28
|
+
this.typedArray = {
|
|
29
|
+
[GL_FLOAT]: data,
|
|
30
|
+
[GL_INT]: new Int32Array(data.buffer),
|
|
31
|
+
[GL_UNSIGNED_INT]: new Uint32Array(data.buffer)
|
|
32
|
+
};
|
|
40
33
|
}
|
|
41
34
|
|
|
42
|
-
(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
var begin = this.offsets[index];
|
|
63
|
-
var end = begin + this.sizes[index];
|
|
64
|
-
data = this.data.subarray(begin, end);
|
|
65
|
-
offset = begin * 4;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
return {
|
|
69
|
-
data: data,
|
|
70
|
-
offset: offset
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
}, {
|
|
74
|
-
key: "setUniforms",
|
|
75
|
-
value: function setUniforms(values) {
|
|
76
|
-
for (var key in values) {
|
|
77
|
-
this._setValue(key, values[key]);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
return this;
|
|
35
|
+
getBytes() {
|
|
36
|
+
return this.size * 4;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
getData() {
|
|
40
|
+
return this.typedArray[GL_FLOAT];
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
getSubData(index) {
|
|
44
|
+
let data;
|
|
45
|
+
let offset;
|
|
46
|
+
|
|
47
|
+
if (index === undefined) {
|
|
48
|
+
data = this.data;
|
|
49
|
+
offset = 0;
|
|
50
|
+
} else {
|
|
51
|
+
const begin = this.offsets[index];
|
|
52
|
+
const end = begin + this.sizes[index];
|
|
53
|
+
data = this.data.subarray(begin, end);
|
|
54
|
+
offset = begin * 4;
|
|
81
55
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
typedArray.set(value, layout.offset);
|
|
93
|
-
}
|
|
56
|
+
|
|
57
|
+
return {
|
|
58
|
+
data,
|
|
59
|
+
offset
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
setUniforms(values) {
|
|
64
|
+
for (const key in values) {
|
|
65
|
+
this._setValue(key, values[key]);
|
|
94
66
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
offset: offset
|
|
109
|
-
};
|
|
67
|
+
|
|
68
|
+
return this;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
_setValue(key, value) {
|
|
72
|
+
const layout = this.layout[key];
|
|
73
|
+
(0, _utils.assert)(layout, 'UniformLayoutStd140 illegal argument');
|
|
74
|
+
const typedArray = this.typedArray[layout.type];
|
|
75
|
+
|
|
76
|
+
if (layout.size === 1) {
|
|
77
|
+
typedArray[layout.offset] = value;
|
|
78
|
+
} else {
|
|
79
|
+
typedArray.set(value, layout.offset);
|
|
110
80
|
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
_addUniform(key, uniformType) {
|
|
84
|
+
const typeAndComponents = (0, _attributeUtils.decomposeCompositeGLType)(uniformType);
|
|
85
|
+
(0, _utils.assert)(typeAndComponents, ERR_ARGUMENT);
|
|
86
|
+
const {
|
|
87
|
+
type,
|
|
88
|
+
components: count
|
|
89
|
+
} = typeAndComponents;
|
|
90
|
+
this.size = this._alignTo(this.size, count);
|
|
91
|
+
const offset = this.size;
|
|
92
|
+
this.size += count;
|
|
93
|
+
this.layout[key] = {
|
|
94
|
+
type,
|
|
95
|
+
size: count,
|
|
96
|
+
offset
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
_alignTo(size, count) {
|
|
101
|
+
switch (count) {
|
|
102
|
+
case 1:
|
|
103
|
+
return size;
|
|
104
|
+
|
|
105
|
+
case 2:
|
|
106
|
+
return size + size % 2;
|
|
107
|
+
|
|
108
|
+
default:
|
|
109
|
+
return size + (4 - size % 4) % 4;
|
|
124
110
|
}
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
}
|
|
128
114
|
|
|
129
115
|
exports.default = UniformBufferLayout;
|
|
130
116
|
//# sourceMappingURL=uniform-buffer-layout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/classes/uniform-buffer-layout.
|
|
1
|
+
{"version":3,"sources":["../../../src/classes/uniform-buffer-layout.ts"],"names":["ERR_ARGUMENT","GL_FLOAT","GL_INT","GL_UNSIGNED_INT","UniformBufferLayout","constructor","layout","size","key","_addUniform","data","Float32Array","typedArray","Int32Array","buffer","Uint32Array","getBytes","getData","getSubData","index","offset","undefined","begin","offsets","end","sizes","subarray","setUniforms","values","_setValue","value","type","set","uniformType","typeAndComponents","components","count","_alignTo"],"mappings":"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","sourcesContent":["// @ts-nocheck\n\nimport {decomposeCompositeGLType} from '../webgl-utils/attribute-utils';\nimport {assert} from '../utils';\n\nconst ERR_ARGUMENT = 'UniformBufferLayout illegal argument';\n\n// Local constants - these will \"collapse\" during minification\nconst GL_FLOAT = 0x1406;\nconst GL_INT = 0x1404;\nconst GL_UNSIGNED_INT = 0x1405;\n\n/**\n * Std140 layout for uniforms\n */\n export default class UniformBufferLayout {\n constructor(layout) {\n this.layout = {};\n this.size = 0;\n\n // Add layout (type, size and offset) definitions for each uniform in the layout\n for (const key in layout) {\n this._addUniform(key, layout[key]);\n }\n\n this.size += (4 - (this.size % 4)) % 4;\n\n // Allocate three typed arrays pointing at same memory\n const data = new Float32Array(this.size);\n this.typedArray = {\n [GL_FLOAT]: data,\n [GL_INT]: new Int32Array(data.buffer),\n [GL_UNSIGNED_INT]: new Uint32Array(data.buffer)\n };\n }\n\n // Get number of bytes needed for buffer allocation\n getBytes(): number {\n return this.size * 4;\n }\n\n // Get the current data as Float32Array, for bufferSubData\n getData() {\n return this.typedArray[GL_FLOAT];\n }\n\n // Get offset and data for one object (for bufferSubData)\n getSubData(index): {\n data: any;\n offset: any;\n } {\n let data;\n let offset;\n if (index === undefined) {\n data = this.data;\n offset = 0;\n } else {\n const begin = this.offsets[index];\n const end = begin + this.sizes[index];\n data = this.data.subarray(begin, end);\n offset = begin * 4;\n }\n return {data, offset};\n }\n\n // Set a map of values\n setUniforms(values) {\n for (const key in values) {\n this._setValue(key, values[key]);\n }\n return this;\n }\n\n _setValue(key, value) {\n const layout = this.layout[key];\n assert(layout, 'UniformLayoutStd140 illegal argument');\n const typedArray = this.typedArray[layout.type];\n if (layout.size === 1) {\n // single value -> just set it\n typedArray[layout.offset] = value;\n } else {\n // vector/matrix -> copy the supplied (typed) array, starting from offset\n typedArray.set(value, layout.offset);\n }\n }\n\n _addUniform(key, uniformType) {\n const typeAndComponents = decomposeCompositeGLType(uniformType);\n assert(typeAndComponents, ERR_ARGUMENT);\n const {type, components: count} = typeAndComponents;\n\n // First, align (bump) current offset to an even multiple of current object (1, 2, 4)\n this.size = this._alignTo(this.size, count);\n // Use the aligned size as the offset of the current uniform.\n const offset = this.size;\n // Then, add our object's padded size ((1, 2, multiple of 4) to the current offset\n this.size += count;\n\n this.layout[key] = {type, size: count, offset};\n }\n\n // Align offset to 1, 2 or 4 elements (4, 8 or 16 bytes)\n _alignTo(size, count) {\n switch (count) {\n case 1:\n return size; // Pad upwards to even multiple of 2\n case 2:\n return size + (size % 2); // Pad upwards to even multiple of 2\n default:\n return size + ((4 - (size % 4)) % 4); // Pad upwards to even multiple of 4\n }\n }\n}\n"],"file":"uniform-buffer-layout.js"}
|
|
@@ -10,7 +10,7 @@ exports.parseUniformName = parseUniformName;
|
|
|
10
10
|
exports.checkUniformValues = checkUniformValues;
|
|
11
11
|
exports.copyUniform = copyUniform;
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _constants = _interopRequireDefault(require("@luma.gl/constants"));
|
|
14
14
|
|
|
15
15
|
var _gltools = require("@luma.gl/gltools");
|
|
16
16
|
|
|
@@ -20,64 +20,59 @@ var _renderbuffer = _interopRequireDefault(require("./renderbuffer"));
|
|
|
20
20
|
|
|
21
21
|
var _texture = _interopRequireDefault(require("./texture"));
|
|
22
22
|
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
function toUIntArray(value, uniformLength) {
|
|
76
|
-
return toTypedArray(value, uniformLength, Uint32Array, UINT_ARRAY);
|
|
77
|
-
}
|
|
23
|
+
var _utils = require("../utils");
|
|
24
|
+
|
|
25
|
+
const UNIFORM_SETTERS = {
|
|
26
|
+
[_constants.default.FLOAT]: getArraySetter.bind(null, 'uniform1fv', toFloatArray, 1, setVectorUniform),
|
|
27
|
+
[_constants.default.FLOAT_VEC2]: getArraySetter.bind(null, 'uniform2fv', toFloatArray, 2, setVectorUniform),
|
|
28
|
+
[_constants.default.FLOAT_VEC3]: getArraySetter.bind(null, 'uniform3fv', toFloatArray, 3, setVectorUniform),
|
|
29
|
+
[_constants.default.FLOAT_VEC4]: getArraySetter.bind(null, 'uniform4fv', toFloatArray, 4, setVectorUniform),
|
|
30
|
+
[_constants.default.INT]: getArraySetter.bind(null, 'uniform1iv', toIntArray, 1, setVectorUniform),
|
|
31
|
+
[_constants.default.INT_VEC2]: getArraySetter.bind(null, 'uniform2iv', toIntArray, 2, setVectorUniform),
|
|
32
|
+
[_constants.default.INT_VEC3]: getArraySetter.bind(null, 'uniform3iv', toIntArray, 3, setVectorUniform),
|
|
33
|
+
[_constants.default.INT_VEC4]: getArraySetter.bind(null, 'uniform4iv', toIntArray, 4, setVectorUniform),
|
|
34
|
+
[_constants.default.BOOL]: getArraySetter.bind(null, 'uniform1iv', toIntArray, 1, setVectorUniform),
|
|
35
|
+
[_constants.default.BOOL_VEC2]: getArraySetter.bind(null, 'uniform2iv', toIntArray, 2, setVectorUniform),
|
|
36
|
+
[_constants.default.BOOL_VEC3]: getArraySetter.bind(null, 'uniform3iv', toIntArray, 3, setVectorUniform),
|
|
37
|
+
[_constants.default.BOOL_VEC4]: getArraySetter.bind(null, 'uniform4iv', toIntArray, 4, setVectorUniform),
|
|
38
|
+
[_constants.default.FLOAT_MAT2]: getArraySetter.bind(null, 'uniformMatrix2fv', toFloatArray, 4, setMatrixUniform),
|
|
39
|
+
[_constants.default.FLOAT_MAT3]: getArraySetter.bind(null, 'uniformMatrix3fv', toFloatArray, 9, setMatrixUniform),
|
|
40
|
+
[_constants.default.FLOAT_MAT4]: getArraySetter.bind(null, 'uniformMatrix4fv', toFloatArray, 16, setMatrixUniform),
|
|
41
|
+
[_constants.default.SAMPLER_2D]: getSamplerSetter,
|
|
42
|
+
[_constants.default.SAMPLER_CUBE]: getSamplerSetter,
|
|
43
|
+
[_constants.default.UNSIGNED_INT]: getArraySetter.bind(null, 'uniform1uiv', toUIntArray, 1, setVectorUniform),
|
|
44
|
+
[_constants.default.UNSIGNED_INT_VEC2]: getArraySetter.bind(null, 'uniform2uiv', toUIntArray, 2, setVectorUniform),
|
|
45
|
+
[_constants.default.UNSIGNED_INT_VEC3]: getArraySetter.bind(null, 'uniform3uiv', toUIntArray, 3, setVectorUniform),
|
|
46
|
+
[_constants.default.UNSIGNED_INT_VEC4]: getArraySetter.bind(null, 'uniform4uiv', toUIntArray, 4, setVectorUniform),
|
|
47
|
+
[_constants.default.FLOAT_MAT2x3]: getArraySetter.bind(null, 'uniformMatrix2x3fv', toFloatArray, 6, setMatrixUniform),
|
|
48
|
+
[_constants.default.FLOAT_MAT2x4]: getArraySetter.bind(null, 'uniformMatrix2x4fv', toFloatArray, 8, setMatrixUniform),
|
|
49
|
+
[_constants.default.FLOAT_MAT3x2]: getArraySetter.bind(null, 'uniformMatrix3x2fv', toFloatArray, 6, setMatrixUniform),
|
|
50
|
+
[_constants.default.FLOAT_MAT3x4]: getArraySetter.bind(null, 'uniformMatrix3x4fv', toFloatArray, 12, setMatrixUniform),
|
|
51
|
+
[_constants.default.FLOAT_MAT4x2]: getArraySetter.bind(null, 'uniformMatrix4x2fv', toFloatArray, 8, setMatrixUniform),
|
|
52
|
+
[_constants.default.FLOAT_MAT4x3]: getArraySetter.bind(null, 'uniformMatrix4x3fv', toFloatArray, 12, setMatrixUniform),
|
|
53
|
+
[_constants.default.SAMPLER_2D]: getSamplerSetter,
|
|
54
|
+
[_constants.default.SAMPLER_CUBE]: getSamplerSetter,
|
|
55
|
+
[_constants.default.SAMPLER_3D]: getSamplerSetter,
|
|
56
|
+
[_constants.default.SAMPLER_2D_SHADOW]: getSamplerSetter,
|
|
57
|
+
[_constants.default.SAMPLER_2D_ARRAY]: getSamplerSetter,
|
|
58
|
+
[_constants.default.SAMPLER_2D_ARRAY_SHADOW]: getSamplerSetter,
|
|
59
|
+
[_constants.default.SAMPLER_CUBE_SHADOW]: getSamplerSetter,
|
|
60
|
+
[_constants.default.INT_SAMPLER_2D]: getSamplerSetter,
|
|
61
|
+
[_constants.default.INT_SAMPLER_3D]: getSamplerSetter,
|
|
62
|
+
[_constants.default.INT_SAMPLER_CUBE]: getSamplerSetter,
|
|
63
|
+
[_constants.default.INT_SAMPLER_2D_ARRAY]: getSamplerSetter,
|
|
64
|
+
[_constants.default.UNSIGNED_INT_SAMPLER_2D]: getSamplerSetter,
|
|
65
|
+
[_constants.default.UNSIGNED_INT_SAMPLER_3D]: getSamplerSetter,
|
|
66
|
+
[_constants.default.UNSIGNED_INT_SAMPLER_CUBE]: getSamplerSetter,
|
|
67
|
+
[_constants.default.UNSIGNED_INT_SAMPLER_2D_ARRAY]: getSamplerSetter
|
|
68
|
+
};
|
|
69
|
+
const FLOAT_ARRAY = {};
|
|
70
|
+
const INT_ARRAY = {};
|
|
71
|
+
const UINT_ARRAY = {};
|
|
72
|
+
const array1 = [0];
|
|
78
73
|
|
|
79
74
|
function getUniformSetter(gl, location, info) {
|
|
80
|
-
|
|
75
|
+
const setter = UNIFORM_SETTERS[info.type];
|
|
81
76
|
|
|
82
77
|
if (!setter) {
|
|
83
78
|
throw new Error("Unknown GLSL uniform type ".concat(info.type));
|
|
@@ -89,14 +84,14 @@ function getUniformSetter(gl, location, info) {
|
|
|
89
84
|
function parseUniformName(name) {
|
|
90
85
|
if (name[name.length - 1] !== ']') {
|
|
91
86
|
return {
|
|
92
|
-
name
|
|
87
|
+
name,
|
|
93
88
|
length: 1,
|
|
94
89
|
isArray: false
|
|
95
90
|
};
|
|
96
91
|
}
|
|
97
92
|
|
|
98
|
-
|
|
99
|
-
|
|
93
|
+
const UNIFORM_NAME_REGEXP = /([^[]*)(\[[0-9]+\])?/;
|
|
94
|
+
const matches = name.match(UNIFORM_NAME_REGEXP);
|
|
100
95
|
|
|
101
96
|
if (!matches || matches.length < 2) {
|
|
102
97
|
throw new Error("Failed to parse GLSL uniform name ".concat(name));
|
|
@@ -104,15 +99,15 @@ function parseUniformName(name) {
|
|
|
104
99
|
|
|
105
100
|
return {
|
|
106
101
|
name: matches[1],
|
|
107
|
-
length: matches[2] || 1,
|
|
102
|
+
length: Number(matches[2]) || 1,
|
|
108
103
|
isArray: Boolean(matches[2])
|
|
109
104
|
};
|
|
110
105
|
}
|
|
111
106
|
|
|
112
107
|
function checkUniformValues(uniforms, source, uniformMap) {
|
|
113
|
-
for (
|
|
114
|
-
|
|
115
|
-
|
|
108
|
+
for (const uniformName in uniforms) {
|
|
109
|
+
const value = uniforms[uniformName];
|
|
110
|
+
const shouldCheck = !uniformMap || Boolean(uniformMap[uniformName]);
|
|
116
111
|
|
|
117
112
|
if (shouldCheck && !checkUniformValue(value)) {
|
|
118
113
|
source = source ? "".concat(source, " ") : '';
|
|
@@ -124,6 +119,22 @@ function checkUniformValues(uniforms, source, uniformMap) {
|
|
|
124
119
|
return true;
|
|
125
120
|
}
|
|
126
121
|
|
|
122
|
+
function copyUniform(uniforms, key, value) {
|
|
123
|
+
if (Array.isArray(value) || ArrayBuffer.isView(value)) {
|
|
124
|
+
if (uniforms[key]) {
|
|
125
|
+
const dest = uniforms[key];
|
|
126
|
+
|
|
127
|
+
for (let i = 0, len = value.length; i < len; ++i) {
|
|
128
|
+
dest[i] = value[i];
|
|
129
|
+
}
|
|
130
|
+
} else {
|
|
131
|
+
uniforms[key] = value.slice();
|
|
132
|
+
}
|
|
133
|
+
} else {
|
|
134
|
+
uniforms[key] = value;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
127
138
|
function checkUniformValue(value) {
|
|
128
139
|
if (Array.isArray(value) || ArrayBuffer.isView(value)) {
|
|
129
140
|
return checkUniformArray(value);
|
|
@@ -144,30 +155,14 @@ function checkUniformValue(value) {
|
|
|
144
155
|
return false;
|
|
145
156
|
}
|
|
146
157
|
|
|
147
|
-
function copyUniform(uniforms, key, value) {
|
|
148
|
-
if (Array.isArray(value) || ArrayBuffer.isView(value)) {
|
|
149
|
-
if (uniforms[key]) {
|
|
150
|
-
var dest = uniforms[key];
|
|
151
|
-
|
|
152
|
-
for (var i = 0, len = value.length; i < len; ++i) {
|
|
153
|
-
dest[i] = value[i];
|
|
154
|
-
}
|
|
155
|
-
} else {
|
|
156
|
-
uniforms[key] = value.slice();
|
|
157
|
-
}
|
|
158
|
-
} else {
|
|
159
|
-
uniforms[key] = value;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
|
|
163
158
|
function checkUniformArray(value) {
|
|
164
159
|
if (value.length === 0) {
|
|
165
160
|
return false;
|
|
166
161
|
}
|
|
167
162
|
|
|
168
|
-
|
|
163
|
+
const checkLength = Math.min(value.length, 16);
|
|
169
164
|
|
|
170
|
-
for (
|
|
165
|
+
for (let i = 0; i < checkLength; ++i) {
|
|
171
166
|
if (!Number.isFinite(value[i])) {
|
|
172
167
|
return false;
|
|
173
168
|
}
|
|
@@ -177,9 +172,9 @@ function checkUniformArray(value) {
|
|
|
177
172
|
}
|
|
178
173
|
|
|
179
174
|
function getSamplerSetter() {
|
|
180
|
-
|
|
181
|
-
return
|
|
182
|
-
|
|
175
|
+
let cache = null;
|
|
176
|
+
return (gl, location, value) => {
|
|
177
|
+
const update = cache !== value;
|
|
183
178
|
|
|
184
179
|
if (update) {
|
|
185
180
|
gl.uniform1i(location, value);
|
|
@@ -191,21 +186,21 @@ function getSamplerSetter() {
|
|
|
191
186
|
}
|
|
192
187
|
|
|
193
188
|
function getArraySetter(functionName, toArray, size, uniformSetter) {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
return
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
189
|
+
let cache = null;
|
|
190
|
+
let cacheLength = null;
|
|
191
|
+
return (gl, location, value) => {
|
|
192
|
+
const arrayValue = toArray(value, size);
|
|
193
|
+
const length = arrayValue.length;
|
|
194
|
+
let update = false;
|
|
200
195
|
|
|
201
196
|
if (cache === null) {
|
|
202
197
|
cache = new Float32Array(length);
|
|
203
198
|
cacheLength = length;
|
|
204
199
|
update = true;
|
|
205
200
|
} else {
|
|
206
|
-
(0,
|
|
201
|
+
(0, _utils.assert)(cacheLength === length, 'Uniform length cannot change.');
|
|
207
202
|
|
|
208
|
-
for (
|
|
203
|
+
for (let i = 0; i < length; ++i) {
|
|
209
204
|
if (arrayValue[i] !== cache[i]) {
|
|
210
205
|
update = true;
|
|
211
206
|
break;
|
|
@@ -229,4 +224,50 @@ function setVectorUniform(gl, functionName, location, value) {
|
|
|
229
224
|
function setMatrixUniform(gl, functionName, location, value) {
|
|
230
225
|
gl[functionName](location, false, value);
|
|
231
226
|
}
|
|
227
|
+
|
|
228
|
+
function toTypedArray(value, uniformLength, Type, cache) {
|
|
229
|
+
if (uniformLength === 1 && typeof value === 'boolean') {
|
|
230
|
+
value = value ? 1 : 0;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
if (Number.isFinite(value)) {
|
|
234
|
+
array1[0] = value;
|
|
235
|
+
value = array1;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
const length = value.length;
|
|
239
|
+
|
|
240
|
+
if (length % uniformLength) {
|
|
241
|
+
_gltools.log.warn("Uniform size should be multiples of ".concat(uniformLength), value)();
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
if (value instanceof Type) {
|
|
245
|
+
return value;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
let result = cache[length];
|
|
249
|
+
|
|
250
|
+
if (!result) {
|
|
251
|
+
result = new Type(length);
|
|
252
|
+
cache[length] = result;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
for (let i = 0; i < length; i++) {
|
|
256
|
+
result[i] = value[i];
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
return result;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
function toFloatArray(value, uniformLength) {
|
|
263
|
+
return toTypedArray(value, uniformLength, Float32Array, FLOAT_ARRAY);
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
function toIntArray(value, uniformLength) {
|
|
267
|
+
return toTypedArray(value, uniformLength, Int32Array, INT_ARRAY);
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
function toUIntArray(value, uniformLength) {
|
|
271
|
+
return toTypedArray(value, uniformLength, Uint32Array, UINT_ARRAY);
|
|
272
|
+
}
|
|
232
273
|
//# sourceMappingURL=uniforms.js.map
|