@luma.gl/webgl 9.1.9 → 9.2.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/dist/adapter/converters/device-parameters.js +14 -9
- package/dist/adapter/converters/device-parameters.js.map +1 -1
- package/dist/adapter/converters/sampler-parameters.js +13 -2
- package/dist/adapter/converters/sampler-parameters.js.map +1 -1
- package/dist/adapter/converters/shader-formats.d.ts +67 -8
- package/dist/adapter/converters/shader-formats.d.ts.map +1 -1
- package/dist/adapter/converters/shader-formats.js +82 -52
- package/dist/adapter/converters/shader-formats.js.map +1 -1
- package/dist/adapter/converters/webgl-shadertypes.d.ts +20 -0
- package/dist/adapter/converters/webgl-shadertypes.d.ts.map +1 -0
- package/dist/adapter/converters/webgl-shadertypes.js +122 -0
- package/dist/adapter/converters/webgl-shadertypes.js.map +1 -0
- package/dist/adapter/converters/webgl-texture-table.d.ts.map +1 -1
- package/dist/adapter/converters/webgl-texture-table.js +17 -13
- package/dist/adapter/converters/webgl-texture-table.js.map +1 -1
- package/dist/adapter/converters/{vertex-formats.d.ts → webgl-vertex-formats.d.ts} +4 -4
- package/dist/adapter/converters/webgl-vertex-formats.d.ts.map +1 -0
- package/dist/adapter/converters/{vertex-formats.js → webgl-vertex-formats.js} +2 -3
- package/dist/adapter/converters/webgl-vertex-formats.js.map +1 -0
- package/dist/adapter/device-helpers/webgl-device-features.d.ts.map +1 -1
- package/dist/adapter/device-helpers/webgl-device-features.js.map +1 -1
- package/dist/adapter/device-helpers/webgl-device-limits.d.ts +1 -1
- package/dist/adapter/device-helpers/webgl-device-limits.d.ts.map +1 -1
- package/dist/adapter/device-helpers/webgl-device-limits.js +1 -1
- package/dist/adapter/device-helpers/webgl-device-limits.js.map +1 -1
- package/dist/adapter/helpers/format-utils.d.ts +3 -2
- package/dist/adapter/helpers/format-utils.d.ts.map +1 -1
- package/dist/adapter/helpers/format-utils.js.map +1 -1
- package/dist/adapter/helpers/{get-shader-layout.d.ts → get-shader-layout-from-glsl.d.ts} +1 -1
- package/dist/adapter/helpers/get-shader-layout-from-glsl.d.ts.map +1 -0
- package/dist/adapter/helpers/{get-shader-layout.js → get-shader-layout-from-glsl.js} +12 -35
- package/dist/adapter/helpers/get-shader-layout-from-glsl.js.map +1 -0
- package/dist/adapter/helpers/set-uniform.d.ts +2 -2
- package/dist/adapter/helpers/set-uniform.d.ts.map +1 -1
- package/dist/adapter/helpers/set-uniform.js.map +1 -1
- package/dist/adapter/helpers/webgl-texture-utils.d.ts +2 -242
- package/dist/adapter/helpers/webgl-texture-utils.d.ts.map +1 -1
- package/dist/adapter/helpers/webgl-texture-utils.js +10 -99
- package/dist/adapter/helpers/webgl-texture-utils.js.map +1 -1
- package/dist/adapter/resources/webgl-buffer.d.ts +7 -7
- package/dist/adapter/resources/webgl-buffer.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-buffer.js +29 -18
- package/dist/adapter/resources/webgl-buffer.js.map +1 -1
- package/dist/adapter/resources/webgl-command-buffer.d.ts +4 -3
- package/dist/adapter/resources/webgl-command-buffer.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-command-buffer.js +5 -4
- package/dist/adapter/resources/webgl-command-buffer.js.map +1 -1
- package/dist/adapter/resources/webgl-command-encoder.d.ts +6 -2
- package/dist/adapter/resources/webgl-command-encoder.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-command-encoder.js +9 -4
- package/dist/adapter/resources/webgl-command-encoder.js.map +1 -1
- package/dist/adapter/resources/webgl-external-texture.js +1 -0
- package/dist/adapter/resources/webgl-external-texture.js.map +1 -1
- package/dist/adapter/resources/webgl-framebuffer.d.ts +2 -2
- package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-framebuffer.js +2 -2
- package/dist/adapter/resources/webgl-framebuffer.js.map +1 -1
- package/dist/adapter/resources/webgl-query-set.d.ts +2 -2
- package/dist/adapter/resources/webgl-query-set.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-query-set.js +5 -1
- package/dist/adapter/resources/webgl-query-set.js.map +1 -1
- package/dist/adapter/resources/webgl-render-pass.d.ts +1 -0
- package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-render-pass.js +16 -13
- package/dist/adapter/resources/webgl-render-pass.js.map +1 -1
- package/dist/adapter/resources/webgl-render-pipeline.d.ts +5 -5
- package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-render-pipeline.js +28 -24
- package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -1
- package/dist/adapter/resources/webgl-sampler.js +1 -1
- package/dist/adapter/resources/webgl-sampler.js.map +1 -1
- package/dist/adapter/resources/webgl-shader.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-shader.js +9 -2
- package/dist/adapter/resources/webgl-shader.js.map +1 -1
- package/dist/adapter/resources/webgl-texture-view.js +1 -1
- package/dist/adapter/resources/webgl-texture-view.js.map +1 -1
- package/dist/adapter/resources/webgl-texture.d.ts +21 -66
- package/dist/adapter/resources/webgl-texture.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-texture.js +152 -320
- package/dist/adapter/resources/webgl-texture.js.map +1 -1
- package/dist/adapter/resources/webgl-transform-feedback.d.ts +1 -1
- package/dist/adapter/resources/webgl-transform-feedback.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-transform-feedback.js +1 -1
- package/dist/adapter/resources/webgl-transform-feedback.js.map +1 -1
- package/dist/adapter/resources/webgl-vertex-array.d.ts +1 -1
- package/dist/adapter/resources/webgl-vertex-array.d.ts.map +1 -1
- package/dist/adapter/resources/webgl-vertex-array.js +3 -2
- package/dist/adapter/resources/webgl-vertex-array.js.map +1 -1
- package/dist/adapter/webgl-adapter.d.ts +4 -3
- package/dist/adapter/webgl-adapter.d.ts.map +1 -1
- package/dist/adapter/webgl-adapter.js +43 -30
- package/dist/adapter/webgl-adapter.js.map +1 -1
- package/dist/adapter/webgl-canvas-context.d.ts +3 -24
- package/dist/adapter/webgl-canvas-context.d.ts.map +1 -1
- package/dist/adapter/webgl-canvas-context.js +5 -44
- package/dist/adapter/webgl-canvas-context.js.map +1 -1
- package/dist/adapter/webgl-device.d.ts +19 -20
- package/dist/adapter/webgl-device.d.ts.map +1 -1
- package/dist/adapter/webgl-device.js +44 -31
- package/dist/adapter/webgl-device.js.map +1 -1
- package/dist/context/debug/spector-types.d.ts.map +1 -1
- package/dist/context/debug/spector-types.js +3 -0
- package/dist/context/debug/spector-types.js.map +1 -1
- package/dist/context/debug/spector.js.map +1 -1
- package/dist/context/debug/webgl-developer-tools.js +1 -0
- package/dist/context/debug/webgl-developer-tools.js.map +1 -1
- package/dist/context/helpers/webgl-extensions.d.ts.map +1 -1
- package/dist/context/helpers/webgl-extensions.js +3 -0
- package/dist/context/helpers/webgl-extensions.js.map +1 -1
- package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -1
- package/dist/context/parameters/unified-parameter-api.js +7 -0
- package/dist/context/parameters/unified-parameter-api.js.map +1 -1
- package/dist/context/parameters/webgl-parameter-tables.d.ts +1 -1
- package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -1
- package/dist/context/parameters/webgl-parameter-tables.js +1 -0
- package/dist/context/parameters/webgl-parameter-tables.js.map +1 -1
- package/dist/context/polyfills/polyfill-webgl1-extensions.d.ts.map +1 -1
- package/dist/context/polyfills/polyfill-webgl1-extensions.js +1 -0
- package/dist/context/polyfills/polyfill-webgl1-extensions.js.map +1 -1
- package/dist/context/state-tracker/deep-array-equal.d.ts +2 -1
- package/dist/context/state-tracker/deep-array-equal.d.ts.map +1 -1
- package/dist/context/state-tracker/deep-array-equal.js +4 -5
- package/dist/context/state-tracker/deep-array-equal.js.map +1 -1
- package/dist/context/state-tracker/webgl-state-tracker.d.ts.map +1 -1
- package/dist/context/state-tracker/webgl-state-tracker.js +4 -1
- package/dist/context/state-tracker/webgl-state-tracker.js.map +1 -1
- package/dist/context/state-tracker/with-parameters.js.map +1 -1
- package/dist/dist.dev.js +4788 -4801
- package/dist/dist.min.js +2 -2
- package/dist/index.cjs +3906 -3960
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +1 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
- package/src/adapter/converters/device-parameters.ts +19 -9
- package/src/adapter/converters/sampler-parameters.ts +13 -2
- package/src/adapter/converters/shader-formats.ts +50 -24
- package/src/adapter/converters/webgl-shadertypes.ts +151 -0
- package/src/adapter/converters/webgl-texture-table.ts +21 -15
- package/src/adapter/converters/{vertex-formats.ts → webgl-vertex-formats.ts} +4 -5
- package/src/adapter/device-helpers/webgl-device-features.ts +1 -1
- package/src/adapter/device-helpers/webgl-device-limits.ts +1 -1
- package/src/adapter/helpers/format-utils.ts +2 -2
- package/src/adapter/helpers/{get-shader-layout.ts → get-shader-layout-from-glsl.ts} +20 -50
- package/src/adapter/helpers/set-uniform.ts +2 -2
- package/src/adapter/helpers/webgl-texture-utils.ts +12 -348
- package/src/adapter/resources/webgl-buffer.ts +43 -23
- package/src/adapter/resources/webgl-command-buffer.ts +9 -8
- package/src/adapter/resources/webgl-command-encoder.ts +18 -9
- package/src/adapter/resources/webgl-framebuffer.ts +4 -4
- package/src/adapter/resources/webgl-query-set.ts +7 -3
- package/src/adapter/resources/webgl-render-pass.ts +20 -17
- package/src/adapter/resources/webgl-render-pipeline.ts +38 -37
- package/src/adapter/resources/webgl-sampler.ts +1 -1
- package/src/adapter/resources/webgl-shader.ts +11 -2
- package/src/adapter/resources/webgl-texture-view.ts +1 -1
- package/src/adapter/resources/webgl-texture.ts +184 -394
- package/src/adapter/resources/webgl-transform-feedback.ts +2 -2
- package/src/adapter/resources/webgl-vertex-array.ts +4 -3
- package/src/adapter/webgl-adapter.ts +46 -33
- package/src/adapter/webgl-canvas-context.ts +7 -47
- package/src/adapter/webgl-device.ts +64 -44
- package/src/context/debug/spector-types.ts +5 -0
- package/src/context/debug/spector.ts +1 -1
- package/src/context/debug/webgl-developer-tools.ts +9 -3
- package/src/context/helpers/webgl-extensions.ts +3 -0
- package/src/context/parameters/unified-parameter-api.ts +9 -2
- package/src/context/parameters/webgl-parameter-tables.ts +2 -0
- package/src/context/polyfills/polyfill-webgl1-extensions.ts +1 -0
- package/src/context/state-tracker/deep-array-equal.ts +11 -6
- package/src/context/state-tracker/webgl-state-tracker.ts +5 -1
- package/src/context/state-tracker/with-parameters.ts +1 -1
- package/src/index.ts +1 -5
- package/dist/adapter/converters/vertex-formats.d.ts.map +0 -1
- package/dist/adapter/converters/vertex-formats.js.map +0 -1
- package/dist/adapter/helpers/decode-webgl-types.d.ts +0 -26
- package/dist/adapter/helpers/decode-webgl-types.d.ts.map +0 -1
- package/dist/adapter/helpers/decode-webgl-types.js +0 -102
- package/dist/adapter/helpers/decode-webgl-types.js.map +0 -1
- package/dist/adapter/helpers/get-shader-layout.d.ts.map +0 -1
- package/dist/adapter/helpers/get-shader-layout.js.map +0 -1
- package/dist/adapter/helpers/typed-array-utils.d.ts +0 -44
- package/dist/adapter/helpers/typed-array-utils.d.ts.map +0 -1
- package/dist/adapter/helpers/typed-array-utils.js +0 -107
- package/dist/adapter/helpers/typed-array-utils.js.map +0 -1
- package/dist/deprecated/accessor.d.ts +0 -53
- package/dist/deprecated/accessor.d.ts.map +0 -1
- package/dist/deprecated/accessor.js +0 -177
- package/dist/deprecated/accessor.js.map +0 -1
- package/dist/utils/split-uniforms-and-bindings.d.ts +0 -9
- package/dist/utils/split-uniforms-and-bindings.d.ts.map +0 -1
- package/dist/utils/split-uniforms-and-bindings.js +0 -21
- package/dist/utils/split-uniforms-and-bindings.js.map +0 -1
- package/src/adapter/helpers/decode-webgl-types.ts +0 -134
- package/src/adapter/helpers/typed-array-utils.ts +0 -129
- package/src/deprecated/accessor.ts +0 -225
- package/src/utils/split-uniforms-and-bindings.ts +0 -31
|
@@ -118,7 +118,7 @@ export class WEBGLTransformFeedback extends TransformFeedback {
|
|
|
118
118
|
if (isIndex(locationOrName)) {
|
|
119
119
|
return Number(locationOrName);
|
|
120
120
|
}
|
|
121
|
-
for (const varying of this.layout.varyings) {
|
|
121
|
+
for (const varying of this.layout.varyings || []) {
|
|
122
122
|
if (locationOrName === varying.name) {
|
|
123
123
|
return varying.location;
|
|
124
124
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-transform-feedback.js","sourceRoot":"","sources":["../../../src/adapter/resources/webgl-transform-feedback.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,iBAAiB,EAAsB,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAC,EAAE,EAAC,MAAM,oBAAoB,CAAC;AAEtC,OAAO,EAAC,WAAW,EAAC,uBAAoB;AACxC,OAAO,EAAC,cAAc,EAAC,2CAAwC;AAE/D,MAAM,OAAO,sBAAuB,SAAQ,iBAAiB;IAClD,MAAM,CAAc;IACpB,EAAE,CAAyB;IAC3B,MAAM,CAAyB;IAExC;;;;OAIG;IACM,MAAM,CAAe;IAC9B,OAAO,GAAgC,EAAE,CAAC;IAC1C,aAAa,GAA2B,EAAE,CAAC;IAC3C;;;;OAIG;IACH,SAAS,GAAG,IAAI,CAAC;IACT,MAAM,GAAY,KAAK,CAAC;IAEhC,YAAY,MAAmB,EAAE,KAA6B;QAC5D,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAErB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC,uBAAuB,EAAE,CAAC;QACrE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAEhC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAEQ,OAAO;QACd,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,KAAK,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,WAA8B,YAAY;QAC9C,IAAI,CAAC,EAAE,CAAC,qBAAqB,QAAwB,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,GAAG;QACD,IAAI,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,qBAAqB,QAAwB,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,WAAW;IAEX,UAAU,CAAC,OAA6C;QACtD,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QAExB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACb,KAAK,MAAM,UAAU,IAAI,OAAO,EAAE,CAAC;gBACjC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAClD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS,CAAC,cAA+B,EAAE,aAAmC;QAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACvD,MAAM,EAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAC,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;QAE7E,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,iCAAiC,cAAc,EAAE,CAAC,EAAE,CAAC;YACxE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;QAE1D,oFAAoF;QACpF,yDAAyD;QACzD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,SAAS,CAAC,cAA+B;QACvC,IAAI,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;QAC9C,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACvD,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvD,CAAC;IAED,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"webgl-transform-feedback.js","sourceRoot":"","sources":["../../../src/adapter/resources/webgl-transform-feedback.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,7 +41,7 @@ export declare class WEBGLVertexArray extends VertexArray {
|
|
|
41
41
|
*/
|
|
42
42
|
/** Get an accessor from the */
|
|
43
43
|
protected _getAccessor(location: number): {
|
|
44
|
-
size: 4 |
|
|
44
|
+
size: 4 | 2 | 1 | 3;
|
|
45
45
|
type: GL.BYTE | GL.UNSIGNED_BYTE | GL.SHORT | GL.UNSIGNED_SHORT | GL.INT | GL.UNSIGNED_INT | GL.FLOAT | GL.HALF_FLOAT;
|
|
46
46
|
stride: number;
|
|
47
47
|
offset: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-vertex-array.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/webgl-vertex-array.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAe,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAC,MAAM,eAAe,CAAC;AACpE,OAAO,EAAC,WAAW,EAAkB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,EAAE,EAAC,MAAM,oBAAoB,CAAC;AAGtC,OAAO,EAAC,WAAW,EAAC,2BAAwB;AAM5C,gCAAgC;AAChC,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAE1C;IAED,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC;IAExC,kCAAkC;IAClC,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"webgl-vertex-array.d.ts","sourceRoot":"","sources":["../../../src/adapter/resources/webgl-vertex-array.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAe,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAC,MAAM,eAAe,CAAC;AACpE,OAAO,EAAC,WAAW,EAAkB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,EAAE,EAAC,MAAM,oBAAoB,CAAC;AAGtC,OAAO,EAAC,WAAW,EAAC,2BAAwB;AAM5C,gCAAgC;AAChC,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,IAAa,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAE1C;IAED,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC;IAExC,kCAAkC;IAClC,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,WAAW,CAA2B;IAE9C,6EAA6E;IAC7E,MAAM,CAAC,gCAAgC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;gBAKpD,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB;IAM/C,OAAO,IAAI,IAAI;IAexB;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAgBhD,gGAAgG;IAChG,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI;IAmC1D,2FAA2F;IAClF,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;IAK3D,gBAAgB,IAAI,IAAI;IAKxB,iBAAiB,IAAI,IAAI;IAOlC;;;;;OAKG;IACH,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAU1C;;;OAGG;IAcH,gCAAgC;IAChC,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM;;;;;;;;;IAsBvC;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,IAAI;IAiBxD;;;;;OAKG;IACH,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM;CA+BnE"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { VertexArray, getScratchArray } from '@luma.gl/core';
|
|
5
5
|
import { GL } from '@luma.gl/constants';
|
|
6
6
|
import { getBrowser } from '@probe.gl/env';
|
|
7
|
-
import { getGLFromVertexType } from "../converters/vertex-formats.js";
|
|
7
|
+
import { getGLFromVertexType } from "../converters/webgl-vertex-formats.js";
|
|
8
8
|
import { fillArray } from "../../utils/fill-array.js";
|
|
9
9
|
/** VertexArrayObject wrapper */
|
|
10
10
|
export class WEBGLVertexArray extends VertexArray {
|
|
@@ -193,7 +193,8 @@ export class WEBGLVertexArray extends VertexArray {
|
|
|
193
193
|
let updateNeeded = !this.buffer;
|
|
194
194
|
this.buffer = this.buffer || this.device.createBuffer({ byteLength });
|
|
195
195
|
// Reallocate and update contents if needed
|
|
196
|
-
|
|
196
|
+
// @ts-ignore TODO fix types
|
|
197
|
+
updateNeeded ||= !compareConstantArrayValues(constantValue, this.bufferValue);
|
|
197
198
|
if (updateNeeded) {
|
|
198
199
|
// Create a typed array that is big enough, and fill it with the required data
|
|
199
200
|
const typedArray = getScratchArray(value.constructor, length);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-vertex-array.js","sourceRoot":"","sources":["../../../src/adapter/resources/webgl-vertex-array.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,WAAW,EAAE,eAAe,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,EAAE,EAAC,MAAM,oBAAoB,CAAC;AACtC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAKzC,OAAO,EAAC,mBAAmB,EAAC,
|
|
1
|
+
{"version":3,"file":"webgl-vertex-array.js","sourceRoot":"","sources":["../../../src/adapter/resources/webgl-vertex-array.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
+
import type { WebGLDevice } from "./webgl-device.js";
|
|
1
2
|
import { Adapter, Device, DeviceProps } from '@luma.gl/core';
|
|
2
|
-
import { WebGLDevice } from "./webgl-device.js";
|
|
3
3
|
export declare class WebGLAdapter extends Adapter {
|
|
4
4
|
/** type of device's created by this adapter */
|
|
5
5
|
readonly type: Device['type'];
|
|
6
6
|
constructor();
|
|
7
|
-
/** Check if WebGL 2 is available */
|
|
8
|
-
isSupported(): boolean;
|
|
9
7
|
/** Force any created WebGL contexts to be WebGL2 contexts, polyfilled with WebGL1 extensions */
|
|
10
8
|
enforceWebGL2(enable: boolean): void;
|
|
9
|
+
/** Check if WebGL 2 is available */
|
|
10
|
+
isSupported(): boolean;
|
|
11
|
+
isDeviceHandle(handle: unknown): boolean;
|
|
11
12
|
/**
|
|
12
13
|
* Get a device instance from a GL context
|
|
13
14
|
* Creates a WebGLCanvasContext against the contexts canvas
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-adapter.d.ts","sourceRoot":"","sources":["../../src/adapter/webgl-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"webgl-adapter.d.ts","sourceRoot":"","sources":["../../src/adapter/webgl-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,WAAW,EAAC,0BAAuB;AAChD,OAAO,EAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAM,MAAM,eAAe,CAAC;AAOhE,qBAAa,YAAa,SAAQ,OAAO;IACvC,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAW;;IAQxC,gGAAgG;IAChG,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAIpC,oCAAoC;IACpC,WAAW,IAAI,OAAO;IAIb,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO;IAajD;;;;;;OAMG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC;IAsBjE,MAAM,CAAC,KAAK,GAAE,WAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;CAuC5D;AAWD,eAAO,MAAM,aAAa,cAAqB,CAAC"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
import { Adapter, Device, log } from '@luma.gl/core';
|
|
5
|
-
import { WebGLDevice } from "./webgl-device.js";
|
|
6
5
|
import { enforceWebGL2 } from "../context/polyfills/polyfill-webgl1-extensions.js";
|
|
7
6
|
import { loadSpectorJS, DEFAULT_SPECTOR_PROPS } from "../context/debug/spector.js";
|
|
8
7
|
import { loadWebGLDeveloperTools } from "../context/debug/webgl-developer-tools.js";
|
|
@@ -14,16 +13,24 @@ export class WebGLAdapter extends Adapter {
|
|
|
14
13
|
super();
|
|
15
14
|
// Add spector default props to device default props, so that runtime settings are observed
|
|
16
15
|
Device.defaultProps = { ...Device.defaultProps, ...DEFAULT_SPECTOR_PROPS };
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
}
|
|
17
|
+
/** Force any created WebGL contexts to be WebGL2 contexts, polyfilled with WebGL1 extensions */
|
|
18
|
+
enforceWebGL2(enable) {
|
|
19
|
+
enforceWebGL2(enable);
|
|
19
20
|
}
|
|
20
21
|
/** Check if WebGL 2 is available */
|
|
21
22
|
isSupported() {
|
|
22
23
|
return typeof WebGL2RenderingContext !== 'undefined';
|
|
23
24
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
isDeviceHandle(handle) {
|
|
26
|
+
// WebGL
|
|
27
|
+
if (typeof WebGL2RenderingContext !== 'undefined' && handle instanceof WebGL2RenderingContext) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
if (typeof WebGLRenderingContext !== 'undefined' && handle instanceof WebGLRenderingContext) {
|
|
31
|
+
log.warn('WebGL1 is not supported', handle)();
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
27
34
|
}
|
|
28
35
|
/**
|
|
29
36
|
* Get a device instance from a GL context
|
|
@@ -33,11 +40,12 @@ export class WebGLAdapter extends Adapter {
|
|
|
33
40
|
* @returns
|
|
34
41
|
*/
|
|
35
42
|
async attach(gl) {
|
|
43
|
+
const { WebGLDevice } = await import('./webgl-device');
|
|
36
44
|
if (gl instanceof WebGLDevice) {
|
|
37
45
|
return gl;
|
|
38
46
|
}
|
|
39
47
|
// @ts-expect-error
|
|
40
|
-
if (gl?.device instanceof
|
|
48
|
+
if (gl?.device instanceof WebGLDevice) {
|
|
41
49
|
// @ts-expect-error
|
|
42
50
|
return gl.device;
|
|
43
51
|
}
|
|
@@ -52,32 +60,37 @@ export class WebGLAdapter extends Adapter {
|
|
|
52
60
|
});
|
|
53
61
|
}
|
|
54
62
|
async create(props = {}) {
|
|
63
|
+
const { WebGLDevice } = await import('./webgl-device');
|
|
55
64
|
log.groupCollapsed(LOG_LEVEL, 'WebGLDevice created')();
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if (props.debugSpectorJS) {
|
|
62
|
-
promises.push(loadSpectorJS(props));
|
|
63
|
-
}
|
|
64
|
-
// Wait for all the loads to settle before creating the context.
|
|
65
|
-
// The Device.create() functions are async, so in contrast to the constructor, we can `await` here.
|
|
66
|
-
const results = await Promise.allSettled(promises);
|
|
67
|
-
for (const result of results) {
|
|
68
|
-
if (result.status === 'rejected') {
|
|
69
|
-
log.error(`Failed to initialize debug libraries ${result.reason}`)();
|
|
65
|
+
try {
|
|
66
|
+
const promises = [];
|
|
67
|
+
// Load webgl and spector debug scripts from CDN if requested
|
|
68
|
+
if (props.debugWebGL || props.debug) {
|
|
69
|
+
promises.push(loadWebGLDeveloperTools());
|
|
70
70
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
if (props.debugSpectorJS) {
|
|
72
|
+
promises.push(loadSpectorJS(props));
|
|
73
|
+
}
|
|
74
|
+
// Wait for all the loads to settle before creating the context.
|
|
75
|
+
// The Device.create() functions are async, so in contrast to the constructor, we can `await` here.
|
|
76
|
+
const results = await Promise.allSettled(promises);
|
|
77
|
+
for (const result of results) {
|
|
78
|
+
if (result.status === 'rejected') {
|
|
79
|
+
log.error(`Failed to initialize debug libraries ${result.reason}`)();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
const device = new WebGLDevice(props);
|
|
83
|
+
// Log some debug info about the newly created context
|
|
84
|
+
const message = `\
|
|
85
|
+
${device._reused ? 'Reusing' : 'Created'} device with WebGL2 ${device.props.debug ? 'debug ' : ''}context: \
|
|
76
86
|
${device.info.vendor}, ${device.info.renderer} for canvas: ${device.canvasContext.id}`;
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
87
|
+
log.probe(LOG_LEVEL, message)();
|
|
88
|
+
log.table(LOG_LEVEL, device.info)();
|
|
89
|
+
return device;
|
|
90
|
+
}
|
|
91
|
+
finally {
|
|
92
|
+
log.groupEnd(LOG_LEVEL)();
|
|
93
|
+
}
|
|
81
94
|
}
|
|
82
95
|
}
|
|
83
96
|
/** Check if supplied parameter is a WebGL2RenderingContext */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-adapter.js","sourceRoot":"","sources":["../../src/adapter/webgl-adapter.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;
|
|
1
|
+
{"version":3,"file":"webgl-adapter.js","sourceRoot":"","sources":["../../src/adapter/webgl-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CanvasContextProps
|
|
1
|
+
import type { CanvasContextProps } from '@luma.gl/core';
|
|
2
2
|
import { CanvasContext } from '@luma.gl/core';
|
|
3
3
|
import { WebGLDevice } from "./webgl-device.js";
|
|
4
4
|
import { WEBGLFramebuffer } from "./resources/webgl-framebuffer.js";
|
|
@@ -7,32 +7,11 @@ import { WEBGLFramebuffer } from "./resources/webgl-framebuffer.js";
|
|
|
7
7
|
*/
|
|
8
8
|
export declare class WebGLCanvasContext extends CanvasContext {
|
|
9
9
|
readonly device: WebGLDevice;
|
|
10
|
-
readonly
|
|
11
|
-
readonly depthStencilFormat: TextureFormat;
|
|
12
|
-
presentationSize: [number, number];
|
|
10
|
+
readonly handle: unknown;
|
|
13
11
|
private _framebuffer;
|
|
14
12
|
get [Symbol.toStringTag](): string;
|
|
15
13
|
constructor(device: WebGLDevice, props: CanvasContextProps);
|
|
16
14
|
getCurrentFramebuffer(): WEBGLFramebuffer;
|
|
17
|
-
|
|
18
|
-
update(): void;
|
|
19
|
-
/**
|
|
20
|
-
* Resize the canvas' drawing buffer.
|
|
21
|
-
*
|
|
22
|
-
* Can match the canvas CSS size, and optionally also consider devicePixelRatio
|
|
23
|
-
* Can be called every frame
|
|
24
|
-
*
|
|
25
|
-
* Regardless of size, the drawing buffer will always be scaled to the viewport, but
|
|
26
|
-
* for best visual results, usually set to either:
|
|
27
|
-
* canvas CSS width x canvas CSS height
|
|
28
|
-
* canvas CSS width * devicePixelRatio x canvas CSS height * devicePixelRatio
|
|
29
|
-
* See http://webgl2fundamentals.org/webgl/lessons/webgl-resizing-the-canvas.html
|
|
30
|
-
*/
|
|
31
|
-
resize(options?: {
|
|
32
|
-
width?: number;
|
|
33
|
-
height?: number;
|
|
34
|
-
useDevicePixels?: boolean | number;
|
|
35
|
-
}): void;
|
|
36
|
-
commit(): void;
|
|
15
|
+
_updateDevice(): void;
|
|
37
16
|
}
|
|
38
17
|
//# sourceMappingURL=webgl-canvas-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-canvas-context.d.ts","sourceRoot":"","sources":["../../src/adapter/webgl-canvas-context.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"webgl-canvas-context.d.ts","sourceRoot":"","sources":["../../src/adapter/webgl-canvas-context.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAC,WAAW,EAAC,0BAAuB;AAC3C,OAAO,EAAC,gBAAgB,EAAC,yCAAsC;AAE/D;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IACnD,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAQ;IAEhC,OAAO,CAAC,YAAY,CAAiC;IAErD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAEjC;gBAEW,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,kBAAkB;IAU1D,qBAAqB,IAAI,gBAAgB;IAQzC,aAAa,IAAI,IAAI;CACtB"}
|
|
@@ -8,9 +8,7 @@ import { WEBGLFramebuffer } from "./resources/webgl-framebuffer.js";
|
|
|
8
8
|
*/
|
|
9
9
|
export class WebGLCanvasContext extends CanvasContext {
|
|
10
10
|
device;
|
|
11
|
-
|
|
12
|
-
depthStencilFormat = 'depth24plus';
|
|
13
|
-
presentationSize;
|
|
11
|
+
handle = null;
|
|
14
12
|
_framebuffer = null;
|
|
15
13
|
get [Symbol.toStringTag]() {
|
|
16
14
|
return 'WebGLCanvasContext';
|
|
@@ -19,53 +17,16 @@ export class WebGLCanvasContext extends CanvasContext {
|
|
|
19
17
|
// Note: Base class creates / looks up the canvas (unless under Node.js)
|
|
20
18
|
super(props);
|
|
21
19
|
this.device = device;
|
|
22
|
-
|
|
20
|
+
// Base class constructor cannot access derived methods/fields, so we need to call these functions in the subclass constructor
|
|
23
21
|
this._setAutoCreatedCanvasId(`${this.device.id}-canvas`);
|
|
24
|
-
this.
|
|
22
|
+
this._updateDevice();
|
|
25
23
|
}
|
|
26
24
|
getCurrentFramebuffer() {
|
|
27
|
-
this.update();
|
|
28
25
|
// Setting handle to null returns a reference to the default framebuffer
|
|
29
26
|
this._framebuffer = this._framebuffer || new WEBGLFramebuffer(this.device, { handle: null });
|
|
30
27
|
return this._framebuffer;
|
|
31
28
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
const size = this.getPixelSize();
|
|
35
|
-
const sizeChanged = size[0] !== this.presentationSize[0] || size[1] !== this.presentationSize[1];
|
|
36
|
-
if (sizeChanged) {
|
|
37
|
-
this.presentationSize = size;
|
|
38
|
-
this.resize();
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Resize the canvas' drawing buffer.
|
|
43
|
-
*
|
|
44
|
-
* Can match the canvas CSS size, and optionally also consider devicePixelRatio
|
|
45
|
-
* Can be called every frame
|
|
46
|
-
*
|
|
47
|
-
* Regardless of size, the drawing buffer will always be scaled to the viewport, but
|
|
48
|
-
* for best visual results, usually set to either:
|
|
49
|
-
* canvas CSS width x canvas CSS height
|
|
50
|
-
* canvas CSS width * devicePixelRatio x canvas CSS height * devicePixelRatio
|
|
51
|
-
* See http://webgl2fundamentals.org/webgl/lessons/webgl-resizing-the-canvas.html
|
|
52
|
-
*/
|
|
53
|
-
resize(options) {
|
|
54
|
-
if (!this.device.gl)
|
|
55
|
-
return;
|
|
56
|
-
// Resize browser context .
|
|
57
|
-
if (this.canvas) {
|
|
58
|
-
const devicePixelRatio = this.getDevicePixelRatio(options?.useDevicePixels);
|
|
59
|
-
this.setDevicePixelRatio(devicePixelRatio, options);
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
commit() {
|
|
64
|
-
// gl.commit was ultimately removed from the WebGL standard??
|
|
65
|
-
// if (this.offScreen && this.gl.commit) {
|
|
66
|
-
// // @ts-expect-error gl.commit is not officially part of WebGL2RenderingContext
|
|
67
|
-
// this.gl.commit();
|
|
68
|
-
// }
|
|
69
|
-
}
|
|
29
|
+
// IMPLEMENTATION OF ABSTRACT METHODS
|
|
30
|
+
_updateDevice() { }
|
|
70
31
|
}
|
|
71
32
|
//# sourceMappingURL=webgl-canvas-context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-canvas-context.js","sourceRoot":"","sources":["../../src/adapter/webgl-canvas-context.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAC,gBAAgB,EAAC,yCAAsC;AAE/D;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IAC1C,MAAM,CAAc;IACpB,MAAM,
|
|
1
|
+
{"version":3,"file":"webgl-canvas-context.js","sourceRoot":"","sources":["../../src/adapter/webgl-canvas-context.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAC,gBAAgB,EAAC,yCAAsC;AAE/D;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IAC1C,MAAM,CAAc;IACpB,MAAM,GAAY,IAAI,CAAC;IAExB,YAAY,GAA4B,IAAI,CAAC;IAErD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,YAAY,MAAmB,EAAE,KAAyB;QACxD,wEAAwE;QACxE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,8HAA8H;QAC9H,IAAI,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,qBAAqB;QACnB,wEAAwE;QACxE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;QAC3F,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,qCAAqC;IAErC,aAAa,KAAU,CAAC;CACzB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { TypedArray } from '@math.gl/types';
|
|
2
|
-
import type { DeviceProps, DeviceInfo, DeviceTextureFormatCapabilities, CanvasContextProps, Buffer, Texture, Framebuffer, VertexArray, VertexArrayProps, BufferProps, ShaderProps, SamplerProps, TextureProps, ExternalTexture, ExternalTextureProps, FramebufferProps, RenderPipelineProps, ComputePipeline, ComputePipelineProps,
|
|
2
|
+
import type { DeviceProps, DeviceInfo, DeviceTextureFormatCapabilities, CanvasContextProps, Buffer, Texture, Framebuffer, VertexArray, VertexArrayProps, BufferProps, ShaderProps, SamplerProps, TextureProps, ExternalTexture, ExternalTextureProps, FramebufferProps, RenderPipelineProps, ComputePipeline, ComputePipelineProps, CommandEncoderProps, TransformFeedbackProps, QuerySetProps, Resource, VertexFormat } from '@luma.gl/core';
|
|
3
3
|
import { Device, CanvasContext } from '@luma.gl/core';
|
|
4
4
|
import type { GLExtensions } from '@luma.gl/constants';
|
|
5
5
|
import { WebGLDeviceFeatures } from "./device-helpers/webgl-device-features.js";
|
|
@@ -11,9 +11,9 @@ import { WEBGLShader } from "./resources/webgl-shader.js";
|
|
|
11
11
|
import { WEBGLSampler } from "./resources/webgl-sampler.js";
|
|
12
12
|
import { WEBGLTexture } from "./resources/webgl-texture.js";
|
|
13
13
|
import { WEBGLFramebuffer } from "./resources/webgl-framebuffer.js";
|
|
14
|
-
import { WEBGLRenderPass } from "./resources/webgl-render-pass.js";
|
|
15
14
|
import { WEBGLRenderPipeline } from "./resources/webgl-render-pipeline.js";
|
|
16
15
|
import { WEBGLCommandEncoder } from "./resources/webgl-command-encoder.js";
|
|
16
|
+
import { WEBGLCommandBuffer } from "./resources/webgl-command-buffer.js";
|
|
17
17
|
import { WEBGLTransformFeedback } from "./resources/webgl-transform-feedback.js";
|
|
18
18
|
import { WEBGLQuerySet } from "./resources/webgl-query-set.js";
|
|
19
19
|
/** WebGPU style Device API for a WebGL context */
|
|
@@ -26,6 +26,9 @@ export declare class WebGLDevice extends Device {
|
|
|
26
26
|
limits: WebGLDeviceLimits;
|
|
27
27
|
readonly info: DeviceInfo;
|
|
28
28
|
readonly canvasContext: WebGLCanvasContext;
|
|
29
|
+
readonly preferredColorFormat = "rgba8unorm";
|
|
30
|
+
readonly preferredDepthFormat = "depth24plus";
|
|
31
|
+
commandEncoder: WEBGLCommandEncoder;
|
|
29
32
|
readonly lost: Promise<{
|
|
30
33
|
reason: 'destroyed';
|
|
31
34
|
message: string;
|
|
@@ -33,18 +36,16 @@ export declare class WebGLDevice extends Device {
|
|
|
33
36
|
private _resolveContextLost?;
|
|
34
37
|
/** WebGL2 context. */
|
|
35
38
|
readonly gl: WebGL2RenderingContext;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
readonly _canvasSizeInfo: {
|
|
39
|
-
clientWidth: number;
|
|
40
|
-
clientHeight: number;
|
|
41
|
-
devicePixelRatio: number;
|
|
42
|
-
};
|
|
39
|
+
/** Store constants */
|
|
40
|
+
_constants: (TypedArray | null)[];
|
|
43
41
|
/** State used by luma.gl classes - TODO - not used? */
|
|
44
42
|
readonly _extensions: GLExtensions;
|
|
45
43
|
_polyfilled: boolean;
|
|
46
44
|
/** Instance of Spector.js (if initialized) */
|
|
47
45
|
spectorJS: Spector | null;
|
|
46
|
+
get [Symbol.toStringTag](): string;
|
|
47
|
+
toString(): string;
|
|
48
|
+
isVertexFormatSupported(format: VertexFormat): boolean;
|
|
48
49
|
constructor(props: DeviceProps);
|
|
49
50
|
/**
|
|
50
51
|
* Destroys the device
|
|
@@ -58,6 +59,7 @@ export declare class WebGLDevice extends Device {
|
|
|
58
59
|
*/
|
|
59
60
|
destroy(): void;
|
|
60
61
|
get isLost(): boolean;
|
|
62
|
+
getTextureByteAlignment(): number;
|
|
61
63
|
createCanvasContext(props?: CanvasContextProps): CanvasContext;
|
|
62
64
|
createBuffer(props: BufferProps | ArrayBuffer | ArrayBufferView): WEBGLBuffer;
|
|
63
65
|
createTexture(props: TextureProps): WEBGLTexture;
|
|
@@ -69,17 +71,14 @@ export declare class WebGLDevice extends Device {
|
|
|
69
71
|
createTransformFeedback(props: TransformFeedbackProps): WEBGLTransformFeedback;
|
|
70
72
|
createQuerySet(props: QuerySetProps): WEBGLQuerySet;
|
|
71
73
|
createRenderPipeline(props: RenderPipelineProps): WEBGLRenderPipeline;
|
|
72
|
-
beginRenderPass(props: RenderPassProps): WEBGLRenderPass;
|
|
73
74
|
createComputePipeline(props?: ComputePipelineProps): ComputePipeline;
|
|
74
|
-
beginComputePass(props: ComputePassProps): ComputePass;
|
|
75
|
-
private renderPass;
|
|
76
75
|
createCommandEncoder(props?: CommandEncoderProps): WEBGLCommandEncoder;
|
|
77
76
|
/**
|
|
78
77
|
* Offscreen Canvas Support: Commit the frame
|
|
79
78
|
* https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/commit
|
|
80
79
|
* Chrome's offscreen canvas does not require gl.commit
|
|
81
80
|
*/
|
|
82
|
-
submit(): void;
|
|
81
|
+
submit(commandBuffer: WEBGLCommandBuffer): void;
|
|
83
82
|
/** @deprecated - should use command encoder */
|
|
84
83
|
readPixelsToArrayWebGL(source: Framebuffer | Texture, options?: {
|
|
85
84
|
sourceX?: number;
|
|
@@ -116,11 +115,6 @@ export declare class WebGLDevice extends Device {
|
|
|
116
115
|
pushState(): void;
|
|
117
116
|
/** Restores previously saved context state */
|
|
118
117
|
popState(): void;
|
|
119
|
-
/**
|
|
120
|
-
* Storing data on a special field on WebGLObjects makes that data visible in SPECTOR chrome debug extension
|
|
121
|
-
* luma.gl ids and props can be inspected
|
|
122
|
-
*/
|
|
123
|
-
setSpectorMetadata(handle: unknown, props: Record<string, unknown>): void;
|
|
124
118
|
/**
|
|
125
119
|
* Returns the GL.<KEY> constant that corresponds to a numeric value of a GL constant
|
|
126
120
|
* Be aware that there are some duplicates especially for constants that are 0,
|
|
@@ -133,8 +127,6 @@ export declare class WebGLDevice extends Device {
|
|
|
133
127
|
* Returns a map with any GL.<KEY> constants mapped to strings, both for keys and values
|
|
134
128
|
*/
|
|
135
129
|
getGLKeys(glParameters: Record<number, unknown>): Record<string, string>;
|
|
136
|
-
/** Store constants */
|
|
137
|
-
_constants: (TypedArray | null)[];
|
|
138
130
|
/**
|
|
139
131
|
* Set a constant value for a location. Disabled attributes at that location will read from this value
|
|
140
132
|
* @note WebGL constants are stored globally on the WebGL context, not the VertexArray
|
|
@@ -144,5 +136,12 @@ export declare class WebGLDevice extends Device {
|
|
|
144
136
|
setConstantAttributeWebGL(location: number, constant: TypedArray): void;
|
|
145
137
|
/** Ensure extensions are only requested once */
|
|
146
138
|
getExtension(name: keyof GLExtensions): GLExtensions;
|
|
139
|
+
/**
|
|
140
|
+
* Storing data on a special field on WebGLObjects makes that data visible in SPECTOR chrome debug extension
|
|
141
|
+
* luma.gl ids and props can be inspected
|
|
142
|
+
*/
|
|
143
|
+
_setWebGLDebugMetadata(handle: unknown, resource: Resource<any>, options: {
|
|
144
|
+
spector: Record<string, unknown>;
|
|
145
|
+
}): void;
|
|
147
146
|
}
|
|
148
147
|
//# sourceMappingURL=webgl-device.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl-device.d.ts","sourceRoot":"","sources":["../../src/adapter/webgl-device.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,+BAA+B,EAC/B,kBAAkB,EAClB,MAAM,EACN,OAAO,EACP,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,WAAW,EAEX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAEhB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EAEpB,
|
|
1
|
+
{"version":3,"file":"webgl-device.d.ts","sourceRoot":"","sources":["../../src/adapter/webgl-device.ts"],"names":[],"mappings":"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"}
|