@luma.gl/webgl 8.6.0-alpha.3 → 9.0.0-alpha.2
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/README.md +3 -67
- package/dist/adapter/converters/device-parameters.d.ts +17 -0
- package/dist/adapter/converters/device-parameters.d.ts.map +1 -0
- package/dist/{esm/adapter/converters/set-device-parameters.js → adapter/converters/device-parameters.js} +36 -5
- package/dist/adapter/converters/device-parameters.js.map +1 -0
- package/dist/{classes → adapter/converters}/renderbuffer-formats.d.ts +0 -0
- package/dist/adapter/converters/renderbuffer-formats.d.ts.map +1 -0
- package/dist/{esm/classes → adapter/converters}/renderbuffer-formats.js +1 -1
- package/dist/adapter/converters/renderbuffer-formats.js.map +1 -0
- package/dist/adapter/converters/sampler-parameters.d.ts +19 -0
- package/dist/adapter/converters/sampler-parameters.d.ts.map +1 -0
- package/dist/adapter/converters/sampler-parameters.js +208 -0
- package/dist/adapter/converters/sampler-parameters.js.map +1 -0
- package/dist/adapter/converters/texture-formats.d.ts +93 -0
- package/dist/adapter/converters/texture-formats.d.ts.map +1 -0
- package/dist/adapter/converters/texture-formats.js +954 -0
- package/dist/adapter/converters/texture-formats.js.map +1 -0
- package/dist/adapter/converters/vertex-formats.d.ts +4 -0
- package/dist/adapter/converters/vertex-formats.d.ts.map +1 -0
- package/dist/adapter/converters/vertex-formats.js +35 -0
- package/dist/adapter/converters/vertex-formats.js.map +1 -0
- package/dist/adapter/device-helpers/device-features.d.ts +3 -6
- package/dist/adapter/device-helpers/device-features.d.ts.map +1 -1
- package/dist/adapter/device-helpers/device-features.js +27 -48
- package/dist/adapter/device-helpers/device-features.js.map +1 -1
- package/dist/adapter/device-helpers/device-limits.d.ts +1 -0
- package/dist/adapter/device-helpers/device-limits.d.ts.map +1 -1
- package/dist/adapter/device-helpers/device-limits.js +1 -0
- package/dist/adapter/device-helpers/device-limits.js.map +1 -1
- package/dist/adapter/device-helpers/get-device-info.js +7 -7
- package/dist/adapter/device-helpers/get-device-info.js.map +1 -1
- package/dist/adapter/helpers/attribute-utils.d.ts +11 -0
- package/dist/adapter/helpers/attribute-utils.d.ts.map +1 -0
- package/dist/adapter/helpers/attribute-utils.js +81 -0
- package/dist/adapter/helpers/attribute-utils.js.map +1 -0
- package/dist/adapter/helpers/get-shader-layout.d.ts +55 -0
- package/dist/adapter/helpers/get-shader-layout.d.ts.map +1 -0
- package/dist/adapter/helpers/get-shader-layout.js +306 -0
- package/dist/adapter/helpers/get-shader-layout.js.map +1 -0
- package/dist/{webgl-utils → adapter/helpers}/parse-shader-compiler-log.d.ts +0 -0
- package/dist/adapter/helpers/parse-shader-compiler-log.d.ts.map +1 -0
- package/dist/{esm/webgl-utils → adapter/helpers}/parse-shader-compiler-log.js +0 -0
- package/dist/adapter/helpers/parse-shader-compiler-log.js.map +1 -0
- package/dist/adapter/helpers/set-uniform.d.ts +4 -0
- package/dist/adapter/helpers/set-uniform.d.ts.map +1 -0
- package/dist/adapter/helpers/set-uniform.js +115 -0
- package/dist/adapter/helpers/set-uniform.js.map +1 -0
- package/dist/adapter/helpers/uniforms.d.ts +26 -0
- package/dist/adapter/helpers/uniforms.d.ts.map +1 -0
- package/dist/adapter/helpers/uniforms.js +99 -0
- package/dist/adapter/helpers/uniforms.js.map +1 -0
- package/dist/adapter/objects/constants-to-keys.d.ts +5 -0
- package/dist/adapter/objects/constants-to-keys.d.ts.map +1 -0
- package/dist/{esm/webgl-utils → adapter/objects}/constants-to-keys.js +1 -0
- package/dist/adapter/objects/constants-to-keys.js.map +1 -0
- package/dist/adapter/objects/webgl-renderbuffer.d.ts +40 -0
- package/dist/adapter/objects/webgl-renderbuffer.d.ts.map +1 -0
- package/dist/{esm/classes/renderbuffer.js → adapter/objects/webgl-renderbuffer.js} +38 -72
- package/dist/adapter/objects/webgl-renderbuffer.js.map +1 -0
- package/dist/{classes → adapter/objects}/webgl-resource.d.ts +15 -14
- package/dist/adapter/objects/webgl-resource.d.ts.map +1 -0
- package/dist/{esm/classes → adapter/objects}/webgl-resource.js +7 -3
- package/dist/adapter/objects/webgl-resource.js.map +1 -0
- package/dist/adapter/objects/webgl-vertex-array-object.d.ts +27 -0
- package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +1 -0
- package/dist/adapter/objects/webgl-vertex-array-object.js +84 -0
- package/dist/adapter/objects/webgl-vertex-array-object.js.map +1 -0
- package/dist/adapter/resources/webgl-buffer.d.ts +27 -0
- package/dist/adapter/resources/webgl-buffer.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-buffer.js +164 -0
- package/dist/adapter/resources/webgl-buffer.js.map +1 -0
- package/dist/adapter/resources/webgl-command-buffer.d.ts +25 -0
- package/dist/adapter/resources/webgl-command-buffer.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-command-buffer.js +65 -0
- package/dist/adapter/resources/webgl-command-buffer.js.map +1 -0
- package/dist/adapter/resources/webgl-command-encoder.d.ts +18 -0
- package/dist/adapter/resources/webgl-command-encoder.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-command-encoder.js +53 -0
- package/dist/adapter/resources/webgl-command-encoder.js.map +1 -0
- package/dist/adapter/resources/webgl-external-texture.d.ts +1 -0
- package/dist/adapter/resources/webgl-external-texture.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-external-texture.js +2 -0
- package/dist/{es5/helpers/program-bindings.js.map → adapter/resources/webgl-external-texture.js.map} +1 -1
- package/dist/adapter/resources/webgl-framebuffer.d.ts +40 -0
- package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-framebuffer.js +265 -0
- package/dist/adapter/resources/webgl-framebuffer.js.map +1 -0
- package/dist/adapter/resources/webgl-render-pass.d.ts +11 -0
- package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-render-pass.js +19 -0
- package/dist/adapter/resources/webgl-render-pass.js.map +1 -0
- package/dist/adapter/resources/webgl-render-pipeline.d.ts +55 -0
- package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-render-pipeline.js +400 -0
- package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -0
- package/dist/adapter/resources/webgl-sampler.d.ts +20 -0
- package/dist/adapter/resources/webgl-sampler.d.ts.map +1 -0
- package/dist/adapter/resources/webgl-sampler.js +50 -0
- package/dist/adapter/resources/webgl-sampler.js.map +1 -0
- package/dist/adapter/{webgl-shader.d.ts → resources/webgl-shader.d.ts} +3 -6
- package/dist/adapter/resources/webgl-shader.d.ts.map +1 -0
- package/dist/adapter/{webgl-shader.js → resources/webgl-shader.js} +13 -20
- package/dist/adapter/resources/webgl-shader.js.map +1 -0
- package/dist/adapter/resources/webgl-texture.d.ts +193 -0
- package/dist/adapter/resources/webgl-texture.d.ts.map +1 -0
- package/dist/{esm/classes/texture.js → adapter/resources/webgl-texture.js} +274 -229
- package/dist/adapter/resources/webgl-texture.js.map +1 -0
- package/dist/adapter/webgl-canvas-context.d.ts +36 -0
- package/dist/adapter/webgl-canvas-context.d.ts.map +1 -0
- package/dist/adapter/webgl-canvas-context.js +54 -0
- package/dist/adapter/webgl-canvas-context.js.map +1 -0
- package/dist/adapter/webgl-device.d.ts +58 -77
- package/dist/adapter/webgl-device.d.ts.map +1 -1
- package/dist/adapter/webgl-device.js +185 -113
- package/dist/adapter/webgl-device.js.map +1 -1
- package/dist/classic/accessor.d.ts +32 -0
- package/dist/classic/accessor.d.ts.map +1 -0
- package/dist/{classes → classic}/accessor.js +33 -1
- package/dist/classic/accessor.js.map +1 -0
- package/dist/{classes/webgl-buffer.d.ts → classic/buffer.d.ts} +28 -33
- package/dist/classic/buffer.d.ts.map +1 -0
- package/dist/{esm/classes/webgl-buffer.js → classic/buffer.js} +53 -51
- package/dist/classic/buffer.js.map +1 -0
- package/dist/{webgl-utils → classic}/typed-array-utils.d.ts +3 -2
- package/dist/classic/typed-array-utils.d.ts.map +1 -0
- package/dist/{esm/webgl-utils → classic}/typed-array-utils.js +0 -0
- package/dist/classic/typed-array-utils.js.map +1 -0
- package/dist/context/context/context-state.d.ts.map +1 -1
- package/dist/context/context/context-state.js +1 -1
- package/dist/context/context/context-state.js.map +1 -1
- package/dist/context/context/create-context.d.ts +1 -0
- package/dist/context/context/create-context.d.ts.map +1 -1
- package/dist/context/context/create-context.js +12 -0
- package/dist/context/context/create-context.js.map +1 -1
- package/dist/context/context/device-pixels.d.ts +1 -1
- package/dist/context/context/device-pixels.d.ts.map +1 -1
- package/dist/context/context/device-pixels.js.map +1 -1
- package/dist/context/debug/spector.d.ts +18 -0
- package/dist/context/debug/spector.d.ts.map +1 -0
- package/dist/context/debug/spector.js +76 -0
- package/dist/context/debug/spector.js.map +1 -0
- package/dist/context/debug/webgl-developer-tools.d.ts +19 -0
- package/dist/context/debug/webgl-developer-tools.d.ts.map +1 -0
- package/dist/context/debug/webgl-developer-tools.js +121 -0
- package/dist/context/debug/webgl-developer-tools.js.map +1 -0
- package/dist/context/parameters/unified-parameter-api.d.ts +3 -2
- package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -1
- package/dist/context/parameters/unified-parameter-api.js +4 -4
- package/dist/context/parameters/unified-parameter-api.js.map +1 -1
- package/dist/context/parameters/webgl-parameter-tables.d.ts +40 -36
- package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -1
- package/dist/context/parameters/webgl-parameter-tables.js.map +1 -1
- package/dist/context/polyfill/get-parameter-polyfill.js.map +1 -1
- package/dist/context/polyfill/polyfill-context.js +4 -3
- package/dist/context/polyfill/polyfill-context.js.map +1 -1
- package/dist/context/state-tracker/deep-array-equal.d.ts.map +1 -1
- package/dist/context/state-tracker/deep-array-equal.js.map +1 -1
- package/dist/context/state-tracker/track-context-state.d.ts.map +1 -1
- package/dist/context/state-tracker/track-context-state.js +25 -11
- package/dist/context/state-tracker/track-context-state.js.map +1 -1
- package/dist/es5/adapter/converters/{set-device-parameters.js → device-parameters.js} +37 -5
- package/dist/es5/adapter/converters/device-parameters.js.map +1 -0
- package/dist/es5/{classes → adapter/converters}/renderbuffer-formats.js +1 -1
- package/dist/es5/adapter/converters/renderbuffer-formats.js.map +1 -0
- package/dist/es5/adapter/converters/sampler-parameters.js +226 -0
- package/dist/es5/adapter/converters/sampler-parameters.js.map +1 -0
- package/dist/es5/adapter/converters/texture-formats.js +1031 -0
- package/dist/es5/adapter/converters/texture-formats.js.map +1 -0
- package/dist/es5/adapter/converters/vertex-formats.js +45 -0
- package/dist/es5/adapter/converters/vertex-formats.js.map +1 -0
- package/dist/es5/adapter/device-helpers/device-features.js +46 -54
- package/dist/es5/adapter/device-helpers/device-features.js.map +1 -1
- package/dist/es5/adapter/device-helpers/device-limits.js +1 -1
- package/dist/es5/adapter/device-helpers/device-limits.js.map +1 -1
- package/dist/es5/adapter/device-helpers/get-device-info.js +7 -7
- package/dist/es5/adapter/device-helpers/get-device-info.js.map +1 -1
- package/dist/es5/adapter/helpers/attribute-utils.js +91 -0
- package/dist/es5/adapter/helpers/attribute-utils.js.map +1 -0
- package/dist/es5/{helpers/get-program-bindings.js → adapter/helpers/get-shader-layout.js} +184 -87
- package/dist/es5/adapter/helpers/get-shader-layout.js.map +1 -0
- package/dist/es5/{webgl-utils → adapter/helpers}/parse-shader-compiler-log.js +0 -0
- package/dist/es5/adapter/helpers/parse-shader-compiler-log.js.map +1 -0
- package/dist/es5/adapter/helpers/set-uniform.js +125 -0
- package/dist/es5/adapter/helpers/set-uniform.js.map +1 -0
- package/dist/es5/adapter/helpers/uniforms.js +112 -0
- package/dist/es5/adapter/helpers/uniforms.js.map +1 -0
- package/dist/es5/{webgl-utils → adapter/objects}/constants-to-keys.js +1 -0
- package/dist/es5/adapter/objects/constants-to-keys.js.map +1 -0
- package/dist/es5/{classes/renderbuffer.js → adapter/objects/webgl-renderbuffer.js} +48 -98
- package/dist/es5/adapter/objects/webgl-renderbuffer.js.map +1 -0
- package/dist/es5/{classes → adapter/objects}/webgl-resource.js +8 -3
- package/dist/es5/adapter/objects/webgl-resource.js.map +1 -0
- package/dist/es5/adapter/objects/webgl-vertex-array-object.js +137 -0
- package/dist/es5/adapter/objects/webgl-vertex-array-object.js.map +1 -0
- package/dist/es5/adapter/resources/webgl-buffer.js +243 -0
- package/dist/es5/adapter/resources/webgl-buffer.js.map +1 -0
- package/dist/es5/adapter/resources/webgl-command-buffer.js +96 -0
- package/dist/es5/adapter/resources/webgl-command-buffer.js.map +1 -0
- package/dist/es5/adapter/resources/webgl-command-encoder.js +98 -0
- package/dist/es5/adapter/resources/webgl-command-encoder.js.map +1 -0
- package/dist/es5/adapter/resources/webgl-external-texture.js +2 -0
- package/dist/{esm/helpers/program-bindings.js.map → es5/adapter/resources/webgl-external-texture.js.map} +1 -1
- package/dist/es5/adapter/resources/webgl-framebuffer.js +345 -0
- package/dist/es5/adapter/resources/webgl-framebuffer.js.map +1 -0
- package/dist/es5/{classes/texture-2d.js → adapter/resources/webgl-render-pass.js} +25 -45
- package/dist/es5/adapter/resources/webgl-render-pass.js.map +1 -0
- package/dist/es5/adapter/resources/webgl-render-pipeline.js +505 -0
- package/dist/es5/adapter/resources/webgl-render-pipeline.js.map +1 -0
- package/dist/es5/adapter/resources/webgl-sampler.js +96 -0
- package/dist/es5/adapter/resources/webgl-sampler.js.map +1 -0
- package/dist/es5/adapter/{webgl-shader.js → resources/webgl-shader.js} +12 -18
- package/dist/es5/adapter/resources/webgl-shader.js.map +1 -0
- package/dist/es5/{classes/texture.js → adapter/resources/webgl-texture.js} +336 -260
- package/dist/es5/adapter/resources/webgl-texture.js.map +1 -0
- package/dist/es5/adapter/webgl-canvas-context.js +97 -0
- package/dist/es5/adapter/webgl-canvas-context.js.map +1 -0
- package/dist/es5/adapter/webgl-device.js +255 -135
- package/dist/es5/adapter/webgl-device.js.map +1 -1
- package/dist/es5/{classes → classic}/accessor.js +25 -1
- package/dist/es5/classic/accessor.js.map +1 -0
- package/dist/es5/{classes/webgl-buffer.js → classic/buffer.js} +74 -66
- package/dist/es5/classic/buffer.js.map +1 -0
- package/dist/es5/{webgl-utils → classic}/typed-array-utils.js +0 -0
- package/dist/es5/classic/typed-array-utils.js.map +1 -0
- package/dist/es5/context/context/context-state.js +1 -1
- package/dist/es5/context/context/context-state.js.map +1 -1
- package/dist/es5/context/context/create-context.js +12 -0
- package/dist/es5/context/context/create-context.js.map +1 -1
- package/dist/es5/context/context/device-pixels.js.map +1 -1
- package/dist/es5/context/debug/spector.js +133 -0
- package/dist/es5/context/debug/spector.js.map +1 -0
- package/dist/es5/context/debug/webgl-developer-tools.js +198 -0
- package/dist/es5/context/debug/webgl-developer-tools.js.map +1 -0
- package/dist/es5/context/parameters/unified-parameter-api.js +7 -5
- package/dist/es5/context/parameters/unified-parameter-api.js.map +1 -1
- package/dist/es5/context/parameters/webgl-parameter-tables.js.map +1 -1
- package/dist/es5/context/polyfill/get-parameter-polyfill.js.map +1 -1
- package/dist/es5/context/polyfill/polyfill-context.js +4 -3
- package/dist/es5/context/polyfill/polyfill-context.js.map +1 -1
- package/dist/es5/context/state-tracker/deep-array-equal.js.map +1 -1
- package/dist/es5/context/state-tracker/track-context-state.js +26 -11
- package/dist/es5/context/state-tracker/track-context-state.js.map +1 -1
- package/dist/es5/index.js +66 -238
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/init.js +1 -41
- package/dist/es5/init.js.map +1 -1
- package/dist/es5/{context/parameters/webgl-parameters.js → types/webgl.js} +1 -1
- package/dist/es5/types/webgl.js.map +1 -0
- package/dist/{adapter/converters/set-device-parameters.js → esm/adapter/converters/device-parameters.js} +36 -5
- package/dist/esm/adapter/converters/device-parameters.js.map +1 -0
- package/dist/{classes → esm/adapter/converters}/renderbuffer-formats.js +1 -1
- package/dist/esm/adapter/converters/renderbuffer-formats.js.map +1 -0
- package/dist/esm/adapter/converters/sampler-parameters.js +208 -0
- package/dist/esm/adapter/converters/sampler-parameters.js.map +1 -0
- package/dist/esm/adapter/converters/texture-formats.js +954 -0
- package/dist/esm/adapter/converters/texture-formats.js.map +1 -0
- package/dist/esm/adapter/converters/vertex-formats.js +35 -0
- package/dist/esm/adapter/converters/vertex-formats.js.map +1 -0
- package/dist/esm/adapter/device-helpers/device-features.js +27 -48
- package/dist/esm/adapter/device-helpers/device-features.js.map +1 -1
- package/dist/esm/adapter/device-helpers/device-limits.js +1 -0
- package/dist/esm/adapter/device-helpers/device-limits.js.map +1 -1
- package/dist/esm/adapter/device-helpers/get-device-info.js +7 -7
- package/dist/esm/adapter/device-helpers/get-device-info.js.map +1 -1
- package/dist/esm/adapter/helpers/attribute-utils.js +81 -0
- package/dist/esm/adapter/helpers/attribute-utils.js.map +1 -0
- package/dist/esm/adapter/helpers/get-shader-layout.js +306 -0
- package/dist/esm/adapter/helpers/get-shader-layout.js.map +1 -0
- package/dist/{webgl-utils → esm/adapter/helpers}/parse-shader-compiler-log.js +0 -0
- package/dist/esm/adapter/helpers/parse-shader-compiler-log.js.map +1 -0
- package/dist/esm/adapter/helpers/set-uniform.js +115 -0
- package/dist/esm/adapter/helpers/set-uniform.js.map +1 -0
- package/dist/esm/adapter/helpers/uniforms.js +99 -0
- package/dist/esm/adapter/helpers/uniforms.js.map +1 -0
- package/dist/{webgl-utils → esm/adapter/objects}/constants-to-keys.js +1 -0
- package/dist/esm/adapter/objects/constants-to-keys.js.map +1 -0
- package/dist/{classes/renderbuffer.js → esm/adapter/objects/webgl-renderbuffer.js} +38 -72
- package/dist/esm/adapter/objects/webgl-renderbuffer.js.map +1 -0
- package/dist/{classes → esm/adapter/objects}/webgl-resource.js +7 -3
- package/dist/esm/adapter/objects/webgl-resource.js.map +1 -0
- package/dist/esm/adapter/objects/webgl-vertex-array-object.js +84 -0
- package/dist/esm/adapter/objects/webgl-vertex-array-object.js.map +1 -0
- package/dist/esm/adapter/resources/webgl-buffer.js +164 -0
- package/dist/esm/adapter/resources/webgl-buffer.js.map +1 -0
- package/dist/esm/adapter/resources/webgl-command-buffer.js +65 -0
- package/dist/esm/adapter/resources/webgl-command-buffer.js.map +1 -0
- package/dist/esm/adapter/resources/webgl-command-encoder.js +53 -0
- package/dist/esm/adapter/resources/webgl-command-encoder.js.map +1 -0
- package/dist/esm/adapter/resources/webgl-external-texture.js +2 -0
- package/dist/{helpers/program-bindings.js.map → esm/adapter/resources/webgl-external-texture.js.map} +1 -1
- package/dist/esm/adapter/resources/webgl-framebuffer.js +265 -0
- package/dist/esm/adapter/resources/webgl-framebuffer.js.map +1 -0
- package/dist/esm/adapter/resources/webgl-render-pass.js +19 -0
- package/dist/esm/adapter/resources/webgl-render-pass.js.map +1 -0
- package/dist/esm/adapter/resources/webgl-render-pipeline.js +400 -0
- package/dist/esm/adapter/resources/webgl-render-pipeline.js.map +1 -0
- package/dist/esm/adapter/resources/webgl-sampler.js +50 -0
- package/dist/esm/adapter/resources/webgl-sampler.js.map +1 -0
- package/dist/esm/adapter/{webgl-shader.js → resources/webgl-shader.js} +13 -20
- package/dist/esm/adapter/resources/webgl-shader.js.map +1 -0
- package/dist/{classes/texture.js → esm/adapter/resources/webgl-texture.js} +274 -229
- package/dist/esm/adapter/resources/webgl-texture.js.map +1 -0
- package/dist/esm/adapter/webgl-canvas-context.js +54 -0
- package/dist/esm/adapter/webgl-canvas-context.js.map +1 -0
- package/dist/esm/adapter/webgl-device.js +185 -113
- package/dist/esm/adapter/webgl-device.js.map +1 -1
- package/dist/esm/{classes → classic}/accessor.js +33 -1
- package/dist/esm/classic/accessor.js.map +1 -0
- package/dist/{classes/webgl-buffer.js → esm/classic/buffer.js} +53 -51
- package/dist/esm/classic/buffer.js.map +1 -0
- package/dist/{webgl-utils → esm/classic}/typed-array-utils.js +0 -0
- package/dist/esm/classic/typed-array-utils.js.map +1 -0
- package/dist/esm/context/context/context-state.js +1 -1
- package/dist/esm/context/context/context-state.js.map +1 -1
- package/dist/esm/context/context/create-context.js +12 -0
- package/dist/esm/context/context/create-context.js.map +1 -1
- package/dist/esm/context/context/device-pixels.js.map +1 -1
- package/dist/esm/context/debug/spector.js +76 -0
- package/dist/esm/context/debug/spector.js.map +1 -0
- package/dist/esm/context/debug/webgl-developer-tools.js +121 -0
- package/dist/esm/context/debug/webgl-developer-tools.js.map +1 -0
- package/dist/esm/context/parameters/unified-parameter-api.js +4 -4
- package/dist/esm/context/parameters/unified-parameter-api.js.map +1 -1
- package/dist/esm/context/parameters/webgl-parameter-tables.js.map +1 -1
- package/dist/esm/context/polyfill/get-parameter-polyfill.js.map +1 -1
- package/dist/esm/context/polyfill/polyfill-context.js +4 -3
- package/dist/esm/context/polyfill/polyfill-context.js.map +1 -1
- package/dist/esm/context/state-tracker/deep-array-equal.js.map +1 -1
- package/dist/esm/context/state-tracker/track-context-state.js +25 -11
- package/dist/esm/context/state-tracker/track-context-state.js.map +1 -1
- package/dist/esm/index.js +19 -29
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/init.js +2 -31
- package/dist/esm/init.js.map +1 -1
- package/dist/esm/types/webgl.js +2 -0
- package/dist/esm/types/webgl.js.map +1 -0
- package/dist/index.d.ts +22 -43
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -29
- package/dist/index.js.map +1 -1
- package/dist/init.d.ts +1 -4
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +2 -31
- package/dist/init.js.map +1 -1
- package/dist/types/webgl.d.ts +144 -0
- package/dist/types/webgl.d.ts.map +1 -0
- package/dist/types/webgl.js +2 -0
- package/dist/types/webgl.js.map +1 -0
- package/package.json +5 -5
- package/src/adapter/converters/{set-device-parameters.ts → device-parameters.ts} +52 -9
- package/src/{classes → adapter/converters}/renderbuffer-formats.ts +1 -1
- package/src/adapter/converters/sampler-parameters.ts +175 -0
- package/src/adapter/converters/texture-formats.ts +633 -0
- package/src/adapter/converters/vertex-formats.ts +22 -0
- package/src/adapter/device-helpers/device-features.ts +46 -123
- package/src/adapter/device-helpers/device-limits.ts +5 -2
- package/src/adapter/device-helpers/get-device-info.ts +8 -8
- package/src/adapter/helpers/attribute-utils.ts +61 -0
- package/src/adapter/helpers/get-shader-layout.ts +388 -0
- package/src/{webgl-utils → adapter/helpers}/parse-shader-compiler-log.ts +0 -0
- package/src/adapter/helpers/set-uniform.ts +87 -0
- package/src/adapter/helpers/uniforms.ts +110 -0
- package/src/{webgl-utils → adapter/objects}/constants-to-keys.ts +6 -3
- package/src/adapter/objects/webgl-renderbuffer.ts +104 -0
- package/src/{classes → adapter/objects}/webgl-resource.ts +23 -17
- package/src/adapter/objects/webgl-vertex-array-object.ts +111 -0
- package/src/adapter/resources/webgl-buffer.ts +219 -0
- package/src/adapter/resources/webgl-command-buffer.ts +94 -0
- package/src/adapter/resources/webgl-command-encoder.ts +58 -0
- package/src/adapter/resources/webgl-external-texture.ts +92 -0
- package/src/adapter/resources/webgl-framebuffer.ts +279 -0
- package/src/adapter/resources/webgl-render-pass.ts +23 -0
- package/src/adapter/resources/webgl-render-pipeline.ts +413 -0
- package/src/adapter/resources/webgl-sampler.ts +54 -0
- package/src/adapter/{webgl-shader.ts → resources/webgl-shader.ts} +14 -20
- package/src/adapter/resources/webgl-texture.ts +1023 -0
- package/src/adapter/webgl-canvas-context.ts +74 -0
- package/src/adapter/webgl-device.ts +229 -285
- package/{dist/esm/classes/accessor.ts.disabled → src/classic/accessor.ts} +50 -36
- package/src/{classes/webgl-buffer.ts → classic/buffer.ts} +69 -77
- package/src/{webgl-utils → classic}/typed-array-utils.ts +3 -1
- package/src/context/context/context-state.ts +4 -2
- package/src/context/context/create-context.ts +28 -1
- package/src/context/context/device-pixels.ts +9 -4
- package/src/context/debug/spector.ts +92 -0
- package/src/context/debug/webgl-developer-tools.ts +162 -0
- package/src/context/parameters/unified-parameter-api.ts +6 -4
- package/src/context/parameters/webgl-parameter-tables.ts +38 -36
- package/src/context/polyfill/get-parameter-polyfill.ts +1 -1
- package/src/context/polyfill/polyfill-context.ts +4 -3
- package/src/context/state-tracker/deep-array-equal.ts +1 -1
- package/src/context/state-tracker/track-context-state.ts +27 -20
- package/src/index.ts +33 -91
- package/src/init.ts +2 -46
- package/src/types/webgl.ts +283 -0
- package/dist/adapter/converters/set-device-parameters.d.ts +0 -5
- package/dist/adapter/converters/set-device-parameters.d.ts.map +0 -1
- package/dist/adapter/converters/set-device-parameters.js.map +0 -1
- package/dist/adapter/converters/webgpu-texture-formats.d.ts +0 -281
- package/dist/adapter/converters/webgpu-texture-formats.d.ts.map +0 -1
- package/dist/adapter/converters/webgpu-texture-formats.js +0 -285
- package/dist/adapter/converters/webgpu-texture-formats.js.map +0 -1
- package/dist/adapter/webgl-shader.d.ts.map +0 -1
- package/dist/adapter/webgl-shader.js.map +0 -1
- package/dist/classes/accessor.d.ts +0 -28
- package/dist/classes/accessor.d.ts.map +0 -1
- package/dist/classes/accessor.js.map +0 -1
- package/dist/classes/accessor.ts.disabled +0 -159
- package/dist/classes/clear.d.ts +0 -17
- package/dist/classes/clear.d.ts.map +0 -1
- package/dist/classes/clear.js +0 -105
- package/dist/classes/clear.js.map +0 -1
- package/dist/classes/copy-and-blit.d.ts +0 -86
- package/dist/classes/copy-and-blit.d.ts.map +0 -1
- package/dist/classes/copy-and-blit.js +0 -338
- package/dist/classes/copy-and-blit.js.map +0 -1
- package/dist/classes/framebuffer.d.ts +0 -139
- package/dist/classes/framebuffer.d.ts.map +0 -1
- package/dist/classes/framebuffer.js +0 -656
- package/dist/classes/framebuffer.js.map +0 -1
- package/dist/classes/program-configuration.d.ts +0 -24
- package/dist/classes/program-configuration.d.ts.map +0 -1
- package/dist/classes/program-configuration.js +0 -73
- package/dist/classes/program-configuration.js.map +0 -1
- package/dist/classes/program.d.ts +0 -66
- package/dist/classes/program.d.ts.map +0 -1
- package/dist/classes/program.js +0 -379
- package/dist/classes/program.js.map +0 -1
- package/dist/classes/query.d.ts +0 -27
- package/dist/classes/query.d.ts.map +0 -1
- package/dist/classes/query.js +0 -145
- package/dist/classes/query.js.map +0 -1
- package/dist/classes/renderbuffer-formats.d.ts.map +0 -1
- package/dist/classes/renderbuffer-formats.js.map +0 -1
- package/dist/classes/renderbuffer.d.ts +0 -60
- package/dist/classes/renderbuffer.d.ts.map +0 -1
- package/dist/classes/renderbuffer.js.map +0 -1
- package/dist/classes/shader.d.ts +0 -42
- package/dist/classes/shader.d.ts.map +0 -1
- package/dist/classes/shader.js +0 -118
- package/dist/classes/shader.js.map +0 -1
- package/dist/classes/texture-2d.d.ts +0 -9
- package/dist/classes/texture-2d.d.ts.map +0 -1
- package/dist/classes/texture-2d.js +0 -36
- package/dist/classes/texture-2d.js.map +0 -1
- package/dist/classes/texture-3d.d.ts +0 -29
- package/dist/classes/texture-3d.d.ts.map +0 -1
- package/dist/classes/texture-3d.js +0 -76
- package/dist/classes/texture-3d.js.map +0 -1
- package/dist/classes/texture-cube.d.ts +0 -28
- package/dist/classes/texture-cube.d.ts.map +0 -1
- package/dist/classes/texture-cube.js +0 -130
- package/dist/classes/texture-cube.js.map +0 -1
- package/dist/classes/texture-formats.d.ts +0 -37
- package/dist/classes/texture-formats.d.ts.map +0 -1
- package/dist/classes/texture-formats.js +0 -98
- package/dist/classes/texture-formats.js.map +0 -1
- package/dist/classes/texture.d.ts +0 -123
- package/dist/classes/texture.d.ts.map +0 -1
- package/dist/classes/texture.js.map +0 -1
- package/dist/classes/transform-feedback.d.ts +0 -33
- package/dist/classes/transform-feedback.d.ts.map +0 -1
- package/dist/classes/transform-feedback.js +0 -198
- package/dist/classes/transform-feedback.js.map +0 -1
- package/dist/classes/uniform-buffer-layout.d.ts +0 -17
- package/dist/classes/uniform-buffer-layout.d.ts.map +0 -1
- package/dist/classes/uniform-buffer-layout.js +0 -104
- package/dist/classes/uniform-buffer-layout.js.map +0 -1
- package/dist/classes/uniforms.d.ts +0 -37
- package/dist/classes/uniforms.d.ts.map +0 -1
- package/dist/classes/uniforms.js +0 -250
- package/dist/classes/uniforms.js.map +0 -1
- package/dist/classes/vertex-array-object.d.ts +0 -76
- package/dist/classes/vertex-array-object.d.ts.map +0 -1
- package/dist/classes/vertex-array-object.js +0 -261
- package/dist/classes/vertex-array-object.js.map +0 -1
- package/dist/classes/vertex-array.d.ts +0 -75
- package/dist/classes/vertex-array.d.ts.map +0 -1
- package/dist/classes/vertex-array.js +0 -408
- package/dist/classes/vertex-array.js.map +0 -1
- package/dist/classes/webgl-buffer.d.ts.map +0 -1
- package/dist/classes/webgl-buffer.js.map +0 -1
- package/dist/classes/webgl-resource.d.ts.map +0 -1
- package/dist/classes/webgl-resource.js.map +0 -1
- package/dist/context/context/get-canvas.d.ts +0 -13
- package/dist/context/context/get-canvas.d.ts.map +0 -1
- package/dist/context/context/get-canvas.js +0 -31
- package/dist/context/context/get-canvas.js.map +0 -1
- package/dist/context/context/resize-context.d.ts +0 -20
- package/dist/context/context/resize-context.d.ts.map +0 -1
- package/dist/context/context/resize-context.js +0 -15
- package/dist/context/context/resize-context.js.map +0 -1
- package/dist/context/parameters/webgl-parameters.d.ts +0 -144
- package/dist/context/parameters/webgl-parameters.d.ts.map +0 -1
- package/dist/context/parameters/webgl-parameters.js +0 -2
- package/dist/context/parameters/webgl-parameters.js.map +0 -1
- package/dist/debug/debug-program-configuration.d.ts +0 -2
- package/dist/debug/debug-program-configuration.d.ts.map +0 -1
- package/dist/debug/debug-program-configuration.js +0 -40
- package/dist/debug/debug-program-configuration.js.map +0 -1
- package/dist/debug/debug-uniforms.d.ts +0 -12
- package/dist/debug/debug-uniforms.d.ts.map +0 -1
- package/dist/debug/debug-uniforms.js +0 -108
- package/dist/debug/debug-uniforms.js.map +0 -1
- package/dist/debug/debug-vertex-array.d.ts +0 -5
- package/dist/debug/debug-vertex-array.d.ts.map +0 -1
- package/dist/debug/debug-vertex-array.js +0 -118
- package/dist/debug/debug-vertex-array.js.map +0 -1
- package/dist/es5/adapter/converters/set-device-parameters.js.map +0 -1
- package/dist/es5/adapter/converters/webgpu-texture-formats.js +0 -296
- package/dist/es5/adapter/converters/webgpu-texture-formats.js.map +0 -1
- package/dist/es5/adapter/webgl-shader.js.map +0 -1
- package/dist/es5/classes/accessor.d.ts +0 -28
- package/dist/es5/classes/accessor.js.map +0 -1
- package/dist/es5/classes/accessor.ts.disabled +0 -159
- package/dist/es5/classes/clear.js +0 -135
- package/dist/es5/classes/clear.js.map +0 -1
- package/dist/es5/classes/copy-and-blit.js +0 -382
- package/dist/es5/classes/copy-and-blit.js.map +0 -1
- package/dist/es5/classes/framebuffer.js +0 -807
- package/dist/es5/classes/framebuffer.js.map +0 -1
- package/dist/es5/classes/program-configuration.js +0 -119
- package/dist/es5/classes/program-configuration.js.map +0 -1
- package/dist/es5/classes/program.js +0 -471
- package/dist/es5/classes/program.js.map +0 -1
- package/dist/es5/classes/query.js +0 -222
- package/dist/es5/classes/query.js.map +0 -1
- package/dist/es5/classes/renderbuffer-formats.js.map +0 -1
- package/dist/es5/classes/renderbuffer.js.map +0 -1
- package/dist/es5/classes/shader.js +0 -195
- package/dist/es5/classes/shader.js.map +0 -1
- package/dist/es5/classes/texture-2d.js.map +0 -1
- package/dist/es5/classes/texture-3d.js +0 -142
- package/dist/es5/classes/texture-3d.js.map +0 -1
- package/dist/es5/classes/texture-cube.js +0 -202
- package/dist/es5/classes/texture-cube.js.map +0 -1
- package/dist/es5/classes/texture-formats.js +0 -87
- package/dist/es5/classes/texture-formats.js.map +0 -1
- package/dist/es5/classes/texture.js.map +0 -1
- package/dist/es5/classes/transform-feedback.js +0 -267
- package/dist/es5/classes/transform-feedback.js.map +0 -1
- package/dist/es5/classes/uniform-buffer-layout.js +0 -130
- package/dist/es5/classes/uniform-buffer-layout.js.map +0 -1
- package/dist/es5/classes/uniforms.js +0 -232
- package/dist/es5/classes/uniforms.js.map +0 -1
- package/dist/es5/classes/vertex-array-object.js +0 -337
- package/dist/es5/classes/vertex-array-object.js.map +0 -1
- package/dist/es5/classes/vertex-array.js +0 -465
- package/dist/es5/classes/vertex-array.js.map +0 -1
- package/dist/es5/classes/webgl-buffer.js.map +0 -1
- package/dist/es5/classes/webgl-resource.js.map +0 -1
- package/dist/es5/context/context/get-canvas.js +0 -40
- package/dist/es5/context/context/get-canvas.js.map +0 -1
- package/dist/es5/context/context/resize-context.js +0 -23
- package/dist/es5/context/context/resize-context.js.map +0 -1
- package/dist/es5/context/parameters/webgl-parameters.js.map +0 -1
- package/dist/es5/debug/debug-program-configuration.js +0 -76
- package/dist/es5/debug/debug-program-configuration.js.map +0 -1
- package/dist/es5/debug/debug-uniforms.js +0 -156
- package/dist/es5/debug/debug-uniforms.js.map +0 -1
- package/dist/es5/debug/debug-vertex-array.js +0 -126
- package/dist/es5/debug/debug-vertex-array.js.map +0 -1
- package/dist/es5/helpers/get-program-bindings.js.map +0 -1
- package/dist/es5/helpers/program-bindings.js +0 -2
- package/dist/es5/types/accessor.d.ts +0 -29
- package/dist/es5/webgl-utils/attribute-utils.js +0 -186
- package/dist/es5/webgl-utils/attribute-utils.js.map +0 -1
- package/dist/es5/webgl-utils/constants-to-keys.js.map +0 -1
- package/dist/es5/webgl-utils/format-utils.js +0 -58
- package/dist/es5/webgl-utils/format-utils.js.map +0 -1
- package/dist/es5/webgl-utils/get-error.js +0 -49
- package/dist/es5/webgl-utils/get-error.js.map +0 -1
- package/dist/es5/webgl-utils/index.js +0 -74
- package/dist/es5/webgl-utils/index.js.map +0 -1
- package/dist/es5/webgl-utils/parse-shader-compiler-log.js.map +0 -1
- package/dist/es5/webgl-utils/request-animation-frame.js +0 -16
- package/dist/es5/webgl-utils/request-animation-frame.js.map +0 -1
- package/dist/es5/webgl-utils/texture-utils.js +0 -61
- package/dist/es5/webgl-utils/texture-utils.js.map +0 -1
- package/dist/es5/webgl-utils/typed-array-utils.js.map +0 -1
- package/dist/esm/adapter/converters/set-device-parameters.js.map +0 -1
- package/dist/esm/adapter/converters/webgpu-texture-formats.js +0 -285
- package/dist/esm/adapter/converters/webgpu-texture-formats.js.map +0 -1
- package/dist/esm/adapter/webgl-shader.js.map +0 -1
- package/dist/esm/classes/accessor.d.ts +0 -28
- package/dist/esm/classes/accessor.js.map +0 -1
- package/dist/esm/classes/clear.js +0 -105
- package/dist/esm/classes/clear.js.map +0 -1
- package/dist/esm/classes/copy-and-blit.js +0 -338
- package/dist/esm/classes/copy-and-blit.js.map +0 -1
- package/dist/esm/classes/framebuffer.js +0 -656
- package/dist/esm/classes/framebuffer.js.map +0 -1
- package/dist/esm/classes/program-configuration.js +0 -73
- package/dist/esm/classes/program-configuration.js.map +0 -1
- package/dist/esm/classes/program.js +0 -379
- package/dist/esm/classes/program.js.map +0 -1
- package/dist/esm/classes/query.js +0 -145
- package/dist/esm/classes/query.js.map +0 -1
- package/dist/esm/classes/renderbuffer-formats.js.map +0 -1
- package/dist/esm/classes/renderbuffer.js.map +0 -1
- package/dist/esm/classes/shader.js +0 -118
- package/dist/esm/classes/shader.js.map +0 -1
- package/dist/esm/classes/texture-2d.js +0 -36
- package/dist/esm/classes/texture-2d.js.map +0 -1
- package/dist/esm/classes/texture-3d.js +0 -76
- package/dist/esm/classes/texture-3d.js.map +0 -1
- package/dist/esm/classes/texture-cube.js +0 -130
- package/dist/esm/classes/texture-cube.js.map +0 -1
- package/dist/esm/classes/texture-formats.js +0 -98
- package/dist/esm/classes/texture-formats.js.map +0 -1
- package/dist/esm/classes/texture.js.map +0 -1
- package/dist/esm/classes/transform-feedback.js +0 -198
- package/dist/esm/classes/transform-feedback.js.map +0 -1
- package/dist/esm/classes/uniform-buffer-layout.js +0 -104
- package/dist/esm/classes/uniform-buffer-layout.js.map +0 -1
- package/dist/esm/classes/uniforms.js +0 -250
- package/dist/esm/classes/uniforms.js.map +0 -1
- package/dist/esm/classes/vertex-array-object.js +0 -261
- package/dist/esm/classes/vertex-array-object.js.map +0 -1
- package/dist/esm/classes/vertex-array.js +0 -408
- package/dist/esm/classes/vertex-array.js.map +0 -1
- package/dist/esm/classes/webgl-buffer.js.map +0 -1
- package/dist/esm/classes/webgl-resource.js.map +0 -1
- package/dist/esm/context/context/get-canvas.js +0 -31
- package/dist/esm/context/context/get-canvas.js.map +0 -1
- package/dist/esm/context/context/resize-context.js +0 -15
- package/dist/esm/context/context/resize-context.js.map +0 -1
- package/dist/esm/context/parameters/webgl-parameters.js +0 -2
- package/dist/esm/context/parameters/webgl-parameters.js.map +0 -1
- package/dist/esm/debug/debug-program-configuration.js +0 -40
- package/dist/esm/debug/debug-program-configuration.js.map +0 -1
- package/dist/esm/debug/debug-uniforms.js +0 -108
- package/dist/esm/debug/debug-uniforms.js.map +0 -1
- package/dist/esm/debug/debug-vertex-array.js +0 -118
- package/dist/esm/debug/debug-vertex-array.js.map +0 -1
- package/dist/esm/helpers/get-program-bindings.js +0 -228
- package/dist/esm/helpers/get-program-bindings.js.map +0 -1
- package/dist/esm/helpers/program-bindings.js +0 -2
- package/dist/esm/types/accessor.d.ts +0 -29
- package/dist/esm/webgl-utils/attribute-utils.js +0 -182
- package/dist/esm/webgl-utils/attribute-utils.js.map +0 -1
- package/dist/esm/webgl-utils/constants-to-keys.js.map +0 -1
- package/dist/esm/webgl-utils/format-utils.js +0 -45
- package/dist/esm/webgl-utils/format-utils.js.map +0 -1
- package/dist/esm/webgl-utils/get-error.js +0 -41
- package/dist/esm/webgl-utils/get-error.js.map +0 -1
- package/dist/esm/webgl-utils/index.js +0 -5
- package/dist/esm/webgl-utils/index.js.map +0 -1
- package/dist/esm/webgl-utils/parse-shader-compiler-log.js.map +0 -1
- package/dist/esm/webgl-utils/request-animation-frame.js +0 -7
- package/dist/esm/webgl-utils/request-animation-frame.js.map +0 -1
- package/dist/esm/webgl-utils/texture-utils.js +0 -48
- package/dist/esm/webgl-utils/texture-utils.js.map +0 -1
- package/dist/esm/webgl-utils/typed-array-utils.js.map +0 -1
- package/dist/helpers/get-program-bindings.d.ts +0 -8
- package/dist/helpers/get-program-bindings.d.ts.map +0 -1
- package/dist/helpers/get-program-bindings.js +0 -228
- package/dist/helpers/get-program-bindings.js.map +0 -1
- package/dist/helpers/program-bindings.d.ts +0 -41
- package/dist/helpers/program-bindings.d.ts.map +0 -1
- package/dist/helpers/program-bindings.js +0 -2
- package/dist/types/accessor.d.ts +0 -29
- package/dist/webgl-utils/attribute-utils.d.ts +0 -18
- package/dist/webgl-utils/attribute-utils.d.ts.map +0 -1
- package/dist/webgl-utils/attribute-utils.js +0 -182
- package/dist/webgl-utils/attribute-utils.js.map +0 -1
- package/dist/webgl-utils/constants-to-keys.d.ts +0 -4
- package/dist/webgl-utils/constants-to-keys.d.ts.map +0 -1
- package/dist/webgl-utils/constants-to-keys.js.map +0 -1
- package/dist/webgl-utils/format-utils.d.ts +0 -3
- package/dist/webgl-utils/format-utils.d.ts.map +0 -1
- package/dist/webgl-utils/format-utils.js +0 -45
- package/dist/webgl-utils/format-utils.js.map +0 -1
- package/dist/webgl-utils/get-error.d.ts +0 -3
- package/dist/webgl-utils/get-error.d.ts.map +0 -1
- package/dist/webgl-utils/get-error.js +0 -41
- package/dist/webgl-utils/get-error.js.map +0 -1
- package/dist/webgl-utils/index.d.ts +0 -5
- package/dist/webgl-utils/index.d.ts.map +0 -1
- package/dist/webgl-utils/index.js +0 -5
- package/dist/webgl-utils/index.js.map +0 -1
- package/dist/webgl-utils/parse-shader-compiler-log.d.ts.map +0 -1
- package/dist/webgl-utils/parse-shader-compiler-log.js.map +0 -1
- package/dist/webgl-utils/request-animation-frame.d.ts +0 -4
- package/dist/webgl-utils/request-animation-frame.d.ts.map +0 -1
- package/dist/webgl-utils/request-animation-frame.js +0 -7
- package/dist/webgl-utils/request-animation-frame.js.map +0 -1
- package/dist/webgl-utils/texture-utils.d.ts +0 -15
- package/dist/webgl-utils/texture-utils.d.ts.map +0 -1
- package/dist/webgl-utils/texture-utils.js +0 -48
- package/dist/webgl-utils/texture-utils.js.map +0 -1
- package/dist/webgl-utils/typed-array-utils.d.ts.map +0 -1
- package/dist/webgl-utils/typed-array-utils.js.map +0 -1
- package/src/.DS_Store +0 -0
- package/src/adapter/converters/webgpu-texture-formats.ts +0 -167
- package/src/classes/accessor.d.ts +0 -28
- package/src/classes/accessor.js +0 -129
- package/src/classes/accessor.ts.disabled +0 -159
- package/src/classes/clear.ts +0 -108
- package/src/classes/copy-and-blit.ts +0 -460
- package/src/classes/framebuffer.ts +0 -763
- package/src/classes/program-configuration.ts +0 -77
- package/src/classes/program.ts +0 -431
- package/src/classes/query.ts +0 -171
- package/src/classes/renderbuffer.ts +0 -154
- package/src/classes/shader.ts +0 -129
- package/src/classes/texture-2d.ts +0 -35
- package/src/classes/texture-3d.ts +0 -123
- package/src/classes/texture-cube.ts +0 -162
- package/src/classes/texture-formats.ts +0 -171
- package/src/classes/texture.ts +0 -965
- package/src/classes/transform-feedback.ts +0 -191
- package/src/classes/uniform-buffer-layout.ts +0 -113
- package/src/classes/uniforms.ts +0 -394
- package/src/classes/vertex-array-object.ts +0 -339
- package/src/classes/vertex-array.ts +0 -484
- package/src/context/context/get-canvas.ts +0 -37
- package/src/context/context/resize-context.ts +0 -37
- package/src/context/parameters/webgl-parameters.ts +0 -197
- package/src/debug/debug-program-configuration.ts +0 -32
- package/src/debug/debug-uniforms.ts +0 -100
- package/src/debug/debug-vertex-array.ts +0 -123
- package/src/helpers/get-program-bindings.ts +0 -244
- package/src/helpers/program-bindings.ts +0 -46
- package/src/types/accessor.d.ts +0 -29
- package/src/webgl-utils/attribute-utils.ts +0 -171
- package/src/webgl-utils/format-utils.ts +0 -43
- package/src/webgl-utils/get-error.ts +0 -56
- package/src/webgl-utils/index.ts +0 -12
- package/src/webgl-utils/request-animation-frame.ts +0 -14
- package/src/webgl-utils/texture-utils.ts +0 -60
package/src/index.ts
CHANGED
|
@@ -5,71 +5,35 @@
|
|
|
5
5
|
// Higher level abstractions can be built on these classes
|
|
6
6
|
|
|
7
7
|
// Initialize any global state
|
|
8
|
-
import '
|
|
8
|
+
import '@luma.gl/api';
|
|
9
|
+
import './init'
|
|
10
|
+
|
|
11
|
+
export {default as WebGLDevice} from './adapter/webgl-device';
|
|
12
|
+
export {default as WebGLCanvasContext} from './adapter/webgl-canvas-context';
|
|
13
|
+
|
|
14
|
+
// Legacy WebGL Classes - will be moved to gltools
|
|
15
|
+
export {default as Accessor} from './classic/accessor';
|
|
16
|
+
export type {ClassicBufferProps as BufferProps} from './classic/buffer';
|
|
17
|
+
export {default as Buffer} from './classic/buffer';
|
|
18
|
+
export {default as WEBGLResource, default as WebGLResource} from './adapter/objects/webgl-resource';
|
|
19
|
+
export {default as WEBGLBuffer} from './adapter/resources/webgl-buffer';
|
|
20
|
+
export {default as WEBGLTexture} from './adapter/resources/webgl-texture';
|
|
21
|
+
// export {default as WEBGLExternalTexture} from './adapter/resources/webgl-external-texture';
|
|
22
|
+
export {default as WEBGLShader} from './adapter/resources/webgl-shader';
|
|
23
|
+
export {default as WEBGLSampler} from './adapter/resources/webgl-sampler';
|
|
24
|
+
export {default as WEBGLFramebuffer} from './adapter/resources/webgl-framebuffer';
|
|
25
|
+
|
|
26
|
+
export {default as WEBGLRenderPipeline} from './adapter/resources/webgl-render-pipeline';
|
|
27
|
+
|
|
28
|
+
// export {default as WEBGLComputePipeline} from './adapter/resources/webgl-compute-pipeline';
|
|
29
|
+
export {default as WEBGLCommandEncoder} from './adapter/resources/webgl-command-encoder';
|
|
30
|
+
export {default as WEBGLRenderPass} from './adapter/resources/webgl-render-pass';
|
|
31
|
+
//export {default as WEBGLComputePass} from './adapter/resources/webgl-compute-pass';
|
|
32
|
+
|
|
33
|
+
export type {RenderbufferProps} from './adapter/objects/webgl-renderbuffer';
|
|
34
|
+
export {default as WEBGLRenderbuffer} from './adapter/objects/webgl-renderbuffer';
|
|
35
|
+
export {default as WEBGLVertexArrayObject} from './adapter/objects/webgl-vertex-array-object';
|
|
9
36
|
|
|
10
|
-
// export type {WebGLDeviceProps, WebGLDeviceInfo, WebGPUDeviceLimits} from './lib/webgl-device';
|
|
11
|
-
export type {WebGLDeviceProps} from './adapter/webgl-device';
|
|
12
|
-
export {default as WebGLDevice, getWebGLDevice} from './adapter/webgl-device';
|
|
13
|
-
|
|
14
|
-
// UTILS
|
|
15
|
-
export {requestAnimationFrame, cancelAnimationFrame} from './webgl-utils/request-animation-frame';
|
|
16
|
-
|
|
17
|
-
// WebGL Functions
|
|
18
|
-
export {cloneTextureFrom} from './webgl-utils/texture-utils';
|
|
19
|
-
export {getKeyValue, getKey} from './webgl-utils/constants-to-keys';
|
|
20
|
-
|
|
21
|
-
// WebGL Helper Classes
|
|
22
|
-
export {default as Accessor} from './classes/accessor';
|
|
23
|
-
|
|
24
|
-
// WebGL1 classes
|
|
25
|
-
export type {BufferProps} from '@luma.gl/api';
|
|
26
|
-
export {default as Buffer} from './classes/webgl-buffer';
|
|
27
|
-
export type {Texture2DProps} from './classes/texture-2d';
|
|
28
|
-
export {default as Texture2D} from './classes/texture-2d';
|
|
29
|
-
export type {TextureCubeProps} from './classes/texture-cube';
|
|
30
|
-
export {default as TextureCube} from './classes/texture-cube';
|
|
31
|
-
|
|
32
|
-
export type {ProgramProps} from './classes/program';
|
|
33
|
-
export {default as Program} from './classes/program';
|
|
34
|
-
export type {FramebufferProps} from './classes/framebuffer';
|
|
35
|
-
export {default as Framebuffer} from './classes/framebuffer';
|
|
36
|
-
export type {RenderbufferProps} from './classes/renderbuffer';
|
|
37
|
-
export {default as Renderbuffer} from './classes/renderbuffer';
|
|
38
|
-
|
|
39
|
-
// Classic luma.gl classes (For backwards compatibility)
|
|
40
|
-
export type {ShaderProps} from './classes/shader';
|
|
41
|
-
export {Shader, VertexShader, FragmentShader} from './classes/shader';
|
|
42
|
-
|
|
43
|
-
export {clear, clearBuffer} from './classes/clear';
|
|
44
|
-
|
|
45
|
-
// Copy and Blit
|
|
46
|
-
export {
|
|
47
|
-
readPixelsToArray,
|
|
48
|
-
readPixelsToBuffer,
|
|
49
|
-
copyToDataUrl,
|
|
50
|
-
copyToImage,
|
|
51
|
-
copyToTexture,
|
|
52
|
-
blit
|
|
53
|
-
} from './classes/copy-and-blit';
|
|
54
|
-
|
|
55
|
-
// WebGL2 classes & Extensions
|
|
56
|
-
export type {QueryProps} from './classes/query';
|
|
57
|
-
export {default as Query} from './classes/query';
|
|
58
|
-
export type {Texture3DProps} from './classes/texture-3d';
|
|
59
|
-
export {default as Texture3D} from './classes/texture-3d';
|
|
60
|
-
export type {TransformFeedbackProps} from './classes/transform-feedback';
|
|
61
|
-
export {default as TransformFeedback} from './classes/transform-feedback';
|
|
62
|
-
export type {VertexArrayObjectProps} from './classes/vertex-array-object';
|
|
63
|
-
export {default as VertexArrayObject} from './classes/vertex-array-object';
|
|
64
|
-
export type {VertexArrayProps} from './classes/vertex-array';
|
|
65
|
-
export {default as VertexArray} from './classes/vertex-array';
|
|
66
|
-
export {default as UniformBufferLayout} from './classes/uniform-buffer-layout';
|
|
67
|
-
|
|
68
|
-
export {setDeviceParameters} from './adapter/converters/set-device-parameters';
|
|
69
|
-
|
|
70
|
-
// experimental WebGL exports
|
|
71
|
-
|
|
72
|
-
// UTILS
|
|
73
37
|
export {
|
|
74
38
|
isWebGL,
|
|
75
39
|
isWebGL2,
|
|
@@ -83,7 +47,9 @@ export {cssToDeviceRatio, cssToDevicePixels} from './context/context/device-pixe
|
|
|
83
47
|
|
|
84
48
|
// Unified parameter API
|
|
85
49
|
|
|
86
|
-
export
|
|
50
|
+
export {setDeviceParameters, withDeviceParameters} from './adapter/converters/device-parameters';
|
|
51
|
+
|
|
52
|
+
export type {GLParameters} from './types/webgl';
|
|
87
53
|
export {
|
|
88
54
|
getParameters,
|
|
89
55
|
setParameters,
|
|
@@ -104,30 +70,6 @@ export {
|
|
|
104
70
|
// Polyfills (supports a subset of WebGL2 APIs on WebGL1 contexts)
|
|
105
71
|
export {polyfillContext} from './context/polyfill/polyfill-context';
|
|
106
72
|
|
|
107
|
-
// INTERNAL
|
|
108
|
-
export {parseUniformName, getUniformSetter} from './classes/uniforms';
|
|
109
|
-
export {getDebugTableForUniforms} from './debug/debug-uniforms';
|
|
110
|
-
export {getDebugTableForVertexArray} from './debug/debug-vertex-array';
|
|
111
|
-
export {getDebugTableForProgramConfiguration} from './debug/debug-program-configuration';
|
|
112
|
-
|
|
113
|
-
// DEPRECATED
|
|
114
|
-
|
|
115
|
-
// Deprecated re-exports
|
|
116
|
-
export {lumaStats} from './init';
|
|
117
|
-
export {log, assert, uid, isObjectEmpty} from '@luma.gl/api';
|
|
118
|
-
export {setPathPrefix, loadFile, loadImage} from '@luma.gl/api';
|
|
119
|
-
|
|
120
|
-
// export {
|
|
121
|
-
// getContextInfo, getGLContextInfo, getContextLimits,
|
|
122
|
-
// FEATURES,
|
|
123
|
-
// getFeatures,
|
|
124
|
-
// canCompileGLGSExtension
|
|
125
|
-
// } from '@luma.gl/gltools';
|
|
126
|
-
|
|
127
73
|
// HELPERS - EXPERIMENTAL
|
|
128
|
-
export {getProgramBindings} from './helpers/get-
|
|
129
|
-
|
|
130
|
-
// REMOVED in v8.7
|
|
131
|
-
// getShaderInfo,
|
|
132
|
-
// getShaderName
|
|
133
|
-
// getShaderVersion
|
|
74
|
+
export {getShaderLayout, getProgramBindings} from './adapter/helpers/get-shader-layout';
|
|
75
|
+
export {_checkFloat32ColorAttachment} from './adapter/converters/texture-formats';
|
package/src/init.ts
CHANGED
|
@@ -1,48 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {isBrowser} from '@probe.gl/env';
|
|
3
|
-
import {luma, lumaStats} from '@luma.gl/api';
|
|
1
|
+
import {luma} from '@luma.gl/api';
|
|
4
2
|
import WebGLDevice from './adapter/webgl-device';
|
|
5
3
|
|
|
6
|
-
|
|
7
|
-
// @ts-expect-error
|
|
8
|
-
const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'untranspiled source';
|
|
9
|
-
|
|
10
|
-
const STARTUP_MESSAGE = 'set luma.log.level=1 (or higher) to trace rendering';
|
|
11
|
-
// Assign luma.log.level in console to control logging: \
|
|
12
|
-
// 0: none, 1: minimal, 2: verbose, 3: attribute/uniforms, 4: gl logs
|
|
13
|
-
// luma.log.break[], set to gl funcs, luma.log.profile[] set to model names`;
|
|
14
|
-
|
|
15
|
-
if (globalThis.luma && globalThis.luma.VERSION !== VERSION) {
|
|
16
|
-
throw new Error(`luma.gl - multiple VERSIONs detected: ${globalThis.luma.VERSION} vs ${VERSION}`);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
if (!globalThis.luma) {
|
|
20
|
-
luma.registerDevices([WebGLDevice]);
|
|
21
|
-
|
|
22
|
-
if (isBrowser()) {
|
|
23
|
-
log.log(1, `luma.gl ${VERSION} - ${STARTUP_MESSAGE}`)();
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
globalThis.luma = globalThis.luma || {
|
|
27
|
-
VERSION,
|
|
28
|
-
version: VERSION,
|
|
29
|
-
log,
|
|
30
|
-
|
|
31
|
-
// A global stats object that various components can add information to
|
|
32
|
-
// E.g. see webgl/resource.js
|
|
33
|
-
stats: lumaStats,
|
|
34
|
-
|
|
35
|
-
// Keep some luma globals in a sub-object
|
|
36
|
-
// This allows us to dynamically detect if certain modules have been
|
|
37
|
-
// included (such as IO and headless) and enable related functionality,
|
|
38
|
-
// without unconditionally requiring and thus bundling big dependencies
|
|
39
|
-
// into the app.
|
|
40
|
-
globals: {
|
|
41
|
-
modules: {},
|
|
42
|
-
nodeIO: {}
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export {lumaStats};
|
|
48
|
-
export default globalThis.luma;
|
|
4
|
+
luma.registerDevices([WebGLDevice]);
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import type {NumberArray} from '@luma.gl/api';
|
|
2
|
+
import GL from '@luma.gl/constants';
|
|
3
|
+
|
|
4
|
+
type Framebuffer = any;
|
|
5
|
+
|
|
6
|
+
export type GLDrawMode =
|
|
7
|
+
| GL.POINTS
|
|
8
|
+
| GL.LINES
|
|
9
|
+
| GL.LINE_STRIP
|
|
10
|
+
| GL.LINE_LOOP
|
|
11
|
+
| GL.TRIANGLES
|
|
12
|
+
| GL.TRIANGLE_STRIP
|
|
13
|
+
| GL.TRIANGLE_FAN;
|
|
14
|
+
|
|
15
|
+
export type GLPrimitive = GL.POINTS | GL.LINES | GL.TRIANGLES;
|
|
16
|
+
|
|
17
|
+
export type GLType =
|
|
18
|
+
| GL.FLOAT
|
|
19
|
+
| GL.UNSIGNED_SHORT
|
|
20
|
+
| GL.UNSIGNED_INT
|
|
21
|
+
| GL.UNSIGNED_BYTE
|
|
22
|
+
| GL.BYTE
|
|
23
|
+
| GL.SHORT
|
|
24
|
+
| GL.INT;
|
|
25
|
+
|
|
26
|
+
export type GLPackedType =
|
|
27
|
+
| GL.UNSIGNED_SHORT_5_6_5
|
|
28
|
+
| GL.UNSIGNED_SHORT_4_4_4_4
|
|
29
|
+
| GL.UNSIGNED_SHORT_5_5_5_1;
|
|
30
|
+
|
|
31
|
+
export type GLUniformType = GLSamplerType | GLCompositeType;
|
|
32
|
+
|
|
33
|
+
export type GLSamplerType =
|
|
34
|
+
| GL.SAMPLER_2D
|
|
35
|
+
| GL.SAMPLER_CUBE
|
|
36
|
+
| GL.SAMPLER_3D
|
|
37
|
+
| GL.SAMPLER_2D_SHADOW
|
|
38
|
+
| GL.SAMPLER_2D_ARRAY
|
|
39
|
+
| GL.SAMPLER_2D_ARRAY_SHADOW
|
|
40
|
+
| GL.SAMPLER_CUBE_SHADOW
|
|
41
|
+
| GL.INT_SAMPLER_2D
|
|
42
|
+
| GL.INT_SAMPLER_3D
|
|
43
|
+
| GL.INT_SAMPLER_CUBE
|
|
44
|
+
| GL.INT_SAMPLER_2D_ARRAY
|
|
45
|
+
| GL.UNSIGNED_INT_SAMPLER_2D
|
|
46
|
+
| GL.UNSIGNED_INT_SAMPLER_3D
|
|
47
|
+
| GL.UNSIGNED_INT_SAMPLER_CUBE
|
|
48
|
+
| GL.UNSIGNED_INT_SAMPLER_2D_ARRAY;
|
|
49
|
+
|
|
50
|
+
// Composite types table
|
|
51
|
+
export type GLCompositeType =
|
|
52
|
+
| GL.FLOAT
|
|
53
|
+
| GL.FLOAT_VEC2
|
|
54
|
+
| GL.FLOAT_VEC3
|
|
55
|
+
| GL.FLOAT_VEC4
|
|
56
|
+
| GL.INT
|
|
57
|
+
| GL.INT_VEC2
|
|
58
|
+
| GL.INT_VEC3
|
|
59
|
+
| GL.INT_VEC4
|
|
60
|
+
| GL.UNSIGNED_INT
|
|
61
|
+
| GL.UNSIGNED_INT_VEC2
|
|
62
|
+
| GL.UNSIGNED_INT_VEC3
|
|
63
|
+
| GL.UNSIGNED_INT_VEC4
|
|
64
|
+
| GL.BOOL
|
|
65
|
+
| GL.BOOL_VEC2
|
|
66
|
+
| GL.BOOL_VEC3
|
|
67
|
+
| GL.BOOL_VEC4
|
|
68
|
+
| GL.FLOAT_MAT2
|
|
69
|
+
| GL.FLOAT_MAT2x3
|
|
70
|
+
| GL.FLOAT_MAT2x4
|
|
71
|
+
| GL.FLOAT_MAT3x2
|
|
72
|
+
| GL.FLOAT_MAT3
|
|
73
|
+
| GL.FLOAT_MAT3x4
|
|
74
|
+
| GL.FLOAT_MAT4x2
|
|
75
|
+
| GL.FLOAT_MAT4x3
|
|
76
|
+
| GL.FLOAT_MAT4;
|
|
77
|
+
|
|
78
|
+
export type GLFunction =
|
|
79
|
+
| GL.NEVER
|
|
80
|
+
| GL.LESS
|
|
81
|
+
| GL.EQUAL
|
|
82
|
+
| GL.LEQUAL
|
|
83
|
+
| GL.GREATER
|
|
84
|
+
| GL.NOTEQUAL
|
|
85
|
+
| GL.GEQUAL
|
|
86
|
+
| GL.ALWAYS;
|
|
87
|
+
|
|
88
|
+
export type GLBlendEquation =
|
|
89
|
+
| GL.FUNC_ADD
|
|
90
|
+
| GL.FUNC_SUBTRACT
|
|
91
|
+
| GL.FUNC_REVERSE_SUBTRACT
|
|
92
|
+
| GL.MIN_EXT
|
|
93
|
+
| GL.MAX_EXT;
|
|
94
|
+
|
|
95
|
+
export type GLBlendFunction =
|
|
96
|
+
| GL.ZERO
|
|
97
|
+
| GL.ONE
|
|
98
|
+
| GL.SRC_COLOR
|
|
99
|
+
| GL.ONE_MINUS_SRC_COLOR
|
|
100
|
+
| GL.DST_COLOR
|
|
101
|
+
| GL.ONE_MINUS_DST_COLOR
|
|
102
|
+
| GL.SRC_ALPHA
|
|
103
|
+
| GL.ONE_MINUS_SRC_ALPHA
|
|
104
|
+
| GL.DST_ALPHA
|
|
105
|
+
| GL.ONE_MINUS_DST_ALPHA
|
|
106
|
+
| GL.CONSTANT_COLOR
|
|
107
|
+
| GL.ONE_MINUS_CONSTANT_COLOR
|
|
108
|
+
| GL.CONSTANT_ALPHA
|
|
109
|
+
| GL.ONE_MINUS_CONSTANT_ALPHA
|
|
110
|
+
| GL.SRC_ALPHA_SATURATE;
|
|
111
|
+
|
|
112
|
+
export type GLStencilOp =
|
|
113
|
+
| GL.KEEP
|
|
114
|
+
| GL.ZERO
|
|
115
|
+
| GL.REPLACE
|
|
116
|
+
| GL.INCR
|
|
117
|
+
| GL.INCR_WRAP
|
|
118
|
+
| GL.DECR
|
|
119
|
+
| GL.DECR_WRAP
|
|
120
|
+
| GL.INVERT;
|
|
121
|
+
|
|
122
|
+
/** Parameters for textures and samplers */
|
|
123
|
+
export type WebGLSamplerParameters = {
|
|
124
|
+
[GL.TEXTURE_WRAP_S]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;
|
|
125
|
+
[GL.TEXTURE_WRAP_T]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;
|
|
126
|
+
[GL.TEXTURE_WRAP_R]?: GL.CLAMP_TO_EDGE | GL.REPEAT | GL.MIRRORED_REPEAT;
|
|
127
|
+
[GL.TEXTURE_MAG_FILTER]?: GL.NEAREST | GL.LINEAR;
|
|
128
|
+
[GL.TEXTURE_MIN_FILTER]?:
|
|
129
|
+
| GL.NEAREST
|
|
130
|
+
| GL.LINEAR
|
|
131
|
+
| GL.NEAREST_MIPMAP_NEAREST
|
|
132
|
+
| GL.NEAREST_MIPMAP_LINEAR
|
|
133
|
+
| GL.LINEAR_MIPMAP_NEAREST
|
|
134
|
+
| GL.LINEAR_MIPMAP_LINEAR;
|
|
135
|
+
[GL.TEXTURE_MIN_LOD]?: number;
|
|
136
|
+
[GL.TEXTURE_MAX_LOD]?: number;
|
|
137
|
+
[GL.TEXTURE_COMPARE_FUNC]?: number; // COMPARE_FUNC);
|
|
138
|
+
[GL.TEXTURE_MAX_ANISOTROPY_EXT]?: number; //
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* All global WebGL values set by a variety of setter gl.enable ...
|
|
143
|
+
*/
|
|
144
|
+
export type GLValueParameters = {
|
|
145
|
+
[GL.BLEND]?: boolean;
|
|
146
|
+
[GL.BLEND_COLOR]?: [number, number, number, number] | NumberArray;
|
|
147
|
+
[GL.BLEND_EQUATION_RGB]?: GLBlendEquation;
|
|
148
|
+
[GL.BLEND_EQUATION_ALPHA]?: GLBlendEquation;
|
|
149
|
+
[GL.BLEND_SRC_RGB]?: GLBlendFunction;
|
|
150
|
+
[GL.BLEND_DST_RGB]?: GLBlendFunction;
|
|
151
|
+
[GL.BLEND_SRC_ALPHA]?: GLBlendFunction;
|
|
152
|
+
[GL.BLEND_DST_ALPHA]?: GLBlendFunction;
|
|
153
|
+
[GL.COLOR_CLEAR_VALUE]?: [number, number, number, number] | NumberArray;
|
|
154
|
+
[GL.COLOR_WRITEMASK]?: [boolean, boolean, boolean, boolean] | boolean[];
|
|
155
|
+
[GL.CULL_FACE]?: boolean;
|
|
156
|
+
[GL.CULL_FACE_MODE]?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;
|
|
157
|
+
[GL.DEPTH_TEST]?: boolean;
|
|
158
|
+
[GL.DEPTH_CLEAR_VALUE]?: number;
|
|
159
|
+
[GL.DEPTH_FUNC]?: GLFunction;
|
|
160
|
+
[GL.DEPTH_RANGE]?: [number, number] | NumberArray;
|
|
161
|
+
[GL.DEPTH_WRITEMASK]?: boolean;
|
|
162
|
+
[GL.DITHER]?: boolean;
|
|
163
|
+
[GL.FRAGMENT_SHADER_DERIVATIVE_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;
|
|
164
|
+
[GL.CURRENT_PROGRAM]?: WebGLProgram | null;
|
|
165
|
+
[GL.FRAMEBUFFER_BINDING]?: WebGLFramebuffer | null;
|
|
166
|
+
[GL.RENDERBUFFER_BINDING]?: WebGLRenderbuffer | null;
|
|
167
|
+
[GL.TRANSFORM_FEEDBACK_BINDING]?: WebGLTransformFeedback | null;
|
|
168
|
+
[GL.VERTEX_ARRAY_BINDING]?: WebGLVertexArrayObject | null;
|
|
169
|
+
[GL.ARRAY_BUFFER_BINDING]?: WebGLBuffer | null;
|
|
170
|
+
[GL.COPY_READ_BUFFER_BINDING]?: WebGLBuffer | null;
|
|
171
|
+
[GL.COPY_WRITE_BUFFER_BINDING]?: WebGLBuffer | null;
|
|
172
|
+
[GL.PIXEL_PACK_BUFFER_BINDING]?: WebGLBuffer | null;
|
|
173
|
+
[GL.PIXEL_UNPACK_BUFFER_BINDING]?: WebGLBuffer | null;
|
|
174
|
+
[GL.TEXTURE_BINDING_2D]?: WebGLTexture | null;
|
|
175
|
+
[GL.TEXTURE_BINDING_2D_ARRAY]?: WebGLTexture | null;
|
|
176
|
+
[GL.TEXTURE_BINDING_3D]?: WebGLTexture | null;
|
|
177
|
+
[GL.TEXTURE_BINDING_CUBE_MAP]?: WebGLTexture | null;
|
|
178
|
+
[GL.FRONT_FACE]?: GL.CW | GL.CCW;
|
|
179
|
+
[GL.GENERATE_MIPMAP_HINT]?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;
|
|
180
|
+
[GL.LINE_WIDTH]?: number;
|
|
181
|
+
[GL.POLYGON_OFFSET_FILL]?: boolean;
|
|
182
|
+
[GL.POLYGON_OFFSET_FACTOR]?: number;
|
|
183
|
+
[GL.POLYGON_OFFSET_UNITS]?: number;
|
|
184
|
+
[GL.SAMPLE_ALPHA_TO_COVERAGE]?: boolean;
|
|
185
|
+
[GL.SAMPLE_COVERAGE]?: boolean;
|
|
186
|
+
[GL.RASTERIZER_DISCARD]?: boolean;
|
|
187
|
+
[GL.SAMPLE_COVERAGE_VALUE]?: number;
|
|
188
|
+
[GL.SAMPLE_COVERAGE_INVERT]?: boolean;
|
|
189
|
+
[GL.SCISSOR_TEST]?: boolean;
|
|
190
|
+
[GL.SCISSOR_BOX]?: [number, number, number, number] | NumberArray;
|
|
191
|
+
[GL.STENCIL_TEST]?: boolean;
|
|
192
|
+
[GL.STENCIL_CLEAR_VALUE]?: number;
|
|
193
|
+
[GL.STENCIL_WRITEMASK]?: number;
|
|
194
|
+
[GL.STENCIL_BACK_WRITEMASK]?: number;
|
|
195
|
+
[GL.STENCIL_FUNC]?: GLFunction;
|
|
196
|
+
[GL.STENCIL_REF]?: GLFunction;
|
|
197
|
+
[GL.STENCIL_VALUE_MASK]?: GLFunction;
|
|
198
|
+
[GL.STENCIL_BACK_FUNC]?: GLFunction;
|
|
199
|
+
[GL.STENCIL_BACK_REF]?: GLFunction;
|
|
200
|
+
[GL.STENCIL_BACK_VALUE_MASK]?: GLFunction;
|
|
201
|
+
[GL.STENCIL_FAIL]?: GLStencilOp;
|
|
202
|
+
[GL.STENCIL_PASS_DEPTH_FAIL]?: GLStencilOp;
|
|
203
|
+
[GL.STENCIL_PASS_DEPTH_PASS]?: GLStencilOp;
|
|
204
|
+
[GL.STENCIL_BACK_FAIL]?: GLStencilOp;
|
|
205
|
+
[GL.STENCIL_BACK_PASS_DEPTH_FAIL]?: GLStencilOp;
|
|
206
|
+
[GL.STENCIL_BACK_PASS_DEPTH_PASS]?: GLStencilOp;
|
|
207
|
+
[GL.VIEWPORT]?: [number, number, number, number] | NumberArray;
|
|
208
|
+
|
|
209
|
+
// WEBGL1 PIXEL PACK/UNPACK MODES
|
|
210
|
+
[GL.PACK_ALIGNMENT]?: number;
|
|
211
|
+
[GL.UNPACK_ALIGNMENT]?: number;
|
|
212
|
+
[GL.UNPACK_FLIP_Y_WEBGL]?: boolean;
|
|
213
|
+
[GL.UNPACK_PREMULTIPLY_ALPHA_WEBGL]?: boolean;
|
|
214
|
+
[GL.UNPACK_COLORSPACE_CONVERSION_WEBGL]?: GL.NONE | GL.BROWSER_DEFAULT_WEBGL;
|
|
215
|
+
|
|
216
|
+
// WEBGL2 PIXEL PACK/UNPACK MODES
|
|
217
|
+
// RASTERIZER_DISCARD ...
|
|
218
|
+
[GL.PACK_ROW_LENGTH]?: number;
|
|
219
|
+
[GL.PACK_SKIP_PIXELS]?: number;
|
|
220
|
+
[GL.PACK_SKIP_ROWS]?: number;
|
|
221
|
+
[GL.READ_FRAMEBUFFER_BINDING]?: Framebuffer | null;
|
|
222
|
+
[GL.UNPACK_ROW_LENGTH]?: number;
|
|
223
|
+
[GL.UNPACK_IMAGE_HEIGHT]?: number;
|
|
224
|
+
[GL.UNPACK_SKIP_PIXELS]?: number;
|
|
225
|
+
[GL.UNPACK_SKIP_ROWS]?: number;
|
|
226
|
+
[GL.UNPACK_SKIP_IMAGES]?: number;
|
|
227
|
+
};
|
|
228
|
+
|
|
229
|
+
export type GLFunctionParameters = {
|
|
230
|
+
// Function-style setters
|
|
231
|
+
framebuffer?: Framebuffer | null;
|
|
232
|
+
blend?: boolean;
|
|
233
|
+
blendColor?: [number, number, number, number] | NumberArray;
|
|
234
|
+
blendEquation?: GLBlendEquation | [GLBlendEquation, GLBlendEquation];
|
|
235
|
+
blendFunc?:
|
|
236
|
+
| [GLBlendFunction, GLBlendFunction]
|
|
237
|
+
| [GLBlendFunction, GLBlendFunction, GLBlendFunction, GLBlendFunction];
|
|
238
|
+
|
|
239
|
+
clearColor?: [number, number, number, number] | NumberArray;
|
|
240
|
+
clearDepth?: number;
|
|
241
|
+
clearStencil?: number;
|
|
242
|
+
|
|
243
|
+
colorMask?: [boolean, boolean, boolean, boolean];
|
|
244
|
+
|
|
245
|
+
cull?: boolean;
|
|
246
|
+
cullFace?: GL.FRONT | GL.BACK | GL.FRONT_AND_BACK;
|
|
247
|
+
|
|
248
|
+
depthTest?: boolean;
|
|
249
|
+
depthFunc?: GLFunction;
|
|
250
|
+
depthMask?: boolean;
|
|
251
|
+
depthRange?: [number, number] | NumberArray;
|
|
252
|
+
|
|
253
|
+
dither?: boolean;
|
|
254
|
+
|
|
255
|
+
derivativeHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;
|
|
256
|
+
|
|
257
|
+
frontFace?: GL.CW | GL.CCW;
|
|
258
|
+
|
|
259
|
+
mipmapHint?: GL.FASTEST | GL.NICEST | GL.DONT_CARE;
|
|
260
|
+
|
|
261
|
+
lineWidth?: number;
|
|
262
|
+
|
|
263
|
+
polygonOffsetFill?: boolean;
|
|
264
|
+
polygonOffset?: [number, number];
|
|
265
|
+
|
|
266
|
+
sampleCoverage?: [number, boolean];
|
|
267
|
+
|
|
268
|
+
scissorTest?: boolean;
|
|
269
|
+
scissor?: [number, number, number, number] | NumberArray;
|
|
270
|
+
|
|
271
|
+
stencilTest?: boolean;
|
|
272
|
+
stencilMask?: number | [number, number];
|
|
273
|
+
stencilFunc?:
|
|
274
|
+
| [GLFunction, number, number]
|
|
275
|
+
| [GLFunction, number, number, GLFunction, number, number];
|
|
276
|
+
stencilOp?:
|
|
277
|
+
| [GLStencilOp, GLStencilOp, GLStencilOp]
|
|
278
|
+
| [GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp, GLStencilOp];
|
|
279
|
+
viewport?: [number, number, number, number] | NumberArray;
|
|
280
|
+
};
|
|
281
|
+
|
|
282
|
+
/** WebGL style parameters object (with both GL constants and function style fields) */
|
|
283
|
+
export type GLParameters = GLValueParameters | GLFunctionParameters;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { Device, Parameters, CompareFunction } from '@luma.gl/api';
|
|
2
|
-
/** Set WebGPU Style Parameters */
|
|
3
|
-
export declare function setDeviceParameters(device: Device, parameters: Parameters): void;
|
|
4
|
-
export declare function convertCompareFunction(parameter: any, value: CompareFunction): number;
|
|
5
|
-
//# sourceMappingURL=set-device-parameters.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"set-device-parameters.d.ts","sourceRoot":"","sources":["../../../src/adapter/converters/set-device-parameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,UAAU,EAAE,eAAe,EAAwB,MAAM,cAAc,CAAC;AAIxF,kCAAkC;AAClC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,QAoGzE;AA0BD,wBAAgB,sBAAsB,CAAC,SAAS,KAAA,EAAE,KAAK,EAAE,eAAe,GAAG,MAAM,CAWhF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/adapter/converters/set-device-parameters.ts"],"names":["log","GL","WebGLDevice","setDeviceParameters","device","parameters","webglDevice","attach","gl","gl2","cullMode","disable","CULL_FACE","enable","cullFace","FRONT","BACK","frontFace","map","ccw","CCW","cw","CW","depthBias","undefined","polygonOffset","depthBiasSlopeScale","depthWriteEnabled","depthMask","mapBoolean","depthCompare","DEPTH_TEST","depthFunc","convertCompareFunction","stencilWriteMask","mask","stencilMaskSeparate","stencilReadMask","warn","stencilCompare","glValue","STENCIL_TEST","stencilFuncSeparate","stencilPassOperation","dppass","convertStencilOperation","sfail","stencilFailOperation","dpfail","stencilDepthFailOperation","stencilOpSeparate","parameter","value","NEVER","LESS","EQUAL","LEQUAL","GREATER","NOTEQUAL","GEQUAL","ALWAYS","KEEP","ZERO","REPLACE","INVERT","INCR","DECR","INCR_WRAP","DECR_WRAP","convertBlendOperationToEquation","FUNC_ADD","FUNC_SUBTRACT","FUNC_REVERSE_SUBTRACT","MIN","MAX","message","valueMap","Error"],"mappings":"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","sourcesContent":["import {Device, Parameters, CompareFunction, StencilOperation, log} from '@luma.gl/api';\nimport GL from '@luma.gl/constants';\nimport {WebGLDevice} from '@luma.gl/webgl';\n\n/** Set WebGPU Style Parameters */\nexport function setDeviceParameters(device: Device, parameters: Parameters) {\n const webglDevice = WebGLDevice.attach(device);\n const {gl, gl2} = webglDevice;\n\n // RASTERIZATION SETTINGS\n if (parameters.cullMode) {\n switch (parameters.cullMode) {\n case 'none':\n gl.disable(GL.CULL_FACE);\n break;\n case 'front':\n gl.enable(GL.CULL_FACE);\n gl.cullFace(GL.FRONT);\n break;\n case 'back':\n gl.enable(GL.CULL_FACE);\n gl.cullFace(GL.BACK);\n break;\n }\n }\n\n if (parameters.frontFace) {\n gl.frontFace(map('frontFace', parameters.frontFace, {\n ccw: GL.CCW,\n cw: GL.CW\n }));\n }\n\n if (parameters.depthBias !== undefined) {\n gl.polygonOffset(parameters.depthBias, parameters.depthBiasSlopeScale || 0);\n }\n\n // depthBiasSlopeScale: {\n // // Handled by depthBias\n // },\n\n // DEPTH STENCIL\n\n if (parameters.depthWriteEnabled !== undefined) {\n gl.depthMask(mapBoolean('depthWriteEnabled', parameters.depthWriteEnabled));\n }\n\n if (parameters.depthCompare) {\n parameters.depthCompare !== 'always' ? gl.enable(GL.DEPTH_TEST) : gl.disable(GL.DEPTH_TEST),\n gl.depthFunc(convertCompareFunction('depthCompare', parameters.depthCompare));\n }\n\n if (parameters.stencilWriteMask) {\n const mask = parameters.stencilWriteMask;\n gl.stencilMaskSeparate(GL.FRONT, mask);\n gl.stencilMaskSeparate(GL.BACK, mask);\n }\n\n if (parameters.stencilReadMask) {\n // stencilReadMask is handle inside stencil***Compare.\n log.warn('stencilReadMask not supported under WebGL');\n }\n\n if (parameters.stencilCompare) {\n const mask = parameters.stencilReadMask || 0xffffffff;\n const glValue = convertCompareFunction('depthCompare', parameters.stencilCompare);\n // TODO - ensure back doesn't overwrite\n parameters.stencilCompare !== 'always' ? gl.enable(GL.STENCIL_TEST) : gl.disable(GL.STENCIL_TEST),\n gl.stencilFuncSeparate(GL.FRONT, glValue, 0, mask);\n gl.stencilFuncSeparate(GL.BACK, glValue, 0, mask);\n }\n\n if (parameters.stencilPassOperation) {\n const dppass = convertStencilOperation('stencilPassOperation', parameters.stencilPassOperation);\n const sfail = convertStencilOperation('stencilFailOperation', parameters.stencilFailOperation);\n const dpfail = convertStencilOperation('stencilDepthFailOperation', parameters.stencilDepthFailOperation);\n gl.stencilOpSeparate(GL.FRONT, sfail, dpfail, dppass);\n gl.stencilOpSeparate(GL.BACK, sfail, dpfail, dppass);\n }\n\n // stencilDepthFailOperation() {\n // // handled by stencilPassOperation\n // },\n\n // stencilFailOperation() {\n // // handled by stencilPassOperation\n // },\n\n // COLOR STATE\n\n // if (parameters.blend) {\n // gl.enable(GL.BLEND);\n\n // const blend = parameters.blend;\n\n // let colorEquation = (blend && blend.color && blend.color.operation) || 'add';\n // let alphaEquation = (blend && blend.alpha && blend.alpha.operation) || 'add';\n // gl.blendEquationSeparate(colorEquation, alphaEquation);\n\n // let colorSrcFactor = (blend && blend.color && blend.color.srcFactor) || 'one';\n // let colorDstFactor = (blend && blend.color && blend.color.dstFactor) || 'zero';\n // let alphaSrcFactor = (blend && blend.alpha && blend.alpha.srcFactor) || 'one';\n // let alphaDstFactor = (blend && blend.alpha && blend.alpha.dstFactor) || 'zero';\n // gl.blendFuncSeparate(colorSrcFactor, colorDstFactor, alphaSrcFactor, alphaDstFactor);\n // }\n}\n\n/*\n rasterizationState: {\n cullMode: \"back\",\n },\n\n depthStencilState: {\n depthWriteEnabled: true,\n depthCompare: \"less\",\n format: \"depth24plus-stencil8\",\n },\n\n colorStates: [\n {\n format: \"bgra8unorm\",\n // colorBlend.srcFactor = wgpu::BlendFactor::SrcAlpha;\n // colorBlend.dstFactor = wgpu::BlendFactor::OneMinusSrcAlpha;\n // alphaBlend.srcFactor = wgpu::BlendFactor::SrcAlpha;\n // alphaBlend.dstFactor = wgpu::BlendFactor::OneMinusSrcAlpha;\n },\n ],\n });\n*/\n\n\nexport function convertCompareFunction(parameter, value: CompareFunction): number {\n return map(parameter, value, {\n 'never': GL.NEVER,\n 'less': GL.LESS,\n 'equal': GL.EQUAL,\n 'less-equal': GL.LEQUAL,\n 'greater': GL.GREATER,\n 'not-equal': GL.NOTEQUAL,\n 'greater-equal': GL.GEQUAL,\n 'always': GL.ALWAYS\n });\n}\n\nfunction convertStencilOperation(parameter, value: StencilOperation): number {\n return map(parameter, value, {\n 'keep': GL.KEEP,\n 'zero': GL.ZERO,\n 'replace': GL.REPLACE,\n 'invert': GL.INVERT,\n 'increment-clamp': GL.INCR,\n 'decrement-clamp': GL.DECR,\n 'increment-wrap': GL.INCR_WRAP,\n 'decrement-wrap': GL.DECR_WRAP\n });\n}\n\nfunction convertBlendOperationToEquation(parameter, value): number {\n return map(parameter, value, {\n 'add': GL.FUNC_ADD,\n 'sub': GL.FUNC_SUBTRACT,\n 'reverse-subtract': GL.FUNC_REVERSE_SUBTRACT,\n // When using a WebGL 2 context, the following values are available additionally:\n 'min': GL.MIN,\n 'max': GL.MAX\n });\n}\n\nfunction message(parameter, value) {\n return `Illegal parameter ${value} for ${parameter}`;\n}\n\nfunction map(parameter, value, valueMap) {\n if (!(value in valueMap)) {\n throw new Error(message(parameter, value));\n }\n return valueMap[value];\n}\n\nfunction mapBoolean(parameter, value) {\n return value;\n}\n"],"file":"set-device-parameters.js"}
|