@luma.gl/core 9.2.6 → 9.3.0-alpha.11
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/canvas-context.d.ts +6 -162
- package/dist/adapter/canvas-context.d.ts.map +1 -1
- package/dist/adapter/canvas-context.js +5 -419
- package/dist/adapter/canvas-context.js.map +1 -1
- package/dist/adapter/canvas-observer.d.ts +32 -0
- package/dist/adapter/canvas-observer.d.ts.map +1 -0
- package/dist/adapter/canvas-observer.js +90 -0
- package/dist/adapter/canvas-observer.js.map +1 -0
- package/dist/adapter/canvas-surface.d.ts +150 -0
- package/dist/adapter/canvas-surface.d.ts.map +1 -0
- package/dist/adapter/canvas-surface.js +392 -0
- package/dist/adapter/canvas-surface.js.map +1 -0
- package/dist/adapter/device.d.ts +81 -16
- package/dist/adapter/device.d.ts.map +1 -1
- package/dist/adapter/device.js +193 -11
- package/dist/adapter/device.js.map +1 -1
- package/dist/adapter/luma.d.ts.map +1 -1
- package/dist/adapter/luma.js +2 -1
- package/dist/adapter/luma.js.map +1 -1
- package/dist/adapter/presentation-context.d.ts +11 -0
- package/dist/adapter/presentation-context.d.ts.map +1 -0
- package/dist/adapter/presentation-context.js +12 -0
- package/dist/adapter/presentation-context.js.map +1 -0
- package/dist/adapter/resources/buffer.d.ts +1 -1
- package/dist/adapter/resources/buffer.d.ts.map +1 -1
- package/dist/adapter/resources/buffer.js +14 -6
- package/dist/adapter/resources/buffer.js.map +1 -1
- package/dist/adapter/resources/command-buffer.d.ts +3 -1
- package/dist/adapter/resources/command-buffer.d.ts.map +1 -1
- package/dist/adapter/resources/command-buffer.js +3 -1
- package/dist/adapter/resources/command-buffer.js.map +1 -1
- package/dist/adapter/resources/command-encoder.d.ts +30 -7
- package/dist/adapter/resources/command-encoder.d.ts.map +1 -1
- package/dist/adapter/resources/command-encoder.js +68 -2
- package/dist/adapter/resources/command-encoder.js.map +1 -1
- package/dist/adapter/resources/compute-pipeline.d.ts +2 -2
- package/dist/adapter/resources/compute-pipeline.d.ts.map +1 -1
- package/dist/adapter/resources/fence.d.ts +16 -0
- package/dist/adapter/resources/fence.d.ts.map +1 -0
- package/dist/adapter/resources/fence.js +17 -0
- package/dist/adapter/resources/fence.js.map +1 -0
- package/dist/adapter/resources/framebuffer.d.ts +1 -1
- package/dist/adapter/resources/framebuffer.d.ts.map +1 -1
- package/dist/adapter/resources/framebuffer.js +15 -12
- package/dist/adapter/resources/framebuffer.js.map +1 -1
- package/dist/adapter/resources/query-set.d.ts +17 -1
- package/dist/adapter/resources/query-set.d.ts.map +1 -1
- package/dist/adapter/resources/query-set.js.map +1 -1
- package/dist/adapter/resources/render-pipeline.d.ts +28 -10
- package/dist/adapter/resources/render-pipeline.d.ts.map +1 -1
- package/dist/adapter/resources/render-pipeline.js +21 -2
- package/dist/adapter/resources/render-pipeline.js.map +1 -1
- package/dist/adapter/resources/resource.d.ts +13 -0
- package/dist/adapter/resources/resource.d.ts.map +1 -1
- package/dist/adapter/resources/resource.js +243 -14
- package/dist/adapter/resources/resource.js.map +1 -1
- package/dist/adapter/resources/shader.js +27 -25
- package/dist/adapter/resources/shader.js.map +1 -1
- package/dist/adapter/resources/shared-render-pipeline.d.ts +22 -0
- package/dist/adapter/resources/shared-render-pipeline.d.ts.map +1 -0
- package/dist/adapter/resources/shared-render-pipeline.js +25 -0
- package/dist/adapter/resources/shared-render-pipeline.js.map +1 -0
- package/dist/adapter/resources/texture-view.d.ts +1 -1
- package/dist/adapter/resources/texture-view.d.ts.map +1 -1
- package/dist/adapter/resources/texture.d.ts +168 -28
- package/dist/adapter/resources/texture.d.ts.map +1 -1
- package/dist/adapter/resources/texture.js +284 -25
- package/dist/adapter/resources/texture.js.map +1 -1
- package/dist/adapter/types/attachments.d.ts +1 -1
- package/dist/adapter/types/attachments.d.ts.map +1 -1
- package/dist/adapter/types/buffer-layout.d.ts +1 -1
- package/dist/adapter/types/buffer-layout.d.ts.map +1 -1
- package/dist/adapter/types/parameters.d.ts +3 -1
- package/dist/adapter/types/parameters.d.ts.map +1 -1
- package/dist/adapter/types/parameters.js +1 -0
- package/dist/adapter/types/parameters.js.map +1 -1
- package/dist/adapter/types/shader-layout.d.ts +10 -6
- package/dist/adapter/types/shader-layout.d.ts.map +1 -1
- package/dist/adapter/types/uniforms.d.ts +6 -0
- package/dist/adapter/types/uniforms.d.ts.map +1 -1
- package/dist/adapter-utils/bind-groups.d.ts +9 -0
- package/dist/adapter-utils/bind-groups.d.ts.map +1 -0
- package/dist/adapter-utils/bind-groups.js +41 -0
- package/dist/adapter-utils/bind-groups.js.map +1 -0
- package/dist/adapter-utils/format-compiler-log.d.ts.map +1 -1
- package/dist/adapter-utils/format-compiler-log.js +23 -15
- package/dist/adapter-utils/format-compiler-log.js.map +1 -1
- package/dist/adapter-utils/get-attribute-from-layouts.d.ts +2 -2
- package/dist/adapter-utils/get-attribute-from-layouts.d.ts.map +1 -1
- package/dist/adapter-utils/get-attribute-from-layouts.js +6 -6
- package/dist/adapter-utils/get-attribute-from-layouts.js.map +1 -1
- package/dist/dist.dev.js +2734 -644
- package/dist/dist.min.js +10 -9
- package/dist/factories/bind-group-factory.d.ts +20 -0
- package/dist/factories/bind-group-factory.d.ts.map +1 -0
- package/dist/factories/bind-group-factory.js +88 -0
- package/dist/factories/bind-group-factory.js.map +1 -0
- package/dist/factories/core-module-state.d.ts +7 -0
- package/dist/factories/core-module-state.d.ts.map +1 -0
- package/dist/{shadertypes/data-types/shader-types.js → factories/core-module-state.js} +1 -1
- package/dist/factories/core-module-state.js.map +1 -0
- package/dist/factories/pipeline-factory.d.ts +54 -0
- package/dist/factories/pipeline-factory.d.ts.map +1 -0
- package/dist/factories/pipeline-factory.js +270 -0
- package/dist/factories/pipeline-factory.js.map +1 -0
- package/dist/factories/shader-factory.d.ts +20 -0
- package/dist/factories/shader-factory.d.ts.map +1 -0
- package/dist/factories/shader-factory.js +84 -0
- package/dist/factories/shader-factory.js.map +1 -0
- package/dist/index.cjs +2447 -534
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +30 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -7
- package/dist/index.js.map +1 -1
- package/dist/portable/shader-block-writer.d.ts +51 -0
- package/dist/portable/shader-block-writer.d.ts.map +1 -0
- package/dist/portable/shader-block-writer.js +185 -0
- package/dist/portable/shader-block-writer.js.map +1 -0
- package/dist/portable/uniform-block.d.ts +1 -1
- package/dist/portable/uniform-block.d.ts.map +1 -1
- package/dist/portable/uniform-store.d.ts +55 -24
- package/dist/portable/uniform-store.d.ts.map +1 -1
- package/dist/portable/uniform-store.js +73 -25
- package/dist/portable/uniform-store.js.map +1 -1
- package/dist/shadertypes/data-types/data-type-decoder.d.ts +20 -0
- package/dist/shadertypes/data-types/data-type-decoder.d.ts.map +1 -0
- package/dist/shadertypes/data-types/data-type-decoder.js +79 -0
- package/dist/shadertypes/data-types/data-type-decoder.js.map +1 -0
- package/dist/shadertypes/data-types/data-types.d.ts +31 -12
- package/dist/shadertypes/data-types/data-types.d.ts.map +1 -1
- package/dist/shadertypes/data-types/decode-data-types.d.ts.map +1 -1
- package/dist/shadertypes/data-types/decode-data-types.js +4 -3
- package/dist/shadertypes/data-types/decode-data-types.js.map +1 -1
- package/dist/{image-utils → shadertypes/image-types}/image-types.d.ts +0 -6
- package/dist/shadertypes/image-types/image-types.d.ts.map +1 -0
- package/dist/shadertypes/image-types/image-types.js.map +1 -0
- package/dist/shadertypes/shader-types/shader-block-layout.d.ts +72 -0
- package/dist/shadertypes/shader-types/shader-block-layout.d.ts.map +1 -0
- package/dist/shadertypes/shader-types/shader-block-layout.js +209 -0
- package/dist/shadertypes/shader-types/shader-block-layout.js.map +1 -0
- package/dist/shadertypes/shader-types/shader-type-decoder.d.ts +41 -0
- package/dist/shadertypes/shader-types/shader-type-decoder.d.ts.map +1 -0
- package/dist/shadertypes/{data-types/decode-shader-types.js → shader-types/shader-type-decoder.js} +43 -4
- package/dist/shadertypes/shader-types/shader-type-decoder.js.map +1 -0
- package/dist/shadertypes/shader-types/shader-types.d.ts +101 -0
- package/dist/shadertypes/shader-types/shader-types.d.ts.map +1 -0
- package/dist/shadertypes/shader-types/shader-types.js +30 -0
- package/dist/shadertypes/shader-types/shader-types.js.map +1 -0
- package/dist/shadertypes/texture-types/pixel-utils.d.ts.map +1 -0
- package/dist/shadertypes/{textures → texture-types}/pixel-utils.js +4 -4
- package/dist/shadertypes/texture-types/pixel-utils.js.map +1 -0
- package/dist/shadertypes/texture-types/texture-format-decoder.d.ts +36 -0
- package/dist/shadertypes/texture-types/texture-format-decoder.d.ts.map +1 -0
- package/dist/shadertypes/{textures → texture-types}/texture-format-decoder.js +110 -38
- package/dist/shadertypes/texture-types/texture-format-decoder.js.map +1 -0
- package/dist/shadertypes/texture-types/texture-format-generics.d.ts +34 -0
- package/dist/shadertypes/texture-types/texture-format-generics.d.ts.map +1 -0
- package/dist/shadertypes/texture-types/texture-format-generics.js.map +1 -0
- package/dist/shadertypes/texture-types/texture-format-table.d.ts.map +1 -0
- package/dist/shadertypes/{textures → texture-types}/texture-format-table.js +12 -11
- package/dist/shadertypes/texture-types/texture-format-table.js.map +1 -0
- package/dist/shadertypes/{textures → texture-types}/texture-formats.d.ts +51 -17
- package/dist/shadertypes/texture-types/texture-formats.d.ts.map +1 -0
- package/dist/shadertypes/{textures → texture-types}/texture-formats.js +1 -0
- package/dist/shadertypes/texture-types/texture-formats.js.map +1 -0
- package/dist/shadertypes/texture-types/texture-layout.d.ts +5 -0
- package/dist/shadertypes/texture-types/texture-layout.d.ts.map +1 -0
- package/dist/shadertypes/texture-types/texture-layout.js +41 -0
- package/dist/shadertypes/texture-types/texture-layout.js.map +1 -0
- package/dist/shadertypes/vertex-types/vertex-format-decoder.d.ts +24 -0
- package/dist/shadertypes/vertex-types/vertex-format-decoder.d.ts.map +1 -0
- package/dist/shadertypes/vertex-types/vertex-format-decoder.js +144 -0
- package/dist/shadertypes/vertex-types/vertex-format-decoder.js.map +1 -0
- package/dist/shadertypes/vertex-types/vertex-formats.d.ts +50 -0
- package/dist/shadertypes/vertex-types/vertex-formats.d.ts.map +1 -0
- package/dist/shadertypes/vertex-types/vertex-formats.js.map +1 -0
- package/dist/utils/array-equal.d.ts +1 -1
- package/dist/utils/array-equal.d.ts.map +1 -1
- package/dist/utils/array-equal.js +15 -9
- package/dist/utils/array-equal.js.map +1 -1
- package/dist/utils/assert.d.ts +5 -0
- package/dist/utils/assert.d.ts.map +1 -0
- package/dist/utils/assert.js +17 -0
- package/dist/utils/assert.js.map +1 -0
- package/dist/utils/stats-manager.d.ts.map +1 -1
- package/dist/utils/stats-manager.js +61 -1
- package/dist/utils/stats-manager.js.map +1 -1
- package/package.json +6 -6
- package/src/adapter/canvas-context.ts +7 -556
- package/src/adapter/canvas-observer.ts +130 -0
- package/src/adapter/canvas-surface.ts +521 -0
- package/src/adapter/device.ts +311 -25
- package/src/adapter/luma.ts +1 -0
- package/src/adapter/presentation-context.ts +16 -0
- package/src/adapter/resources/buffer.ts +13 -5
- package/src/adapter/resources/command-buffer.ts +4 -2
- package/src/adapter/resources/command-encoder.ts +101 -10
- package/src/adapter/resources/compute-pipeline.ts +2 -2
- package/src/adapter/resources/fence.ts +32 -0
- package/src/adapter/resources/framebuffer.ts +16 -13
- package/src/adapter/resources/query-set.ts +17 -1
- package/src/adapter/resources/render-pipeline.ts +52 -16
- package/src/adapter/resources/resource.ts +289 -14
- package/src/adapter/resources/shader.ts +28 -28
- package/src/adapter/resources/shared-render-pipeline.ts +40 -0
- package/src/adapter/resources/texture-view.ts +1 -1
- package/src/adapter/resources/texture.ts +427 -49
- package/src/adapter/types/attachments.ts +1 -1
- package/src/adapter/types/buffer-layout.ts +1 -1
- package/src/adapter/types/parameters.ts +4 -1
- package/src/adapter/types/shader-layout.ts +15 -9
- package/src/adapter/types/uniforms.ts +12 -0
- package/src/adapter-utils/bind-groups.ts +71 -0
- package/src/adapter-utils/format-compiler-log.ts +23 -15
- package/src/adapter-utils/get-attribute-from-layouts.ts +8 -11
- package/src/factories/bind-group-factory.ts +157 -0
- package/src/factories/core-module-state.ts +11 -0
- package/src/factories/pipeline-factory.ts +328 -0
- package/src/factories/shader-factory.ts +103 -0
- package/src/index.ts +70 -26
- package/src/portable/shader-block-writer.ts +254 -0
- package/src/portable/uniform-block.ts +1 -1
- package/src/portable/uniform-store.ts +98 -40
- package/src/shadertypes/data-types/data-type-decoder.ts +105 -0
- package/src/shadertypes/data-types/data-types.ts +100 -48
- package/src/shadertypes/data-types/decode-data-types.ts +4 -3
- package/src/{image-utils → shadertypes/image-types}/image-types.ts +0 -7
- package/src/shadertypes/shader-types/shader-block-layout.ts +340 -0
- package/src/shadertypes/{data-types/decode-shader-types.ts → shader-types/shader-type-decoder.ts} +88 -14
- package/src/shadertypes/shader-types/shader-types.ts +207 -0
- package/src/shadertypes/{textures → texture-types}/pixel-utils.ts +4 -4
- package/src/shadertypes/{textures → texture-types}/texture-format-decoder.ts +167 -46
- package/src/shadertypes/{textures → texture-types}/texture-format-generics.ts +42 -48
- package/src/shadertypes/{textures → texture-types}/texture-format-table.ts +12 -11
- package/src/shadertypes/{textures → texture-types}/texture-formats.ts +73 -17
- package/src/shadertypes/texture-types/texture-layout.ts +60 -0
- package/src/shadertypes/vertex-types/vertex-format-decoder.ts +175 -0
- package/src/shadertypes/vertex-types/vertex-formats.ts +196 -0
- package/src/utils/array-equal.ts +21 -9
- package/src/utils/assert.ts +18 -0
- package/src/utils/stats-manager.ts +76 -2
- package/dist/image-utils/image-types.d.ts.map +0 -1
- package/dist/image-utils/image-types.js.map +0 -1
- package/dist/portable/uniform-buffer-layout.d.ts +0 -28
- package/dist/portable/uniform-buffer-layout.d.ts.map +0 -1
- package/dist/portable/uniform-buffer-layout.js +0 -96
- package/dist/portable/uniform-buffer-layout.js.map +0 -1
- package/dist/shadertypes/data-types/decode-shader-types.d.ts +0 -17
- package/dist/shadertypes/data-types/decode-shader-types.d.ts.map +0 -1
- package/dist/shadertypes/data-types/decode-shader-types.js.map +0 -1
- package/dist/shadertypes/data-types/shader-types.d.ts +0 -45
- package/dist/shadertypes/data-types/shader-types.d.ts.map +0 -1
- package/dist/shadertypes/data-types/shader-types.js.map +0 -1
- package/dist/shadertypes/textures/pixel-utils.d.ts.map +0 -1
- package/dist/shadertypes/textures/pixel-utils.js.map +0 -1
- package/dist/shadertypes/textures/texture-format-decoder.d.ts +0 -18
- package/dist/shadertypes/textures/texture-format-decoder.d.ts.map +0 -1
- package/dist/shadertypes/textures/texture-format-decoder.js.map +0 -1
- package/dist/shadertypes/textures/texture-format-generics.d.ts +0 -33
- package/dist/shadertypes/textures/texture-format-generics.d.ts.map +0 -1
- package/dist/shadertypes/textures/texture-format-generics.js.map +0 -1
- package/dist/shadertypes/textures/texture-format-table.d.ts.map +0 -1
- package/dist/shadertypes/textures/texture-format-table.js.map +0 -1
- package/dist/shadertypes/textures/texture-formats.d.ts.map +0 -1
- package/dist/shadertypes/textures/texture-formats.js.map +0 -1
- package/dist/shadertypes/vertex-arrays/decode-vertex-format.d.ts +0 -18
- package/dist/shadertypes/vertex-arrays/decode-vertex-format.d.ts.map +0 -1
- package/dist/shadertypes/vertex-arrays/decode-vertex-format.js +0 -100
- package/dist/shadertypes/vertex-arrays/decode-vertex-format.js.map +0 -1
- package/dist/shadertypes/vertex-arrays/vertex-formats.d.ts +0 -27
- package/dist/shadertypes/vertex-arrays/vertex-formats.d.ts.map +0 -1
- package/dist/shadertypes/vertex-arrays/vertex-formats.js.map +0 -1
- package/src/portable/uniform-buffer-layout.ts +0 -118
- package/src/shadertypes/data-types/shader-types.ts +0 -87
- package/src/shadertypes/vertex-arrays/decode-vertex-format.ts +0 -124
- package/src/shadertypes/vertex-arrays/vertex-formats.ts +0 -91
- /package/dist/{image-utils → shadertypes/image-types}/image-types.js +0 -0
- /package/dist/shadertypes/{textures → texture-types}/pixel-utils.d.ts +0 -0
- /package/dist/shadertypes/{textures → texture-types}/texture-format-generics.js +0 -0
- /package/dist/shadertypes/{textures → texture-types}/texture-format-table.d.ts +0 -0
- /package/dist/shadertypes/{vertex-arrays → vertex-types}/vertex-formats.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"texture-format-decoder.js","sourceRoot":"","sources":["../../../src/shadertypes/textures/texture-format-decoder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { type TextureFormat, type TextureFormatDepthStencil, type TextureFormatCompressed } from "./texture-formats.js";
|
|
2
|
-
import { type DataTypeArray, NormalizedDataTypeArray } from "../data-types/data-types.js";
|
|
3
|
-
export type TextureFormatTypedArray<T extends TextureFormat> = DataTypeArray<TextureFormatDataType<T>>;
|
|
4
|
-
export type TextureFormatNormalizedTypedArray<T extends TextureFormat> = NormalizedDataTypeArray<TextureFormatDataType<T>>;
|
|
5
|
-
/** A numeric array of length matching the number of components in the texture format */
|
|
6
|
-
export type TextureFormatPixel<T extends TextureFormat> = TextureFormatPackedComponents<T> extends 1 ? [number] : TextureFormatPackedComponents<T> extends 2 ? [number, number] : TextureFormatPackedComponents<T> extends 3 ? [number, number, number] : TextureFormatPackedComponents<T> extends 4 ? [number, number, number, number] : never;
|
|
7
|
-
/** @note packed formats have only one component. Use TextureFormatPackedComponents */
|
|
8
|
-
export type TextureFormatComponents<T extends TextureFormat> = T extends TextureFormatR | TextureFormatPackedRGB | TextureFormatPackedRGBA ? 1 : T extends TextureFormatRG ? 2 : T extends TextureFormatRGB ? 3 : T extends TextureFormatRGBA ? 4 : never;
|
|
9
|
-
export type TextureFormatPackedComponents<T extends TextureFormat> = T extends TextureFormatR ? 1 : T extends TextureFormatRG ? 2 : T extends TextureFormatRGB | TextureFormatPackedRGB ? 3 : T extends TextureFormatRGBA | TextureFormatPackedRGBA ? 4 : never;
|
|
10
|
-
/** Get the data type for a texture format */
|
|
11
|
-
export type TextureFormatDataType<T extends TextureFormat> = T extends TextureFormatUint8 ? 'uint8' : T extends TextureFormatSint8 ? 'sint8' : T extends TextureFormatUnorm8 ? 'unorm8' : T extends TextureFormatSnorm8 ? 'snorm8' : T extends TextureFormatUint16 ? 'uint16' : T extends TextureFormatSint16 ? 'sint16' : T extends TextureFormatUnorm16 ? 'unorm16' : T extends TextureFormatSnorm16 ? 'snorm16' : T extends TextureFormatUint32 ? 'uint32' : T extends TextureFormatSint32 ? 'sint32' : T extends TextureFormatFloat16 ? 'float16' : T extends TextureFormatFloat32 ? 'float32' : T extends TextureFormatDepthStencil ? 'uint32' : T extends TextureFormatCompressed ? 'uint8' : T extends TextureFormatPacked16 ? 'uint16' : T extends TextureFormatPacked32 ? 'uint32' : never;
|
|
12
|
-
type TextureFormatR = 'r8uint' | 'r8sint' | 'r8unorm' | 'r8snorm' | 'r16unorm' | 'r16snorm' | 'r16uint' | 'r16sint' | 'r16float' | 'r32uint' | 'r32sint' | 'r32float';
|
|
13
|
-
type TextureFormatRG = 'rg8unorm' | 'rg8snorm' | 'rg8uint' | 'rg8sint' | 'rg16unorm' | 'rg16snorm' | 'rg16uint' | 'rg16sint' | 'rg16float' | 'rg32uint' | 'rg32sint' | 'rg32float';
|
|
14
|
-
type TextureFormatRGB = 'rgb8unorm-webgl' | 'rgb8snorm-webgl' | 'rgb16unorm-webgl' | 'rgb16snorm-webgl' | 'rgb32float-webgl';
|
|
15
|
-
type TextureFormatRGBA = 'rgba8uint' | 'rgba8unorm' | 'rgba8unorm-srgb' | 'rgba8snorm' | 'bgra8unorm' | 'bgra8unorm-srgb' | 'rgba8sint' | 'rgba16unorm' | 'rgba16snorm' | 'rgba16uint' | 'rgba16sint' | 'rgba16float' | 'rgba32uint' | 'rgba32sint' | 'rgba32float';
|
|
16
|
-
type TextureFormatPackedRGB = 'rgb565unorm-webgl' | 'rgb9e5ufloat' | 'rg11b10ufloat';
|
|
17
|
-
type TextureFormatPackedRGBA = 'rgba4unorm-webgl' | 'rgb5a1unorm-webgl' | 'rgb10a2unorm' | 'rgb10a2uint';
|
|
18
|
-
type TextureFormatUnorm8 = 'r8unorm' | 'rg8unorm' | 'rgb8unorm-webgl' | 'rgba8unorm' | 'rgba8unorm-srgb' | 'bgra8unorm' | 'bgra8unorm-srgb';
|
|
19
|
-
type TextureFormatSnorm8 = 'r8snorm' | 'rg8snorm' | 'rgb8snorm-webgl' | 'rgba8snorm';
|
|
20
|
-
type TextureFormatUint8 = 'r8uint' | 'rg8uint' | 'rgba8uint';
|
|
21
|
-
type TextureFormatSint8 = 'r8sint' | 'rg8sint' | 'rgba8sint';
|
|
22
|
-
type TextureFormatUnorm16 = 'r16unorm' | 'rg16unorm' | 'rgb16unorm-webgl' | 'rgba16unorm';
|
|
23
|
-
type TextureFormatSnorm16 = 'r16snorm' | 'rg16snorm' | 'rgb16snorm-webgl' | 'rgba16snorm';
|
|
24
|
-
type TextureFormatUint16 = 'r16uint' | 'rg16uint' | 'rgba16uint';
|
|
25
|
-
type TextureFormatSint16 = 'r16sint' | 'rg16sint' | 'rgba16sint';
|
|
26
|
-
type TextureFormatFloat16 = 'r16float' | 'rg16float' | 'rgba16float';
|
|
27
|
-
type TextureFormatUint32 = 'r32uint' | 'rg32uint' | 'rgba32uint';
|
|
28
|
-
type TextureFormatSint32 = 'r32sint' | 'rg32sint' | 'rgba32sint';
|
|
29
|
-
type TextureFormatFloat32 = 'r32float' | 'rg32float' | 'rgb32float-webgl' | 'rgba32float';
|
|
30
|
-
type TextureFormatPacked16 = 'rgba4unorm-webgl' | 'rgb565unorm-webgl' | 'rgb5a1unorm-webgl';
|
|
31
|
-
type TextureFormatPacked32 = 'rgb9e5ufloat' | 'rg11b10ufloat' | 'rgb10a2unorm' | 'rgb10a2uint';
|
|
32
|
-
export {};
|
|
33
|
-
//# sourceMappingURL=texture-format-generics.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"texture-format-generics.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/textures/texture-format-generics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"texture-format-generics.js","sourceRoot":"","sources":["../../../src/shadertypes/textures/texture-format-generics.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"texture-format-table.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/textures/texture-format-table.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,aAAa,EAGb,cAAc,EACd,iBAAiB,EAElB,6BAA0B;AAqB3B,wDAAwD;AAExD,sDAAsD;AACtD,KAAK,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,GAAG;IAC1D,qCAAqC;IACrC,CAAC,CAAC,EAAE,cAAc,CAAC;IACnB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,cAAc,GAAG,KAAK,CAAC;IAChC,0FAA0F;IAC1F,MAAM,CAAC,EAAE,cAAc,GAAG,KAAK,CAAC;IAChC,KAAK,CAAC,EAAE,cAAc,GAAG,KAAK,CAAC;IAC/B,KAAK,CAAC,EAAE,cAAc,GAAG,KAAK,CAAC;IAE/B,wDAAwD;IACxD,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,eAAe;IACf,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa;IACb,CAAC,CAAC,EAAE,MAAM,CAAC;IAEX,iCAAiC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,uBAAuB,CAMzF;AAED,wBAAgB,qBAAqB,IAAI,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC,CAEhG;AA8KD,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAGzF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"texture-format-table.js","sourceRoot":"","sources":["../../../src/shadertypes/textures/texture-format-table.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"texture-formats.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/textures/texture-formats.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"texture-formats.js","sourceRoot":"","sources":["../../../src/shadertypes/textures/texture-formats.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;;AAuRpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoDE"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { TypedArray } from "../../types.js";
|
|
2
|
-
import type { PrimitiveDataType, SignedDataType } from "../data-types/data-types.js";
|
|
3
|
-
import type { VertexFormat, VertexFormatInfo } from "./vertex-formats.js";
|
|
4
|
-
/**
|
|
5
|
-
* Decodes a vertex format, returning type, components, byte length and flags (integer, signed, normalized)
|
|
6
|
-
*/
|
|
7
|
-
export declare function getVertexFormatInfo(format: VertexFormat): VertexFormatInfo;
|
|
8
|
-
/** Build a vertex format from a signed data type and a component */
|
|
9
|
-
export declare function makeVertexFormat(signedDataType: SignedDataType, components: 1 | 2 | 3 | 4, normalized?: boolean): VertexFormat;
|
|
10
|
-
/** Get the vertex format for an attribute with TypedArray and size */
|
|
11
|
-
export declare function getVertexFormatFromAttribute(typedArray: TypedArray, size: number, normalized?: boolean): VertexFormat;
|
|
12
|
-
/** Return a "default" vertex format for a certain shader data type
|
|
13
|
-
The simplest vertex format that matches the shader attribute's data type */
|
|
14
|
-
export declare function getCompatibleVertexFormat(opts: {
|
|
15
|
-
primitiveType: PrimitiveDataType;
|
|
16
|
-
components: 1 | 2 | 3 | 4;
|
|
17
|
-
}): VertexFormat;
|
|
18
|
-
//# sourceMappingURL=decode-vertex-format.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decode-vertex-format.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/vertex-arrays/decode-vertex-format.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,uBAAoB;AAC5C,OAAO,KAAK,EAAqB,iBAAiB,EAAE,cAAc,EAAC,oCAAiC;AACpG,OAAO,KAAK,EAAC,YAAY,EAAE,gBAAgB,EAAC,4BAAyB;AAGrE;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,GAAG,gBAAgB,CAyB1E;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EACzB,UAAU,CAAC,EAAE,OAAO,GACnB,YAAY,CAmCd;AAED,sEAAsE;AACtE,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,OAAO,GACnB,YAAY,CAQd;AAED;4EAC4E;AAE5E,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,aAAa,EAAE,iBAAiB,CAAC;IACjC,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CAC3B,GAAG,YAAY,CAqBf"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
// luma.gl
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
// Copyright (c) vis.gl contributors
|
|
4
|
-
import { getDataTypeInfo, getDataType, getNormalizedDataType } from "../data-types/decode-data-types.js";
|
|
5
|
-
/**
|
|
6
|
-
* Decodes a vertex format, returning type, components, byte length and flags (integer, signed, normalized)
|
|
7
|
-
*/
|
|
8
|
-
export function getVertexFormatInfo(format) {
|
|
9
|
-
// Strip the -webgl ending if present
|
|
10
|
-
let webglOnly;
|
|
11
|
-
if (format.endsWith('-webgl')) {
|
|
12
|
-
format.replace('-webgl', '');
|
|
13
|
-
webglOnly = true;
|
|
14
|
-
}
|
|
15
|
-
// split components from type
|
|
16
|
-
const [type_, count] = format.split('x');
|
|
17
|
-
const type = type_;
|
|
18
|
-
const components = (count ? parseInt(count) : 1);
|
|
19
|
-
// decode the type
|
|
20
|
-
const decodedType = getDataTypeInfo(type);
|
|
21
|
-
const result = {
|
|
22
|
-
type,
|
|
23
|
-
components,
|
|
24
|
-
byteLength: decodedType.byteLength * components,
|
|
25
|
-
integer: decodedType.integer,
|
|
26
|
-
signed: decodedType.signed,
|
|
27
|
-
normalized: decodedType.normalized
|
|
28
|
-
};
|
|
29
|
-
if (webglOnly) {
|
|
30
|
-
result.webglOnly = true;
|
|
31
|
-
}
|
|
32
|
-
return result;
|
|
33
|
-
}
|
|
34
|
-
/** Build a vertex format from a signed data type and a component */
|
|
35
|
-
export function makeVertexFormat(signedDataType, components, normalized) {
|
|
36
|
-
const dataType = normalized
|
|
37
|
-
? getNormalizedDataType(signedDataType)
|
|
38
|
-
: signedDataType;
|
|
39
|
-
switch (dataType) {
|
|
40
|
-
// TODO - Special cases for WebGL (not supported on WebGPU), overrides the check below
|
|
41
|
-
case 'unorm8':
|
|
42
|
-
if (components === 1) {
|
|
43
|
-
return 'unorm8';
|
|
44
|
-
}
|
|
45
|
-
if (components === 3) {
|
|
46
|
-
return 'unorm8x3-webgl';
|
|
47
|
-
}
|
|
48
|
-
return `${dataType}x${components}`;
|
|
49
|
-
case 'snorm8':
|
|
50
|
-
case 'uint8':
|
|
51
|
-
case 'sint8':
|
|
52
|
-
// WebGPU 8 bit formats must be aligned to 16 bit boundaries');
|
|
53
|
-
// fall through
|
|
54
|
-
case 'uint16':
|
|
55
|
-
case 'sint16':
|
|
56
|
-
case 'unorm16':
|
|
57
|
-
case 'snorm16':
|
|
58
|
-
case 'float16':
|
|
59
|
-
// WebGPU 16 bit formats must be aligned to 32 bit boundaries
|
|
60
|
-
if (components === 1 || components === 3) {
|
|
61
|
-
throw new Error(`size: ${components}`);
|
|
62
|
-
}
|
|
63
|
-
return `${dataType}x${components}`;
|
|
64
|
-
default:
|
|
65
|
-
return components === 1 ? dataType : `${dataType}x${components}`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
/** Get the vertex format for an attribute with TypedArray and size */
|
|
69
|
-
export function getVertexFormatFromAttribute(typedArray, size, normalized) {
|
|
70
|
-
if (!size || size > 4) {
|
|
71
|
-
throw new Error(`size ${size}`);
|
|
72
|
-
}
|
|
73
|
-
const components = size;
|
|
74
|
-
const signedDataType = getDataType(typedArray);
|
|
75
|
-
return makeVertexFormat(signedDataType, components, normalized);
|
|
76
|
-
}
|
|
77
|
-
/** Return a "default" vertex format for a certain shader data type
|
|
78
|
-
The simplest vertex format that matches the shader attribute's data type */
|
|
79
|
-
export function getCompatibleVertexFormat(opts) {
|
|
80
|
-
let vertexType;
|
|
81
|
-
switch (opts.primitiveType) {
|
|
82
|
-
case 'f32':
|
|
83
|
-
vertexType = 'float32';
|
|
84
|
-
break;
|
|
85
|
-
case 'i32':
|
|
86
|
-
vertexType = 'sint32';
|
|
87
|
-
break;
|
|
88
|
-
case 'u32':
|
|
89
|
-
vertexType = 'uint32';
|
|
90
|
-
break;
|
|
91
|
-
case 'f16':
|
|
92
|
-
return opts.components <= 2 ? 'float16x2' : 'float16x4';
|
|
93
|
-
}
|
|
94
|
-
// TODO logic does not work for float16
|
|
95
|
-
if (opts.components === 1) {
|
|
96
|
-
return vertexType;
|
|
97
|
-
}
|
|
98
|
-
return `${vertexType}x${opts.components}`;
|
|
99
|
-
}
|
|
100
|
-
//# sourceMappingURL=decode-vertex-format.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decode-vertex-format.js","sourceRoot":"","sources":["../../../src/shadertypes/vertex-arrays/decode-vertex-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { NormalizedDataType } from "../data-types/data-types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Describes the **memory format** and interpretation (normalization) of a buffer that will be supplied to vertex attributes
|
|
4
|
-
* @note Must be compatible with the AttributeShaderType of the shaders, see documentation.
|
|
5
|
-
* @note This is a superset of WebGPU vertex formats to allow for some flexibility for WebGL only applications
|
|
6
|
-
* @todo Add device.isTextureFormatSupported() method?
|
|
7
|
-
*/
|
|
8
|
-
export type VertexFormat = 'uint8' | 'uint8x2' | 'uint8x4' | 'sint8' | 'sint8x2' | 'sint8x4' | 'unorm8' | 'unorm8x2' | 'unorm8x3-webgl' | 'unorm8x4' | 'unorm8x4-bgra' | 'unorm10-10-10-2' | 'snorm8' | 'snorm8x2' | 'snorm8x3-webgl' | 'snorm8x4' | 'uint16' | 'sint16' | 'unorm16' | 'snorm16' | 'uint16x2' | 'uint16x4' | 'sint16x2' | 'sint16x4' | 'unorm16x2' | 'unorm16x4' | 'snorm16x2' | 'snorm16x4' | 'uint32' | 'uint32x2' | 'uint32x3' | 'uint32x4' | 'sint32' | 'sint32x2' | 'sint32x3' | 'sint32x4' | 'float16' | 'float16x2' | 'float16x4' | 'float32' | 'float32x2' | 'float32x3' | 'float32x4';
|
|
9
|
-
export type VertexFormatInfo = {
|
|
10
|
-
/** Type of each component */
|
|
11
|
-
type: NormalizedDataType;
|
|
12
|
-
/** Length in bytes */
|
|
13
|
-
byteLength: number;
|
|
14
|
-
/** Number of components per vertex / row */
|
|
15
|
-
components: 1 | 2 | 3 | 4;
|
|
16
|
-
/** Is this an integer format (normalized integer formats are not integer) */
|
|
17
|
-
integer: boolean;
|
|
18
|
-
/** Is this a signed format? */
|
|
19
|
-
signed: boolean;
|
|
20
|
-
/** Is this a normalized format? */
|
|
21
|
-
normalized: boolean;
|
|
22
|
-
/** Is this a bgra format? */
|
|
23
|
-
bgra?: boolean;
|
|
24
|
-
/** Is this a webgl only format? */
|
|
25
|
-
webglOnly?: boolean;
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=vertex-formats.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vertex-formats.d.ts","sourceRoot":"","sources":["../../../src/shadertypes/vertex-arrays/vertex-formats.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,kBAAkB,EAAC,oCAAiC;AAI5D;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAEpB,OAAO,GACP,SAAS,GACT,SAAS,GACT,OAAO,GACP,SAAS,GACT,SAAS,GACT,QAAQ,GACR,UAAU,GACV,gBAAgB,GAChB,UAAU,GACV,eAAe,GACf,iBAAiB,GAEjB,QAAQ,GACR,UAAU,GACV,gBAAgB,GAChB,UAAU,GAEV,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GAEX,QAAQ,GACR,UAAU,GACV,UAAU,GACV,UAAU,GACV,QAAQ,GACR,UAAU,GACV,UAAU,GACV,UAAU,GAWV,SAAS,GACT,WAAW,GACX,WAAW,GACX,SAAS,GACT,WAAW,GACX,WAAW,GACX,WAAW,CAAC;AAEhB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,6BAA6B;IAC7B,IAAI,EAAE,kBAAkB,CAAC;IACzB,sBAAsB;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,6EAA6E;IAC7E,OAAO,EAAE,OAAO,CAAC;IACjB,+BAA+B;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,mCAAmC;IACnC,UAAU,EAAE,OAAO,CAAC;IACpB,6BAA6B;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,mCAAmC;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vertex-formats.js","sourceRoot":"","sources":["../../../src/shadertypes/vertex-arrays/vertex-formats.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC"}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
// luma.gl
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
// Copyright (c) vis.gl contributors
|
|
4
|
-
|
|
5
|
-
import type {PrimitiveDataType} from '../shadertypes/data-types/data-types';
|
|
6
|
-
import type {VariableShaderType} from '../shadertypes/data-types/shader-types';
|
|
7
|
-
import {alignTo} from '../shadertypes/data-types/decode-data-types';
|
|
8
|
-
import {getVariableShaderTypeInfo} from '../shadertypes/data-types/decode-shader-types';
|
|
9
|
-
|
|
10
|
-
import type {UniformValue} from '../adapter/types/uniforms';
|
|
11
|
-
import {getScratchArrayBuffer} from '../utils/array-utils-flat';
|
|
12
|
-
import {isNumberArray} from '../utils/is-array';
|
|
13
|
-
import {log} from '../utils/log';
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Smallest buffer size that can be used for uniform buffers.
|
|
17
|
-
* TODO - does this depend on device?
|
|
18
|
-
*/
|
|
19
|
-
const minBufferSize: number = 1024;
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Std140 layout for uniform buffers
|
|
23
|
-
* Supports manual listing of uniforms
|
|
24
|
-
*/
|
|
25
|
-
export class UniformBufferLayout {
|
|
26
|
-
readonly layout: Record<string, {offset: number; size: number; type: PrimitiveDataType}> = {};
|
|
27
|
-
|
|
28
|
-
/** number of bytes needed for buffer allocation */
|
|
29
|
-
readonly byteLength: number;
|
|
30
|
-
|
|
31
|
-
/** Create a new UniformBufferLayout given a map of attributes. */
|
|
32
|
-
constructor(
|
|
33
|
-
uniformTypes: Record<string, VariableShaderType>,
|
|
34
|
-
uniformSizes: Record<string, number> = {}
|
|
35
|
-
) {
|
|
36
|
-
/** number of 4 byte slots taken */
|
|
37
|
-
let size: number = 0;
|
|
38
|
-
|
|
39
|
-
// Add layout (type, size and offset) definitions for each uniform in the layout
|
|
40
|
-
for (const [key, uniformType] of Object.entries(uniformTypes)) {
|
|
41
|
-
const typeAndComponents = getVariableShaderTypeInfo(uniformType);
|
|
42
|
-
const {type, components} = typeAndComponents;
|
|
43
|
-
// Calculate total count for uniform arrays.
|
|
44
|
-
const count = components * (uniformSizes?.[key] ?? 1);
|
|
45
|
-
// First, align (bump) current offset to an even multiple of current object (1, 2, 4)
|
|
46
|
-
size = alignTo(size, count);
|
|
47
|
-
// Use the aligned size as the offset of the current uniform.
|
|
48
|
-
const offset = size;
|
|
49
|
-
// Then, add our object's padded size ((1, 2, multiple of 4) to the current offset
|
|
50
|
-
size += count;
|
|
51
|
-
this.layout[key] = {type, size: count, offset};
|
|
52
|
-
}
|
|
53
|
-
size += (4 - (size % 4)) % 4;
|
|
54
|
-
|
|
55
|
-
const actualByteLength = size * 4;
|
|
56
|
-
this.byteLength = Math.max(actualByteLength, minBufferSize);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/** Get the data for the complete buffer */
|
|
60
|
-
getData(uniformValues: Record<string, UniformValue>): Uint8Array {
|
|
61
|
-
// Allocate three typed arrays pointing at same memory
|
|
62
|
-
const arrayBuffer = getScratchArrayBuffer(this.byteLength);
|
|
63
|
-
const typedArrays = {
|
|
64
|
-
i32: new Int32Array(arrayBuffer),
|
|
65
|
-
u32: new Uint32Array(arrayBuffer),
|
|
66
|
-
f32: new Float32Array(arrayBuffer),
|
|
67
|
-
// TODO not implemented
|
|
68
|
-
f16: new Uint16Array(arrayBuffer)
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
for (const [name, value] of Object.entries(uniformValues)) {
|
|
72
|
-
const uniformLayout = this.layout[name];
|
|
73
|
-
if (!uniformLayout) {
|
|
74
|
-
log.warn(`Supplied uniform value ${name} not present in uniform block layout`)();
|
|
75
|
-
// eslint-disable-next-line no-continue
|
|
76
|
-
continue;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
const {type, size, offset} = uniformLayout;
|
|
80
|
-
const typedArray = typedArrays[type];
|
|
81
|
-
if (size === 1) {
|
|
82
|
-
if (typeof value !== 'number' && typeof value !== 'boolean') {
|
|
83
|
-
log.warn(
|
|
84
|
-
`Supplied value for single component uniform ${name} is not a number: ${value}`
|
|
85
|
-
)();
|
|
86
|
-
// eslint-disable-next-line no-continue
|
|
87
|
-
continue;
|
|
88
|
-
}
|
|
89
|
-
// single value -> just set it
|
|
90
|
-
typedArray[offset] = Number(value);
|
|
91
|
-
} else {
|
|
92
|
-
if (!isNumberArray(value)) {
|
|
93
|
-
log.warn(
|
|
94
|
-
`Supplied value for multi component / array uniform ${name} is not a numeric array: ${value}`
|
|
95
|
-
)();
|
|
96
|
-
// eslint-disable-next-line no-continue
|
|
97
|
-
continue;
|
|
98
|
-
}
|
|
99
|
-
// vector/matrix -> copy the supplied (typed) array, starting from offset
|
|
100
|
-
// TODO: we should limit or check size in case the supplied data overflows
|
|
101
|
-
typedArray.set(value, offset);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
return new Uint8Array(arrayBuffer, 0, this.byteLength);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/** Does this layout have a field with specified name */
|
|
109
|
-
has(name: string) {
|
|
110
|
-
return Boolean(this.layout[name]);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
/** Get offset and size for a field with specified name */
|
|
114
|
-
get(name: string): {offset: number; size: number} | undefined {
|
|
115
|
-
const layout = this.layout[name];
|
|
116
|
-
return layout;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
// luma.gl
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
// Copyright (c) vis.gl contributors
|
|
4
|
-
|
|
5
|
-
import type {PrimitiveDataType} from './data-types';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Describes the type of an attribute as defined in the shader source code.
|
|
9
|
-
* @note This is a subset of shader variable types
|
|
10
|
-
* @note Buffers with various `VertexFormat`s can be supplied for each type, GPU will convert them at runtime/
|
|
11
|
-
*/
|
|
12
|
-
export type AttributeShaderType =
|
|
13
|
-
| PrimitiveDataType
|
|
14
|
-
| `vec2<${PrimitiveDataType}>`
|
|
15
|
-
| `vec3<${PrimitiveDataType}>`
|
|
16
|
-
| `vec4<${PrimitiveDataType}>`;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Describes the type of a variable that can declared in shader source code.
|
|
20
|
-
* @note Uniforms can be declared using these types
|
|
21
|
-
* @note Uniforms can be of a wider range of types than attributes.
|
|
22
|
-
* @note to WebGL users: "bindings" (textures, samplers, and uniform buffers) are considered "bindings", not shader variables/uniforms
|
|
23
|
-
*/
|
|
24
|
-
export type VariableShaderType =
|
|
25
|
-
| PrimitiveDataType
|
|
26
|
-
| `vec2<${PrimitiveDataType}>`
|
|
27
|
-
| `vec3<${PrimitiveDataType}>`
|
|
28
|
-
| `vec4<${PrimitiveDataType}>`
|
|
29
|
-
| `mat2x2<${PrimitiveDataType}>`
|
|
30
|
-
| `mat2x3<${PrimitiveDataType}>`
|
|
31
|
-
| `mat2x4<${PrimitiveDataType}>`
|
|
32
|
-
| `mat3x2<${PrimitiveDataType}>`
|
|
33
|
-
| `mat3x3<${PrimitiveDataType}>`
|
|
34
|
-
| `mat3x4<${PrimitiveDataType}>`
|
|
35
|
-
| `mat4x2<${PrimitiveDataType}>`
|
|
36
|
-
| `mat4x3<${PrimitiveDataType}>`
|
|
37
|
-
| `mat4x4<${PrimitiveDataType}>`;
|
|
38
|
-
|
|
39
|
-
/* Suffixes used by WGSL alias types */
|
|
40
|
-
type ShaderTypeAliasSuffix = 'f' | 'i' | 'u' | 'h';
|
|
41
|
-
|
|
42
|
-
/** Shorthand type aliases recognized by WGSL */
|
|
43
|
-
export type AttributeShaderTypeAlias =
|
|
44
|
-
| `vec2${ShaderTypeAliasSuffix}`
|
|
45
|
-
| `vec3${ShaderTypeAliasSuffix}`
|
|
46
|
-
| `vec4${ShaderTypeAliasSuffix}`;
|
|
47
|
-
|
|
48
|
-
/** Shorthand type aliases recognized by WGSL */
|
|
49
|
-
export type VariableShaderTypeAlias =
|
|
50
|
-
| AttributeShaderTypeAlias
|
|
51
|
-
| `mat2x2${ShaderTypeAliasSuffix}`
|
|
52
|
-
| `mat2x3${ShaderTypeAliasSuffix}`
|
|
53
|
-
| `mat2x4${ShaderTypeAliasSuffix}`
|
|
54
|
-
| `mat3x2${ShaderTypeAliasSuffix}`
|
|
55
|
-
| `mat3x3${ShaderTypeAliasSuffix}`
|
|
56
|
-
| `mat3x4${ShaderTypeAliasSuffix}`
|
|
57
|
-
| `mat4x2${ShaderTypeAliasSuffix}`
|
|
58
|
-
| `mat4x3${ShaderTypeAliasSuffix}`
|
|
59
|
-
| `mat4x4${ShaderTypeAliasSuffix}`;
|
|
60
|
-
|
|
61
|
-
/** A composite shader type can include structs and arrays, recursively */
|
|
62
|
-
export type CompositeShaderType = VariableShaderType | StructShaderType | ArrayShaderType;
|
|
63
|
-
|
|
64
|
-
/** Represents a struct in WGSL */
|
|
65
|
-
export type StructShaderType = {
|
|
66
|
-
members: Record<string, CompositeShaderType>;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
/** Represents an array in WGSL */
|
|
70
|
-
export type ArrayShaderType = {
|
|
71
|
-
type: CompositeShaderType;
|
|
72
|
-
length: number;
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
/** Information extracted from a AttributeShaderType constant */
|
|
76
|
-
export type AttributeShaderTypeInfo = {
|
|
77
|
-
/** WGSL-style primitive data type, f32, i32, u32 */
|
|
78
|
-
primitiveType: PrimitiveDataType;
|
|
79
|
-
/** Whether this is a normalized integer (that must be used as float) */
|
|
80
|
-
components: 1 | 2 | 3 | 4;
|
|
81
|
-
/** Length in bytes of the data for one vertex */
|
|
82
|
-
byteLength?: number;
|
|
83
|
-
/** Whether this is for integer or float vert */
|
|
84
|
-
integer: boolean;
|
|
85
|
-
/** Whether this data type is signed */
|
|
86
|
-
signed: boolean;
|
|
87
|
-
};
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
// luma.gl
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
// Copyright (c) vis.gl contributors
|
|
4
|
-
|
|
5
|
-
import type {TypedArray} from '../../types';
|
|
6
|
-
import type {NormalizedDataType, PrimitiveDataType, SignedDataType} from '../data-types/data-types';
|
|
7
|
-
import type {VertexFormat, VertexFormatInfo} from './vertex-formats';
|
|
8
|
-
import {getDataTypeInfo, getDataType, getNormalizedDataType} from '../data-types/decode-data-types';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Decodes a vertex format, returning type, components, byte length and flags (integer, signed, normalized)
|
|
12
|
-
*/
|
|
13
|
-
export function getVertexFormatInfo(format: VertexFormat): VertexFormatInfo {
|
|
14
|
-
// Strip the -webgl ending if present
|
|
15
|
-
let webglOnly: boolean | undefined;
|
|
16
|
-
if (format.endsWith('-webgl')) {
|
|
17
|
-
format.replace('-webgl', '');
|
|
18
|
-
webglOnly = true;
|
|
19
|
-
}
|
|
20
|
-
// split components from type
|
|
21
|
-
const [type_, count] = format.split('x');
|
|
22
|
-
const type = type_ as NormalizedDataType;
|
|
23
|
-
const components = (count ? parseInt(count) : 1) as 1 | 2 | 3 | 4;
|
|
24
|
-
// decode the type
|
|
25
|
-
const decodedType = getDataTypeInfo(type);
|
|
26
|
-
const result: VertexFormatInfo = {
|
|
27
|
-
type,
|
|
28
|
-
components,
|
|
29
|
-
byteLength: decodedType.byteLength * components,
|
|
30
|
-
integer: decodedType.integer,
|
|
31
|
-
signed: decodedType.signed,
|
|
32
|
-
normalized: decodedType.normalized
|
|
33
|
-
};
|
|
34
|
-
if (webglOnly) {
|
|
35
|
-
result.webglOnly = true;
|
|
36
|
-
}
|
|
37
|
-
return result;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/** Build a vertex format from a signed data type and a component */
|
|
41
|
-
export function makeVertexFormat(
|
|
42
|
-
signedDataType: SignedDataType,
|
|
43
|
-
components: 1 | 2 | 3 | 4,
|
|
44
|
-
normalized?: boolean
|
|
45
|
-
): VertexFormat {
|
|
46
|
-
const dataType: NormalizedDataType = normalized
|
|
47
|
-
? getNormalizedDataType(signedDataType)
|
|
48
|
-
: signedDataType;
|
|
49
|
-
|
|
50
|
-
switch (dataType) {
|
|
51
|
-
// TODO - Special cases for WebGL (not supported on WebGPU), overrides the check below
|
|
52
|
-
case 'unorm8':
|
|
53
|
-
if (components === 1) {
|
|
54
|
-
return 'unorm8';
|
|
55
|
-
}
|
|
56
|
-
if (components === 3) {
|
|
57
|
-
return 'unorm8x3-webgl';
|
|
58
|
-
}
|
|
59
|
-
return `${dataType}x${components}`;
|
|
60
|
-
|
|
61
|
-
case 'snorm8':
|
|
62
|
-
case 'uint8':
|
|
63
|
-
case 'sint8':
|
|
64
|
-
// WebGPU 8 bit formats must be aligned to 16 bit boundaries');
|
|
65
|
-
// fall through
|
|
66
|
-
case 'uint16':
|
|
67
|
-
case 'sint16':
|
|
68
|
-
case 'unorm16':
|
|
69
|
-
case 'snorm16':
|
|
70
|
-
case 'float16':
|
|
71
|
-
// WebGPU 16 bit formats must be aligned to 32 bit boundaries
|
|
72
|
-
if (components === 1 || components === 3) {
|
|
73
|
-
throw new Error(`size: ${components}`);
|
|
74
|
-
}
|
|
75
|
-
return `${dataType}x${components}`;
|
|
76
|
-
|
|
77
|
-
default:
|
|
78
|
-
return components === 1 ? dataType : `${dataType}x${components}`;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/** Get the vertex format for an attribute with TypedArray and size */
|
|
83
|
-
export function getVertexFormatFromAttribute(
|
|
84
|
-
typedArray: TypedArray,
|
|
85
|
-
size: number,
|
|
86
|
-
normalized?: boolean
|
|
87
|
-
): VertexFormat {
|
|
88
|
-
if (!size || size > 4) {
|
|
89
|
-
throw new Error(`size ${size}`);
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
const components = size as 1 | 2 | 3 | 4;
|
|
93
|
-
const signedDataType = getDataType(typedArray);
|
|
94
|
-
return makeVertexFormat(signedDataType, components, normalized);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
/** Return a "default" vertex format for a certain shader data type
|
|
98
|
-
The simplest vertex format that matches the shader attribute's data type */
|
|
99
|
-
|
|
100
|
-
export function getCompatibleVertexFormat(opts: {
|
|
101
|
-
primitiveType: PrimitiveDataType;
|
|
102
|
-
components: 1 | 2 | 3 | 4;
|
|
103
|
-
}): VertexFormat {
|
|
104
|
-
let vertexType: NormalizedDataType;
|
|
105
|
-
switch (opts.primitiveType) {
|
|
106
|
-
case 'f32':
|
|
107
|
-
vertexType = 'float32';
|
|
108
|
-
break;
|
|
109
|
-
case 'i32':
|
|
110
|
-
vertexType = 'sint32';
|
|
111
|
-
break;
|
|
112
|
-
case 'u32':
|
|
113
|
-
vertexType = 'uint32';
|
|
114
|
-
break;
|
|
115
|
-
case 'f16':
|
|
116
|
-
return opts.components <= 2 ? 'float16x2' : 'float16x4';
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
// TODO logic does not work for float16
|
|
120
|
-
if (opts.components === 1) {
|
|
121
|
-
return vertexType;
|
|
122
|
-
}
|
|
123
|
-
return `${vertexType}x${opts.components}`;
|
|
124
|
-
}
|