@luma.gl/core 9.2.0-alpha.1 → 9.2.0-alpha.5
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 +19 -5
- package/dist/adapter/canvas-context.d.ts.map +1 -1
- package/dist/adapter/canvas-context.js +53 -3
- package/dist/adapter/canvas-context.js.map +1 -1
- package/dist/adapter/device.d.ts +56 -11
- package/dist/adapter/device.d.ts.map +1 -1
- package/dist/adapter/device.js +78 -22
- package/dist/adapter/device.js.map +1 -1
- package/dist/adapter/luma.js +1 -1
- package/dist/adapter/resources/buffer.d.ts +13 -7
- package/dist/adapter/resources/buffer.d.ts.map +1 -1
- package/dist/adapter/resources/buffer.js +1 -5
- package/dist/adapter/resources/buffer.js.map +1 -1
- package/dist/adapter/resources/command-encoder.d.ts +0 -1
- package/dist/adapter/resources/command-encoder.d.ts.map +1 -1
- package/dist/adapter/resources/command-encoder.js.map +1 -1
- package/dist/adapter/resources/framebuffer.d.ts +3 -3
- package/dist/adapter/resources/framebuffer.d.ts.map +1 -1
- package/dist/adapter/resources/pipeline-layout.d.ts +13 -0
- package/dist/adapter/resources/pipeline-layout.d.ts.map +1 -0
- package/dist/adapter/resources/pipeline-layout.js +21 -0
- package/dist/adapter/resources/pipeline-layout.js.map +1 -0
- package/dist/adapter/resources/render-pipeline.d.ts +4 -4
- package/dist/adapter/resources/render-pipeline.d.ts.map +1 -1
- package/dist/adapter/resources/resource.d.ts +1 -0
- package/dist/adapter/resources/resource.d.ts.map +1 -1
- package/dist/adapter/resources/resource.js.map +1 -1
- 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 +1 -1
- package/dist/adapter/resources/texture.d.ts.map +1 -1
- package/dist/adapter/resources/vertex-array.js +1 -1
- package/dist/adapter/resources/vertex-array.js.map +1 -1
- package/dist/adapter/types/attachments.d.ts +3 -3
- 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 +2 -2
- package/dist/adapter/types/parameters.d.ts.map +1 -1
- package/dist/adapter/types/shader-layout.d.ts +5 -6
- package/dist/adapter/types/shader-layout.d.ts.map +1 -1
- package/dist/adapter-utils/get-attribute-from-layouts.d.ts +3 -3
- package/dist/adapter-utils/get-attribute-from-layouts.d.ts.map +1 -1
- package/dist/adapter-utils/get-attribute-from-layouts.js +2 -2
- package/dist/adapter-utils/get-attribute-from-layouts.js.map +1 -1
- package/dist/dist.dev.js +430 -274
- package/dist/dist.min.js +5 -4
- package/dist/index.cjs +426 -273
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +18 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -7
- package/dist/index.js.map +1 -1
- package/dist/portable/uniform-block.d.ts +1 -1
- package/dist/portable/uniform-block.d.ts.map +1 -1
- package/dist/portable/uniform-buffer-layout.d.ts +3 -3
- package/dist/portable/uniform-buffer-layout.d.ts.map +1 -1
- package/dist/portable/uniform-buffer-layout.js +8 -9
- package/dist/portable/uniform-buffer-layout.js.map +1 -1
- package/dist/portable/uniform-store.d.ts +2 -1
- package/dist/portable/uniform-store.d.ts.map +1 -1
- package/dist/portable/uniform-store.js +1 -1
- package/dist/portable/uniform-store.js.map +1 -1
- package/dist/shadertypes/{data-types.d.ts → data-types/data-types.d.ts} +4 -0
- package/dist/shadertypes/data-types/data-types.d.ts.map +1 -0
- package/dist/shadertypes/data-types/data-types.js.map +1 -0
- package/dist/shadertypes/{utils → data-types}/decode-data-types.d.ts +4 -4
- package/dist/shadertypes/data-types/decode-data-types.d.ts.map +1 -0
- package/dist/shadertypes/data-types/decode-data-types.js +74 -0
- package/dist/shadertypes/data-types/decode-data-types.js.map +1 -0
- package/dist/shadertypes/{utils → data-types}/decode-shader-types.d.ts +2 -2
- package/dist/shadertypes/data-types/decode-shader-types.d.ts.map +1 -0
- package/dist/shadertypes/data-types/decode-shader-types.js.map +1 -0
- package/dist/shadertypes/data-types/shader-types.d.ts.map +1 -0
- package/dist/shadertypes/data-types/shader-types.js.map +1 -0
- package/dist/shadertypes/textures/pixel-utils.d.ts +112 -0
- package/dist/shadertypes/textures/pixel-utils.d.ts.map +1 -0
- package/dist/shadertypes/textures/pixel-utils.js +193 -0
- package/dist/shadertypes/textures/pixel-utils.js.map +1 -0
- package/dist/shadertypes/textures/texture-format-decoder.d.ts +18 -0
- package/dist/shadertypes/textures/texture-format-decoder.d.ts.map +1 -0
- package/dist/shadertypes/{utils/decode-texture-format.js → textures/texture-format-decoder.js} +48 -35
- package/dist/shadertypes/textures/texture-format-decoder.js.map +1 -0
- package/dist/shadertypes/textures/texture-format-generics.d.ts +33 -0
- package/dist/shadertypes/textures/texture-format-generics.d.ts.map +1 -0
- package/dist/shadertypes/{texture-formats.js → textures/texture-format-generics.js} +1 -1
- package/dist/shadertypes/textures/texture-format-generics.js.map +1 -0
- package/dist/shadertypes/{utils → textures}/texture-format-table.d.ts +2 -1
- package/dist/shadertypes/textures/texture-format-table.d.ts.map +1 -0
- package/dist/shadertypes/{utils → textures}/texture-format-table.js +41 -42
- package/dist/shadertypes/textures/texture-format-table.js.map +1 -0
- package/dist/shadertypes/textures/texture-formats.d.ts +90 -0
- package/dist/shadertypes/textures/texture-formats.d.ts.map +1 -0
- package/dist/shadertypes/textures/texture-formats.js +58 -0
- package/dist/shadertypes/textures/texture-formats.js.map +1 -0
- package/dist/shadertypes/{utils → vertex-arrays}/decode-vertex-format.d.ts +2 -2
- package/dist/shadertypes/vertex-arrays/decode-vertex-format.d.ts.map +1 -0
- package/dist/shadertypes/{utils → vertex-arrays}/decode-vertex-format.js +4 -4
- package/dist/shadertypes/vertex-arrays/decode-vertex-format.js.map +1 -0
- package/dist/shadertypes/{vertex-formats.d.ts → vertex-arrays/vertex-formats.d.ts} +5 -3
- package/dist/shadertypes/vertex-arrays/vertex-formats.d.ts.map +1 -0
- package/dist/shadertypes/vertex-arrays/vertex-formats.js.map +1 -0
- package/package.json +2 -2
- package/src/adapter/canvas-context.ts +66 -8
- package/src/adapter/device.ts +132 -47
- package/src/adapter/resources/buffer.ts +30 -14
- package/src/adapter/resources/command-encoder.ts +0 -2
- package/src/adapter/resources/framebuffer.ts +5 -5
- package/src/adapter/resources/pipeline-layout.ts +30 -0
- package/src/adapter/resources/render-pipeline.ts +6 -6
- package/src/adapter/resources/resource.ts +1 -0
- package/src/adapter/resources/texture-view.ts +1 -1
- package/src/adapter/resources/texture.ts +1 -1
- package/src/adapter/resources/vertex-array.ts +1 -1
- package/src/adapter/types/attachments.ts +5 -5
- package/src/adapter/types/buffer-layout.ts +1 -1
- package/src/adapter/types/parameters.ts +2 -2
- package/src/adapter/types/shader-layout.ts +8 -5
- package/src/adapter-utils/get-attribute-from-layouts.ts +5 -5
- package/src/index.ts +60 -36
- package/src/portable/uniform-block.ts +1 -1
- package/src/portable/uniform-buffer-layout.ts +13 -12
- package/src/portable/uniform-store.ts +6 -2
- package/src/shadertypes/data-types/data-types.ts +96 -0
- package/src/shadertypes/data-types/decode-data-types.ts +91 -0
- package/src/shadertypes/{utils → data-types}/decode-shader-types.ts +2 -2
- package/src/shadertypes/textures/pixel-utils.ts +239 -0
- package/src/shadertypes/{utils/decode-texture-format.ts → textures/texture-format-decoder.ts} +63 -47
- package/src/shadertypes/textures/texture-format-generics.ts +190 -0
- package/src/shadertypes/{utils → textures}/texture-format-table.ts +62 -52
- package/src/shadertypes/{texture-formats.ts → textures/texture-formats.ts} +229 -147
- package/src/shadertypes/{utils → vertex-arrays}/decode-vertex-format.ts +6 -10
- package/src/shadertypes/{vertex-formats.ts → vertex-arrays/vertex-formats.ts} +20 -6
- package/dist/adapter-utils/buffer-layout-helper.d.ts +0 -11
- package/dist/adapter-utils/buffer-layout-helper.d.ts.map +0 -1
- package/dist/adapter-utils/buffer-layout-helper.js +0 -33
- package/dist/adapter-utils/buffer-layout-helper.js.map +0 -1
- package/dist/shadertypes/data-types.d.ts.map +0 -1
- package/dist/shadertypes/data-types.js.map +0 -1
- package/dist/shadertypes/shader-types.d.ts.map +0 -1
- package/dist/shadertypes/shader-types.js.map +0 -1
- package/dist/shadertypes/texture-formats.d.ts +0 -74
- package/dist/shadertypes/texture-formats.d.ts.map +0 -1
- package/dist/shadertypes/texture-formats.js.map +0 -1
- package/dist/shadertypes/utils/decode-data-types.d.ts.map +0 -1
- package/dist/shadertypes/utils/decode-data-types.js +0 -114
- package/dist/shadertypes/utils/decode-data-types.js.map +0 -1
- package/dist/shadertypes/utils/decode-shader-types.d.ts.map +0 -1
- package/dist/shadertypes/utils/decode-shader-types.js.map +0 -1
- package/dist/shadertypes/utils/decode-texture-format.d.ts +0 -15
- package/dist/shadertypes/utils/decode-texture-format.d.ts.map +0 -1
- package/dist/shadertypes/utils/decode-texture-format.js.map +0 -1
- package/dist/shadertypes/utils/decode-vertex-format.d.ts.map +0 -1
- package/dist/shadertypes/utils/decode-vertex-format.js.map +0 -1
- package/dist/shadertypes/utils/texture-format-table.d.ts.map +0 -1
- package/dist/shadertypes/utils/texture-format-table.js.map +0 -1
- package/dist/shadertypes/vertex-formats.d.ts.map +0 -1
- package/dist/shadertypes/vertex-formats.js.map +0 -1
- package/src/adapter-utils/buffer-layout-helper.ts +0 -41
- package/src/shadertypes/data-types.ts +0 -42
- package/src/shadertypes/utils/decode-data-types.ts +0 -131
- /package/dist/shadertypes/{data-types.js → data-types/data-types.js} +0 -0
- /package/dist/shadertypes/{utils → data-types}/decode-shader-types.js +0 -0
- /package/dist/shadertypes/{shader-types.d.ts → data-types/shader-types.d.ts} +0 -0
- /package/dist/shadertypes/{shader-types.js → data-types/shader-types.js} +0 -0
- /package/dist/shadertypes/{vertex-formats.js → vertex-arrays/vertex-formats.js} +0 -0
- /package/src/shadertypes/{shader-types.ts → data-types/shader-types.ts} +0 -0
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
// luma.gl
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
// Copyright (c) vis.gl contributors
|
|
4
|
-
|
|
5
|
-
import {TypedArray, TypedArrayConstructor} from '../../types';
|
|
6
|
-
import {PrimitiveDataType, SignedDataType, NormalizedDataType, DataTypeInfo} from '../data-types';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Gets info about a data type constant (signed or normalized)
|
|
10
|
-
* @returns underlying primitive / signed types, byte length, normalization, integer, signed flags
|
|
11
|
-
*/
|
|
12
|
-
export function getDataTypeInfo(type: NormalizedDataType): DataTypeInfo {
|
|
13
|
-
const [signedType, primitiveType, byteLength] = NORMALIZED_TYPE_MAP[type];
|
|
14
|
-
const normalized: boolean = type.includes('norm');
|
|
15
|
-
const integer: boolean = !normalized && !type.startsWith('float');
|
|
16
|
-
const signed: boolean = type.startsWith('s');
|
|
17
|
-
|
|
18
|
-
return {
|
|
19
|
-
signedType,
|
|
20
|
-
primitiveType,
|
|
21
|
-
byteLength,
|
|
22
|
-
normalized,
|
|
23
|
-
integer,
|
|
24
|
-
signed
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/** Build a vertex format from a signed data type and a component */
|
|
29
|
-
export function makeNormalizedDataType(signedDataType: SignedDataType): NormalizedDataType {
|
|
30
|
-
const dataType: NormalizedDataType = signedDataType;
|
|
31
|
-
|
|
32
|
-
switch (dataType) {
|
|
33
|
-
case 'uint8':
|
|
34
|
-
return 'unorm8';
|
|
35
|
-
case 'sint8':
|
|
36
|
-
return 'snorm8';
|
|
37
|
-
case 'uint16':
|
|
38
|
-
return 'unorm16';
|
|
39
|
-
case 'sint16':
|
|
40
|
-
return 'snorm16';
|
|
41
|
-
default:
|
|
42
|
-
return dataType;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/** Align offset to 1, 2 or 4 elements (4, 8 or 16 bytes) */
|
|
47
|
-
export function alignTo(size: number, count: number): number {
|
|
48
|
-
// prettier-ignore
|
|
49
|
-
switch (count) {
|
|
50
|
-
case 1: return size; // Pad upwards to even multiple of 2
|
|
51
|
-
case 2: return size + (size % 2); // Pad upwards to even multiple of 2
|
|
52
|
-
default: return size + ((4 - (size % 4)) % 4); // Pad upwards to even multiple of 4
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
/** Returns the VariableShaderType that corresponds to a typed array */
|
|
57
|
-
export function getDataTypeFromTypedArray(
|
|
58
|
-
arrayOrType: TypedArray | TypedArrayConstructor
|
|
59
|
-
): SignedDataType {
|
|
60
|
-
const type = ArrayBuffer.isView(arrayOrType) ? arrayOrType.constructor : arrayOrType;
|
|
61
|
-
switch (type) {
|
|
62
|
-
case Float32Array:
|
|
63
|
-
return 'float32';
|
|
64
|
-
case Uint16Array:
|
|
65
|
-
return 'uint16';
|
|
66
|
-
case Uint32Array:
|
|
67
|
-
return 'uint32';
|
|
68
|
-
case Uint8Array:
|
|
69
|
-
case Uint8ClampedArray:
|
|
70
|
-
return 'uint8';
|
|
71
|
-
case Int8Array:
|
|
72
|
-
return 'sint8';
|
|
73
|
-
case Int16Array:
|
|
74
|
-
return 'sint16';
|
|
75
|
-
case Int32Array:
|
|
76
|
-
return 'sint32';
|
|
77
|
-
default:
|
|
78
|
-
// Failed to deduce data type from typed array
|
|
79
|
-
throw new Error(type.constructor.name);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
/** Returns the TypedArray that corresponds to a shader data type */
|
|
84
|
-
export function getTypedArrayFromDataType(
|
|
85
|
-
type: NormalizedDataType | PrimitiveDataType
|
|
86
|
-
): TypedArrayConstructor {
|
|
87
|
-
switch (type) {
|
|
88
|
-
case 'f32':
|
|
89
|
-
case 'float32':
|
|
90
|
-
return Float32Array;
|
|
91
|
-
case 'u32':
|
|
92
|
-
case 'uint32':
|
|
93
|
-
return Uint32Array;
|
|
94
|
-
case 'i32':
|
|
95
|
-
case 'sint32':
|
|
96
|
-
return Int32Array;
|
|
97
|
-
case 'uint16':
|
|
98
|
-
case 'unorm16':
|
|
99
|
-
return Uint16Array;
|
|
100
|
-
case 'sint16':
|
|
101
|
-
case 'snorm16':
|
|
102
|
-
return Int16Array;
|
|
103
|
-
case 'uint8':
|
|
104
|
-
case 'unorm8':
|
|
105
|
-
return Uint8Array;
|
|
106
|
-
case 'sint8':
|
|
107
|
-
case 'snorm8':
|
|
108
|
-
return Int8Array;
|
|
109
|
-
case 'f16':
|
|
110
|
-
default:
|
|
111
|
-
throw new Error(type);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
const NORMALIZED_TYPE_MAP: Record<
|
|
116
|
-
NormalizedDataType,
|
|
117
|
-
[SignedDataType, PrimitiveDataType, bytes: 1 | 2 | 4, normalized: boolean]
|
|
118
|
-
> = {
|
|
119
|
-
uint8: ['uint8', 'u32', 1, false],
|
|
120
|
-
sint8: ['sint8', 'i32', 1, false],
|
|
121
|
-
unorm8: ['uint8', 'f32', 1, true],
|
|
122
|
-
snorm8: ['sint8', 'f32', 1, true],
|
|
123
|
-
uint16: ['uint16', 'u32', 2, false],
|
|
124
|
-
sint16: ['sint16', 'i32', 2, false],
|
|
125
|
-
unorm16: ['uint16', 'u32', 2, true],
|
|
126
|
-
snorm16: ['sint16', 'i32', 2, true],
|
|
127
|
-
float16: ['float16', 'f16', 2, false],
|
|
128
|
-
float32: ['float32', 'f32', 4, false],
|
|
129
|
-
uint32: ['uint32', 'u32', 4, false],
|
|
130
|
-
sint32: ['sint32', 'i32', 4, false]
|
|
131
|
-
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|