typegpu 0.8.1 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/chunk-5ABKYSJD.js +2 -0
- package/chunk-5ABKYSJD.js.map +1 -0
- package/chunk-D5UYO3OX.js +3 -0
- package/chunk-D5UYO3OX.js.map +1 -0
- package/chunk-EHLRP4V2.js +2 -0
- package/chunk-EHLRP4V2.js.map +1 -0
- package/chunk-LMPPDGRD.js +2 -0
- package/chunk-LMPPDGRD.js.map +1 -0
- package/chunk-MBB2XFH6.js +2 -0
- package/chunk-MBB2XFH6.js.map +1 -0
- package/chunk-SHSILTWI.js +10 -0
- package/chunk-SHSILTWI.js.map +1 -0
- package/common/index.d.ts +1 -1
- package/common/index.js +1 -1
- package/common/index.js.map +1 -1
- package/comptime-DKpw1IVu.d.ts +28 -0
- package/data/index.d.ts +124 -123
- package/data/index.js +1 -1
- package/data/index.js.map +1 -1
- package/index.d.ts +114 -25
- package/index.js +169 -164
- package/index.js.map +1 -1
- package/{matrix-DHFT4O8f.d.cts → matrix-C4IFKU1R.d.ts} +5 -4
- package/package.json +6 -14
- package/std/index.d.ts +25 -41
- package/std/index.js +1 -1
- package/std/index.js.map +1 -1
- package/{tgpuConstant-BU72w5qs.d.cts → tgpuConstant-BOn7U_lv.d.ts} +135 -1296
- package/chunk-2UXPGML5.js +0 -7
- package/chunk-2UXPGML5.js.map +0 -1
- package/chunk-3246CM7C.cjs +0 -2
- package/chunk-3246CM7C.cjs.map +0 -1
- package/chunk-4W5Z7BO4.js +0 -10
- package/chunk-4W5Z7BO4.js.map +0 -1
- package/chunk-5Y6GTBWR.cjs +0 -3
- package/chunk-5Y6GTBWR.cjs.map +0 -1
- package/chunk-7S3IK3D4.js +0 -2
- package/chunk-7S3IK3D4.js.map +0 -1
- package/chunk-7XFSK632.js +0 -3
- package/chunk-7XFSK632.js.map +0 -1
- package/chunk-PRMFGUQT.cjs +0 -2
- package/chunk-PRMFGUQT.cjs.map +0 -1
- package/chunk-TRE7NUKE.cjs +0 -10
- package/chunk-TRE7NUKE.cjs.map +0 -1
- package/chunk-VOVQAOVG.js +0 -2
- package/chunk-VOVQAOVG.js.map +0 -1
- package/chunk-ZYGTVBDH.cjs +0 -7
- package/chunk-ZYGTVBDH.cjs.map +0 -1
- package/common/index.cjs +0 -7
- package/common/index.cjs.map +0 -1
- package/common/index.d.cts +0 -24
- package/data/index.cjs +0 -2
- package/data/index.cjs.map +0 -1
- package/data/index.d.cts +0 -402
- package/index.cjs +0 -192
- package/index.cjs.map +0 -1
- package/index.d.cts +0 -369
- package/matrix-DLipCOZF.d.ts +0 -122
- package/std/index.cjs +0 -2
- package/std/index.cjs.map +0 -1
- package/std/index.d.cts +0 -639
- package/tgpuConstant-BU72w5qs.d.ts +0 -5192
|
@@ -8,7 +8,7 @@ interface MetaData {
|
|
|
8
8
|
body: Block;
|
|
9
9
|
externalNames: string[];
|
|
10
10
|
} | undefined;
|
|
11
|
-
externals?: Record<string, unknown> | undefined;
|
|
11
|
+
externals?: Record<string, unknown> | (() => Record<string, unknown>) | undefined;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* Don't use or you WILL get fired from your job.
|
|
@@ -43,1225 +43,24 @@ type ViewDimensionToDimension = {
|
|
|
43
43
|
cube: '2d';
|
|
44
44
|
'cube-array': '2d';
|
|
45
45
|
};
|
|
46
|
-
/**
|
|
47
|
-
* https://www.w3.org/TR/WGSL/#storage-texel-formats
|
|
48
|
-
*/
|
|
49
46
|
type StorageTextureFormats = 'rgba8unorm' | 'rgba8snorm' | 'rgba8uint' | 'rgba8sint' | 'rgba16unorm' | 'rgba16snorm' | 'rgba16uint' | 'rgba16sint' | 'rgba16float' | 'rg8unorm' | 'rg8snorm' | 'rg8uint' | 'rg8sint' | 'rg16unorm' | 'rg16snorm' | 'rg16uint' | 'rg16sint' | 'rg16float' | 'r32uint' | 'r32sint' | 'r32float' | 'rg32uint' | 'rg32sint' | 'rg32float' | 'rgba32uint' | 'rgba32sint' | 'rgba32float' | 'bgra8unorm' | 'r8unorm' | 'r8snorm' | 'r8uint' | 'r8sint' | 'r16unorm' | 'r16snorm' | 'r16uint' | 'r16sint' | 'r16float' | 'rgb10a2unorm' | 'rgb10a2uint' | 'rg11b10ufloat';
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
readonly vectorType: Vec4f;
|
|
66
|
-
readonly texelSize: 1;
|
|
67
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
68
|
-
readonly aspects: readonly ["color"];
|
|
69
|
-
readonly canRenderAttachment: false;
|
|
70
|
-
readonly canBlend: false;
|
|
71
|
-
readonly canMultisample: false;
|
|
72
|
-
readonly canResolve: false;
|
|
73
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
74
|
-
};
|
|
75
|
-
readonly r8uint: {
|
|
76
|
-
readonly channelType: U32;
|
|
77
|
-
readonly vectorType: Vec4u;
|
|
78
|
-
readonly texelSize: 1;
|
|
79
|
-
readonly sampleTypes: readonly ["uint"];
|
|
80
|
-
readonly aspects: readonly ["color"];
|
|
81
|
-
readonly canRenderAttachment: true;
|
|
82
|
-
readonly canBlend: false;
|
|
83
|
-
readonly canMultisample: true;
|
|
84
|
-
readonly canResolve: false;
|
|
85
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
86
|
-
};
|
|
87
|
-
readonly r8sint: {
|
|
88
|
-
readonly channelType: I32;
|
|
89
|
-
readonly vectorType: Vec4i;
|
|
90
|
-
readonly texelSize: 1;
|
|
91
|
-
readonly sampleTypes: readonly ["sint"];
|
|
92
|
-
readonly aspects: readonly ["color"];
|
|
93
|
-
readonly canRenderAttachment: true;
|
|
94
|
-
readonly canBlend: false;
|
|
95
|
-
readonly canMultisample: true;
|
|
96
|
-
readonly canResolve: false;
|
|
97
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
98
|
-
};
|
|
99
|
-
readonly rg8unorm: {
|
|
100
|
-
readonly channelType: F32;
|
|
101
|
-
readonly vectorType: Vec4f;
|
|
102
|
-
readonly texelSize: 2;
|
|
103
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
104
|
-
readonly aspects: readonly ["color"];
|
|
105
|
-
readonly canRenderAttachment: true;
|
|
106
|
-
readonly canBlend: true;
|
|
107
|
-
readonly canMultisample: true;
|
|
108
|
-
readonly canResolve: true;
|
|
109
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
110
|
-
};
|
|
111
|
-
readonly rg8snorm: {
|
|
112
|
-
readonly channelType: F32;
|
|
113
|
-
readonly vectorType: Vec4f;
|
|
114
|
-
readonly texelSize: 2;
|
|
115
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
116
|
-
readonly aspects: readonly ["color"];
|
|
117
|
-
readonly canRenderAttachment: false;
|
|
118
|
-
readonly canBlend: false;
|
|
119
|
-
readonly canMultisample: false;
|
|
120
|
-
readonly canResolve: false;
|
|
121
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
122
|
-
};
|
|
123
|
-
readonly rg8uint: {
|
|
124
|
-
readonly channelType: U32;
|
|
125
|
-
readonly vectorType: Vec4u;
|
|
126
|
-
readonly texelSize: 2;
|
|
127
|
-
readonly sampleTypes: readonly ["uint"];
|
|
128
|
-
readonly aspects: readonly ["color"];
|
|
129
|
-
readonly canRenderAttachment: true;
|
|
130
|
-
readonly canBlend: false;
|
|
131
|
-
readonly canMultisample: true;
|
|
132
|
-
readonly canResolve: false;
|
|
133
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
134
|
-
};
|
|
135
|
-
readonly rg8sint: {
|
|
136
|
-
readonly channelType: I32;
|
|
137
|
-
readonly vectorType: Vec4i;
|
|
138
|
-
readonly texelSize: 2;
|
|
139
|
-
readonly sampleTypes: readonly ["sint"];
|
|
140
|
-
readonly aspects: readonly ["color"];
|
|
141
|
-
readonly canRenderAttachment: true;
|
|
142
|
-
readonly canBlend: false;
|
|
143
|
-
readonly canMultisample: true;
|
|
144
|
-
readonly canResolve: false;
|
|
145
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
146
|
-
};
|
|
147
|
-
readonly rgba8unorm: {
|
|
148
|
-
readonly channelType: F32;
|
|
149
|
-
readonly vectorType: Vec4f;
|
|
150
|
-
readonly texelSize: 4;
|
|
151
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
152
|
-
readonly aspects: readonly ["color"];
|
|
153
|
-
readonly canRenderAttachment: true;
|
|
154
|
-
readonly canBlend: true;
|
|
155
|
-
readonly canMultisample: true;
|
|
156
|
-
readonly canResolve: true;
|
|
157
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
158
|
-
};
|
|
159
|
-
readonly 'rgba8unorm-srgb': {
|
|
160
|
-
readonly channelType: F32;
|
|
161
|
-
readonly vectorType: Vec4f;
|
|
162
|
-
readonly texelSize: 4;
|
|
163
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
164
|
-
readonly aspects: readonly ["color"];
|
|
165
|
-
readonly canRenderAttachment: true;
|
|
166
|
-
readonly canBlend: true;
|
|
167
|
-
readonly canMultisample: true;
|
|
168
|
-
readonly canResolve: true;
|
|
169
|
-
readonly storageBindings: null;
|
|
170
|
-
};
|
|
171
|
-
readonly rgba8snorm: {
|
|
172
|
-
readonly channelType: F32;
|
|
173
|
-
readonly vectorType: Vec4f;
|
|
174
|
-
readonly texelSize: 4;
|
|
175
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
176
|
-
readonly aspects: readonly ["color"];
|
|
177
|
-
readonly canRenderAttachment: true;
|
|
178
|
-
readonly canBlend: false;
|
|
179
|
-
readonly canMultisample: true;
|
|
180
|
-
readonly canResolve: false;
|
|
181
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
182
|
-
};
|
|
183
|
-
readonly rgba8uint: {
|
|
184
|
-
readonly channelType: U32;
|
|
185
|
-
readonly vectorType: Vec4u;
|
|
186
|
-
readonly texelSize: 4;
|
|
187
|
-
readonly sampleTypes: readonly ["uint"];
|
|
188
|
-
readonly aspects: readonly ["color"];
|
|
189
|
-
readonly canRenderAttachment: true;
|
|
190
|
-
readonly canBlend: false;
|
|
191
|
-
readonly canMultisample: true;
|
|
192
|
-
readonly canResolve: false;
|
|
193
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
194
|
-
};
|
|
195
|
-
readonly rgba8sint: {
|
|
196
|
-
readonly channelType: I32;
|
|
197
|
-
readonly vectorType: Vec4i;
|
|
198
|
-
readonly texelSize: 4;
|
|
199
|
-
readonly sampleTypes: readonly ["sint"];
|
|
200
|
-
readonly aspects: readonly ["color"];
|
|
201
|
-
readonly canRenderAttachment: true;
|
|
202
|
-
readonly canBlend: false;
|
|
203
|
-
readonly canMultisample: true;
|
|
204
|
-
readonly canResolve: false;
|
|
205
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
206
|
-
};
|
|
207
|
-
readonly bgra8unorm: {
|
|
208
|
-
readonly channelType: F32;
|
|
209
|
-
readonly vectorType: Vec4f;
|
|
210
|
-
readonly texelSize: 4;
|
|
211
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
212
|
-
readonly aspects: readonly ["color"];
|
|
213
|
-
readonly canRenderAttachment: true;
|
|
214
|
-
readonly canBlend: true;
|
|
215
|
-
readonly canMultisample: true;
|
|
216
|
-
readonly canResolve: true;
|
|
217
|
-
readonly storageBindings: readonly ["write-only"];
|
|
218
|
-
};
|
|
219
|
-
readonly 'bgra8unorm-srgb': {
|
|
220
|
-
readonly channelType: F32;
|
|
221
|
-
readonly vectorType: Vec4f;
|
|
222
|
-
readonly texelSize: 4;
|
|
223
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
224
|
-
readonly aspects: readonly ["color"];
|
|
225
|
-
readonly canRenderAttachment: true;
|
|
226
|
-
readonly canBlend: true;
|
|
227
|
-
readonly canMultisample: true;
|
|
228
|
-
readonly canResolve: true;
|
|
229
|
-
readonly storageBindings: null;
|
|
230
|
-
};
|
|
231
|
-
readonly r16unorm: {
|
|
232
|
-
readonly channelType: F32;
|
|
233
|
-
readonly vectorType: Vec4f;
|
|
234
|
-
readonly texelSize: 2;
|
|
235
|
-
readonly sampleTypes: readonly ["unfilterable-float"];
|
|
236
|
-
readonly aspects: readonly ["color"];
|
|
237
|
-
readonly canRenderAttachment: true;
|
|
238
|
-
readonly canBlend: true;
|
|
239
|
-
readonly canMultisample: true;
|
|
240
|
-
readonly canResolve: false;
|
|
241
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
242
|
-
};
|
|
243
|
-
readonly r16snorm: {
|
|
244
|
-
readonly channelType: F32;
|
|
245
|
-
readonly vectorType: Vec4f;
|
|
246
|
-
readonly texelSize: 2;
|
|
247
|
-
readonly sampleTypes: readonly ["unfilterable-float"];
|
|
248
|
-
readonly aspects: readonly ["color"];
|
|
249
|
-
readonly canRenderAttachment: true;
|
|
250
|
-
readonly canBlend: true;
|
|
251
|
-
readonly canMultisample: true;
|
|
252
|
-
readonly canResolve: false;
|
|
253
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
254
|
-
};
|
|
255
|
-
readonly r16uint: {
|
|
256
|
-
readonly channelType: U32;
|
|
257
|
-
readonly vectorType: Vec4u;
|
|
258
|
-
readonly texelSize: 2;
|
|
259
|
-
readonly sampleTypes: readonly ["uint"];
|
|
260
|
-
readonly aspects: readonly ["color"];
|
|
261
|
-
readonly canRenderAttachment: true;
|
|
262
|
-
readonly canBlend: false;
|
|
263
|
-
readonly canMultisample: true;
|
|
264
|
-
readonly canResolve: false;
|
|
265
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
266
|
-
};
|
|
267
|
-
readonly r16sint: {
|
|
268
|
-
readonly channelType: I32;
|
|
269
|
-
readonly vectorType: Vec4i;
|
|
270
|
-
readonly texelSize: 2;
|
|
271
|
-
readonly sampleTypes: readonly ["sint"];
|
|
272
|
-
readonly aspects: readonly ["color"];
|
|
273
|
-
readonly canRenderAttachment: true;
|
|
274
|
-
readonly canBlend: false;
|
|
275
|
-
readonly canMultisample: true;
|
|
276
|
-
readonly canResolve: false;
|
|
277
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
278
|
-
};
|
|
279
|
-
readonly r16float: {
|
|
280
|
-
readonly channelType: F32;
|
|
281
|
-
readonly vectorType: Vec4f;
|
|
282
|
-
readonly texelSize: 2;
|
|
283
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
284
|
-
readonly aspects: readonly ["color"];
|
|
285
|
-
readonly canRenderAttachment: true;
|
|
286
|
-
readonly canBlend: true;
|
|
287
|
-
readonly canMultisample: true;
|
|
288
|
-
readonly canResolve: true;
|
|
289
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
290
|
-
};
|
|
291
|
-
readonly rg16unorm: {
|
|
292
|
-
readonly channelType: F32;
|
|
293
|
-
readonly vectorType: Vec4f;
|
|
294
|
-
readonly texelSize: 4;
|
|
295
|
-
readonly sampleTypes: readonly ["unfilterable-float"];
|
|
296
|
-
readonly aspects: readonly ["color"];
|
|
297
|
-
readonly canRenderAttachment: true;
|
|
298
|
-
readonly canBlend: true;
|
|
299
|
-
readonly canMultisample: true;
|
|
300
|
-
readonly canResolve: false;
|
|
301
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
302
|
-
};
|
|
303
|
-
readonly rg16snorm: {
|
|
304
|
-
readonly channelType: F32;
|
|
305
|
-
readonly vectorType: Vec4f;
|
|
306
|
-
readonly texelSize: 4;
|
|
307
|
-
readonly sampleTypes: readonly ["unfilterable-float"];
|
|
308
|
-
readonly aspects: readonly ["color"];
|
|
309
|
-
readonly canRenderAttachment: true;
|
|
310
|
-
readonly canBlend: true;
|
|
311
|
-
readonly canMultisample: true;
|
|
312
|
-
readonly canResolve: false;
|
|
313
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
314
|
-
};
|
|
315
|
-
readonly rg16uint: {
|
|
316
|
-
readonly channelType: U32;
|
|
317
|
-
readonly vectorType: Vec4u;
|
|
318
|
-
readonly texelSize: 4;
|
|
319
|
-
readonly sampleTypes: readonly ["uint"];
|
|
320
|
-
readonly aspects: readonly ["color"];
|
|
321
|
-
readonly canRenderAttachment: true;
|
|
322
|
-
readonly canBlend: false;
|
|
323
|
-
readonly canMultisample: true;
|
|
324
|
-
readonly canResolve: false;
|
|
325
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
326
|
-
};
|
|
327
|
-
readonly rg16sint: {
|
|
328
|
-
readonly channelType: I32;
|
|
329
|
-
readonly vectorType: Vec4i;
|
|
330
|
-
readonly texelSize: 4;
|
|
331
|
-
readonly sampleTypes: readonly ["sint"];
|
|
332
|
-
readonly aspects: readonly ["color"];
|
|
333
|
-
readonly canRenderAttachment: true;
|
|
334
|
-
readonly canBlend: false;
|
|
335
|
-
readonly canMultisample: true;
|
|
336
|
-
readonly canResolve: false;
|
|
337
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
338
|
-
};
|
|
339
|
-
readonly rg16float: {
|
|
340
|
-
readonly channelType: F32;
|
|
341
|
-
readonly vectorType: Vec4f;
|
|
342
|
-
readonly texelSize: 4;
|
|
343
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
344
|
-
readonly aspects: readonly ["color"];
|
|
345
|
-
readonly canRenderAttachment: true;
|
|
346
|
-
readonly canBlend: true;
|
|
347
|
-
readonly canMultisample: true;
|
|
348
|
-
readonly canResolve: true;
|
|
349
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
350
|
-
};
|
|
351
|
-
readonly rgba16unorm: {
|
|
352
|
-
readonly channelType: F32;
|
|
353
|
-
readonly vectorType: Vec4f;
|
|
354
|
-
readonly texelSize: 8;
|
|
355
|
-
readonly sampleTypes: readonly ["unfilterable-float"];
|
|
356
|
-
readonly aspects: readonly ["color"];
|
|
357
|
-
readonly canRenderAttachment: true;
|
|
358
|
-
readonly canBlend: true;
|
|
359
|
-
readonly canMultisample: true;
|
|
360
|
-
readonly canResolve: false;
|
|
361
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
362
|
-
};
|
|
363
|
-
readonly rgba16snorm: {
|
|
364
|
-
readonly channelType: F32;
|
|
365
|
-
readonly vectorType: Vec4f;
|
|
366
|
-
readonly texelSize: 8;
|
|
367
|
-
readonly sampleTypes: readonly ["unfilterable-float"];
|
|
368
|
-
readonly aspects: readonly ["color"];
|
|
369
|
-
readonly canRenderAttachment: true;
|
|
370
|
-
readonly canBlend: true;
|
|
371
|
-
readonly canMultisample: true;
|
|
372
|
-
readonly canResolve: false;
|
|
373
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
374
|
-
};
|
|
375
|
-
readonly rgba16uint: {
|
|
376
|
-
readonly channelType: U32;
|
|
377
|
-
readonly vectorType: Vec4u;
|
|
378
|
-
readonly texelSize: 8;
|
|
379
|
-
readonly sampleTypes: readonly ["uint"];
|
|
380
|
-
readonly aspects: readonly ["color"];
|
|
381
|
-
readonly canRenderAttachment: true;
|
|
382
|
-
readonly canBlend: false;
|
|
383
|
-
readonly canMultisample: true;
|
|
384
|
-
readonly canResolve: false;
|
|
385
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
386
|
-
};
|
|
387
|
-
readonly rgba16sint: {
|
|
388
|
-
readonly channelType: I32;
|
|
389
|
-
readonly vectorType: Vec4i;
|
|
390
|
-
readonly texelSize: 8;
|
|
391
|
-
readonly sampleTypes: readonly ["sint"];
|
|
392
|
-
readonly aspects: readonly ["color"];
|
|
393
|
-
readonly canRenderAttachment: true;
|
|
394
|
-
readonly canBlend: false;
|
|
395
|
-
readonly canMultisample: true;
|
|
396
|
-
readonly canResolve: false;
|
|
397
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
398
|
-
};
|
|
399
|
-
readonly rgba16float: {
|
|
400
|
-
readonly channelType: F32;
|
|
401
|
-
readonly vectorType: Vec4f;
|
|
402
|
-
readonly texelSize: 8;
|
|
403
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
404
|
-
readonly aspects: readonly ["color"];
|
|
405
|
-
readonly canRenderAttachment: true;
|
|
406
|
-
readonly canBlend: true;
|
|
407
|
-
readonly canMultisample: true;
|
|
408
|
-
readonly canResolve: true;
|
|
409
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
410
|
-
};
|
|
411
|
-
readonly r32uint: {
|
|
412
|
-
readonly channelType: U32;
|
|
413
|
-
readonly vectorType: Vec4u;
|
|
414
|
-
readonly texelSize: 4;
|
|
415
|
-
readonly sampleTypes: readonly ["uint"];
|
|
416
|
-
readonly aspects: readonly ["color"];
|
|
417
|
-
readonly canRenderAttachment: true;
|
|
418
|
-
readonly canBlend: false;
|
|
419
|
-
readonly canMultisample: false;
|
|
420
|
-
readonly canResolve: false;
|
|
421
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
422
|
-
};
|
|
423
|
-
readonly r32sint: {
|
|
424
|
-
readonly channelType: I32;
|
|
425
|
-
readonly vectorType: Vec4i;
|
|
426
|
-
readonly texelSize: 4;
|
|
427
|
-
readonly sampleTypes: readonly ["sint"];
|
|
428
|
-
readonly aspects: readonly ["color"];
|
|
429
|
-
readonly canRenderAttachment: true;
|
|
430
|
-
readonly canBlend: false;
|
|
431
|
-
readonly canMultisample: false;
|
|
432
|
-
readonly canResolve: false;
|
|
433
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
434
|
-
};
|
|
435
|
-
readonly r32float: {
|
|
436
|
-
readonly channelType: F32;
|
|
437
|
-
readonly vectorType: Vec4f;
|
|
438
|
-
readonly texelSize: 4;
|
|
439
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
440
|
-
readonly aspects: readonly ["color"];
|
|
441
|
-
readonly canRenderAttachment: true;
|
|
442
|
-
readonly canBlend: true;
|
|
443
|
-
readonly canMultisample: true;
|
|
444
|
-
readonly canResolve: false;
|
|
445
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
446
|
-
};
|
|
447
|
-
readonly rg32uint: {
|
|
448
|
-
readonly channelType: U32;
|
|
449
|
-
readonly vectorType: Vec4u;
|
|
450
|
-
readonly texelSize: 8;
|
|
451
|
-
readonly sampleTypes: readonly ["uint"];
|
|
452
|
-
readonly aspects: readonly ["color"];
|
|
453
|
-
readonly canRenderAttachment: true;
|
|
454
|
-
readonly canBlend: false;
|
|
455
|
-
readonly canMultisample: false;
|
|
456
|
-
readonly canResolve: false;
|
|
457
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
458
|
-
};
|
|
459
|
-
readonly rg32sint: {
|
|
460
|
-
readonly channelType: I32;
|
|
461
|
-
readonly vectorType: Vec4i;
|
|
462
|
-
readonly texelSize: 8;
|
|
463
|
-
readonly sampleTypes: readonly ["sint"];
|
|
464
|
-
readonly aspects: readonly ["color"];
|
|
465
|
-
readonly canRenderAttachment: true;
|
|
466
|
-
readonly canBlend: false;
|
|
467
|
-
readonly canMultisample: false;
|
|
468
|
-
readonly canResolve: false;
|
|
469
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
470
|
-
};
|
|
471
|
-
readonly rg32float: {
|
|
472
|
-
readonly channelType: F32;
|
|
473
|
-
readonly vectorType: Vec4f;
|
|
474
|
-
readonly texelSize: 8;
|
|
475
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
476
|
-
readonly aspects: readonly ["color"];
|
|
477
|
-
readonly canRenderAttachment: true;
|
|
478
|
-
readonly canBlend: true;
|
|
479
|
-
readonly canMultisample: false;
|
|
480
|
-
readonly canResolve: false;
|
|
481
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
482
|
-
};
|
|
483
|
-
readonly rgba32uint: {
|
|
484
|
-
readonly channelType: U32;
|
|
485
|
-
readonly vectorType: Vec4u;
|
|
486
|
-
readonly texelSize: 16;
|
|
487
|
-
readonly sampleTypes: readonly ["uint"];
|
|
488
|
-
readonly aspects: readonly ["color"];
|
|
489
|
-
readonly canRenderAttachment: true;
|
|
490
|
-
readonly canBlend: false;
|
|
491
|
-
readonly canMultisample: false;
|
|
492
|
-
readonly canResolve: false;
|
|
493
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
494
|
-
};
|
|
495
|
-
readonly rgba32sint: {
|
|
496
|
-
readonly channelType: I32;
|
|
497
|
-
readonly vectorType: Vec4i;
|
|
498
|
-
readonly texelSize: 16;
|
|
499
|
-
readonly sampleTypes: readonly ["sint"];
|
|
500
|
-
readonly aspects: readonly ["color"];
|
|
501
|
-
readonly canRenderAttachment: true;
|
|
502
|
-
readonly canBlend: false;
|
|
503
|
-
readonly canMultisample: false;
|
|
504
|
-
readonly canResolve: false;
|
|
505
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
506
|
-
};
|
|
507
|
-
readonly rgba32float: {
|
|
508
|
-
readonly channelType: F32;
|
|
509
|
-
readonly vectorType: Vec4f;
|
|
510
|
-
readonly texelSize: 16;
|
|
511
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
512
|
-
readonly aspects: readonly ["color"];
|
|
513
|
-
readonly canRenderAttachment: true;
|
|
514
|
-
readonly canBlend: true;
|
|
515
|
-
readonly canMultisample: false;
|
|
516
|
-
readonly canResolve: false;
|
|
517
|
-
readonly storageBindings: readonly ["write-only", "read-only", "read-write"];
|
|
518
|
-
};
|
|
519
|
-
readonly rgb10a2uint: {
|
|
520
|
-
readonly channelType: U32;
|
|
521
|
-
readonly vectorType: Vec4u;
|
|
522
|
-
readonly texelSize: 4;
|
|
523
|
-
readonly sampleTypes: readonly ["uint"];
|
|
524
|
-
readonly aspects: readonly ["color"];
|
|
525
|
-
readonly canRenderAttachment: true;
|
|
526
|
-
readonly canBlend: false;
|
|
527
|
-
readonly canMultisample: true;
|
|
528
|
-
readonly canResolve: false;
|
|
529
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
530
|
-
};
|
|
531
|
-
readonly rgb10a2unorm: {
|
|
532
|
-
readonly channelType: F32;
|
|
533
|
-
readonly vectorType: Vec4f;
|
|
534
|
-
readonly texelSize: 4;
|
|
535
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
536
|
-
readonly aspects: readonly ["color"];
|
|
537
|
-
readonly canRenderAttachment: true;
|
|
538
|
-
readonly canBlend: true;
|
|
539
|
-
readonly canMultisample: true;
|
|
540
|
-
readonly canResolve: true;
|
|
541
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
542
|
-
};
|
|
543
|
-
readonly rg11b10ufloat: {
|
|
544
|
-
readonly channelType: F32;
|
|
545
|
-
readonly vectorType: Vec4f;
|
|
546
|
-
readonly texelSize: 4;
|
|
547
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
548
|
-
readonly aspects: readonly ["color"];
|
|
549
|
-
readonly canRenderAttachment: true;
|
|
550
|
-
readonly canBlend: true;
|
|
551
|
-
readonly canMultisample: true;
|
|
552
|
-
readonly canResolve: true;
|
|
553
|
-
readonly storageBindings: readonly ["write-only", "read-only"];
|
|
554
|
-
};
|
|
555
|
-
readonly rgb9e5ufloat: {
|
|
556
|
-
readonly channelType: F32;
|
|
557
|
-
readonly vectorType: Vec4f;
|
|
558
|
-
readonly texelSize: 4;
|
|
559
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
560
|
-
readonly aspects: readonly ["color"];
|
|
561
|
-
readonly canRenderAttachment: false;
|
|
562
|
-
readonly canBlend: false;
|
|
563
|
-
readonly canMultisample: false;
|
|
564
|
-
readonly canResolve: false;
|
|
565
|
-
readonly storageBindings: null;
|
|
566
|
-
};
|
|
567
|
-
readonly stencil8: {
|
|
568
|
-
readonly channelType: U32;
|
|
569
|
-
readonly vectorType: Vec4u;
|
|
570
|
-
readonly texelSize: 1;
|
|
571
|
-
readonly sampleTypes: readonly ["uint"];
|
|
572
|
-
readonly aspects: readonly ["stencil"];
|
|
573
|
-
readonly canRenderAttachment: true;
|
|
574
|
-
readonly canBlend: false;
|
|
575
|
-
readonly canMultisample: true;
|
|
576
|
-
readonly canResolve: false;
|
|
577
|
-
readonly storageBindings: null;
|
|
578
|
-
};
|
|
579
|
-
readonly depth16unorm: {
|
|
580
|
-
readonly channelType: F32;
|
|
581
|
-
readonly vectorType: Vec4f;
|
|
582
|
-
readonly texelSize: 2;
|
|
583
|
-
readonly sampleTypes: readonly ["depth", "unfilterable-float"];
|
|
584
|
-
readonly aspects: readonly ["depth"];
|
|
585
|
-
readonly canRenderAttachment: true;
|
|
586
|
-
readonly canBlend: false;
|
|
587
|
-
readonly canMultisample: true;
|
|
588
|
-
readonly canResolve: false;
|
|
589
|
-
readonly storageBindings: null;
|
|
590
|
-
};
|
|
591
|
-
readonly depth24plus: {
|
|
592
|
-
readonly channelType: F32;
|
|
593
|
-
readonly vectorType: Vec4f;
|
|
594
|
-
readonly texelSize: 4;
|
|
595
|
-
readonly sampleTypes: readonly ["depth", "unfilterable-float"];
|
|
596
|
-
readonly aspects: readonly ["depth"];
|
|
597
|
-
readonly canRenderAttachment: true;
|
|
598
|
-
readonly canBlend: false;
|
|
599
|
-
readonly canMultisample: true;
|
|
600
|
-
readonly canResolve: false;
|
|
601
|
-
readonly storageBindings: null;
|
|
602
|
-
};
|
|
603
|
-
readonly 'depth24plus-stencil8': {
|
|
604
|
-
readonly channelType: F32;
|
|
605
|
-
readonly vectorType: Vec4f;
|
|
606
|
-
readonly texelSize: 4;
|
|
607
|
-
readonly sampleTypes: readonly ["depth", "unfilterable-float"];
|
|
608
|
-
readonly aspects: readonly ["depth", "stencil"];
|
|
609
|
-
readonly canRenderAttachment: true;
|
|
610
|
-
readonly canBlend: false;
|
|
611
|
-
readonly canMultisample: true;
|
|
612
|
-
readonly canResolve: false;
|
|
613
|
-
readonly storageBindings: null;
|
|
614
|
-
};
|
|
615
|
-
readonly depth32float: {
|
|
616
|
-
readonly channelType: F32;
|
|
617
|
-
readonly vectorType: Vec4f;
|
|
618
|
-
readonly texelSize: 4;
|
|
619
|
-
readonly sampleTypes: readonly ["depth", "unfilterable-float"];
|
|
620
|
-
readonly aspects: readonly ["depth"];
|
|
621
|
-
readonly canRenderAttachment: true;
|
|
622
|
-
readonly canBlend: false;
|
|
623
|
-
readonly canMultisample: true;
|
|
624
|
-
readonly canResolve: false;
|
|
625
|
-
readonly storageBindings: null;
|
|
626
|
-
};
|
|
627
|
-
readonly 'depth32float-stencil8': {
|
|
628
|
-
readonly channelType: F32;
|
|
629
|
-
readonly vectorType: Vec4f;
|
|
630
|
-
readonly texelSize: 4;
|
|
631
|
-
readonly sampleTypes: readonly ["depth", "unfilterable-float"];
|
|
632
|
-
readonly aspects: readonly ["depth", "stencil"];
|
|
633
|
-
readonly canRenderAttachment: true;
|
|
634
|
-
readonly canBlend: false;
|
|
635
|
-
readonly canMultisample: true;
|
|
636
|
-
readonly canResolve: false;
|
|
637
|
-
readonly storageBindings: null;
|
|
638
|
-
};
|
|
639
|
-
readonly 'bc1-rgba-unorm': {
|
|
640
|
-
readonly channelType: F32;
|
|
641
|
-
readonly vectorType: Vec4f;
|
|
642
|
-
readonly texelSize: 8;
|
|
643
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
644
|
-
readonly aspects: readonly ["color"];
|
|
645
|
-
readonly canRenderAttachment: false;
|
|
646
|
-
readonly canBlend: false;
|
|
647
|
-
readonly canMultisample: false;
|
|
648
|
-
readonly canResolve: false;
|
|
649
|
-
readonly storageBindings: null;
|
|
650
|
-
};
|
|
651
|
-
readonly 'bc1-rgba-unorm-srgb': {
|
|
652
|
-
readonly channelType: F32;
|
|
653
|
-
readonly vectorType: Vec4f;
|
|
654
|
-
readonly texelSize: 8;
|
|
655
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
656
|
-
readonly aspects: readonly ["color"];
|
|
657
|
-
readonly canRenderAttachment: false;
|
|
658
|
-
readonly canBlend: false;
|
|
659
|
-
readonly canMultisample: false;
|
|
660
|
-
readonly canResolve: false;
|
|
661
|
-
readonly storageBindings: null;
|
|
662
|
-
};
|
|
663
|
-
readonly 'bc2-rgba-unorm': {
|
|
664
|
-
readonly channelType: F32;
|
|
665
|
-
readonly vectorType: Vec4f;
|
|
666
|
-
readonly texelSize: 16;
|
|
667
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
668
|
-
readonly aspects: readonly ["color"];
|
|
669
|
-
readonly canRenderAttachment: false;
|
|
670
|
-
readonly canBlend: false;
|
|
671
|
-
readonly canMultisample: false;
|
|
672
|
-
readonly canResolve: false;
|
|
673
|
-
readonly storageBindings: null;
|
|
674
|
-
};
|
|
675
|
-
readonly 'bc2-rgba-unorm-srgb': {
|
|
676
|
-
readonly channelType: F32;
|
|
677
|
-
readonly vectorType: Vec4f;
|
|
678
|
-
readonly texelSize: 16;
|
|
679
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
680
|
-
readonly aspects: readonly ["color"];
|
|
681
|
-
readonly canRenderAttachment: false;
|
|
682
|
-
readonly canBlend: false;
|
|
683
|
-
readonly canMultisample: false;
|
|
684
|
-
readonly canResolve: false;
|
|
685
|
-
readonly storageBindings: null;
|
|
686
|
-
};
|
|
687
|
-
readonly 'bc3-rgba-unorm': {
|
|
688
|
-
readonly channelType: F32;
|
|
689
|
-
readonly vectorType: Vec4f;
|
|
690
|
-
readonly texelSize: 16;
|
|
691
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
692
|
-
readonly aspects: readonly ["color"];
|
|
693
|
-
readonly canRenderAttachment: false;
|
|
694
|
-
readonly canBlend: false;
|
|
695
|
-
readonly canMultisample: false;
|
|
696
|
-
readonly canResolve: false;
|
|
697
|
-
readonly storageBindings: null;
|
|
698
|
-
};
|
|
699
|
-
readonly 'bc3-rgba-unorm-srgb': {
|
|
700
|
-
readonly channelType: F32;
|
|
701
|
-
readonly vectorType: Vec4f;
|
|
702
|
-
readonly texelSize: 16;
|
|
703
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
704
|
-
readonly aspects: readonly ["color"];
|
|
705
|
-
readonly canRenderAttachment: false;
|
|
706
|
-
readonly canBlend: false;
|
|
707
|
-
readonly canMultisample: false;
|
|
708
|
-
readonly canResolve: false;
|
|
709
|
-
readonly storageBindings: null;
|
|
710
|
-
};
|
|
711
|
-
readonly 'bc4-r-unorm': {
|
|
712
|
-
readonly channelType: F32;
|
|
713
|
-
readonly vectorType: Vec4f;
|
|
714
|
-
readonly texelSize: 8;
|
|
715
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
716
|
-
readonly aspects: readonly ["color"];
|
|
717
|
-
readonly canRenderAttachment: false;
|
|
718
|
-
readonly canBlend: false;
|
|
719
|
-
readonly canMultisample: false;
|
|
720
|
-
readonly canResolve: false;
|
|
721
|
-
readonly storageBindings: null;
|
|
722
|
-
};
|
|
723
|
-
readonly 'bc4-r-snorm': {
|
|
724
|
-
readonly channelType: F32;
|
|
725
|
-
readonly vectorType: Vec4f;
|
|
726
|
-
readonly texelSize: 8;
|
|
727
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
728
|
-
readonly aspects: readonly ["color"];
|
|
729
|
-
readonly canRenderAttachment: false;
|
|
730
|
-
readonly canBlend: false;
|
|
731
|
-
readonly canMultisample: false;
|
|
732
|
-
readonly canResolve: false;
|
|
733
|
-
readonly storageBindings: null;
|
|
734
|
-
};
|
|
735
|
-
readonly 'bc5-rg-unorm': {
|
|
736
|
-
readonly channelType: F32;
|
|
737
|
-
readonly vectorType: Vec4f;
|
|
738
|
-
readonly texelSize: 16;
|
|
739
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
740
|
-
readonly aspects: readonly ["color"];
|
|
741
|
-
readonly canRenderAttachment: false;
|
|
742
|
-
readonly canBlend: false;
|
|
743
|
-
readonly canMultisample: false;
|
|
744
|
-
readonly canResolve: false;
|
|
745
|
-
readonly storageBindings: null;
|
|
746
|
-
};
|
|
747
|
-
readonly 'bc5-rg-snorm': {
|
|
748
|
-
readonly channelType: F32;
|
|
749
|
-
readonly vectorType: Vec4f;
|
|
750
|
-
readonly texelSize: 16;
|
|
751
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
752
|
-
readonly aspects: readonly ["color"];
|
|
753
|
-
readonly canRenderAttachment: false;
|
|
754
|
-
readonly canBlend: false;
|
|
755
|
-
readonly canMultisample: false;
|
|
756
|
-
readonly canResolve: false;
|
|
757
|
-
readonly storageBindings: null;
|
|
758
|
-
};
|
|
759
|
-
readonly 'bc6h-rgb-ufloat': {
|
|
760
|
-
readonly channelType: F32;
|
|
761
|
-
readonly vectorType: Vec4f;
|
|
762
|
-
readonly texelSize: 16;
|
|
763
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
764
|
-
readonly aspects: readonly ["color"];
|
|
765
|
-
readonly canRenderAttachment: false;
|
|
766
|
-
readonly canBlend: false;
|
|
767
|
-
readonly canMultisample: false;
|
|
768
|
-
readonly canResolve: false;
|
|
769
|
-
readonly storageBindings: null;
|
|
770
|
-
};
|
|
771
|
-
readonly 'bc6h-rgb-float': {
|
|
772
|
-
readonly channelType: F32;
|
|
773
|
-
readonly vectorType: Vec4f;
|
|
774
|
-
readonly texelSize: 16;
|
|
775
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
776
|
-
readonly aspects: readonly ["color"];
|
|
777
|
-
readonly canRenderAttachment: false;
|
|
778
|
-
readonly canBlend: false;
|
|
779
|
-
readonly canMultisample: false;
|
|
780
|
-
readonly canResolve: false;
|
|
781
|
-
readonly storageBindings: null;
|
|
782
|
-
};
|
|
783
|
-
readonly 'bc7-rgba-unorm': {
|
|
784
|
-
readonly channelType: F32;
|
|
785
|
-
readonly vectorType: Vec4f;
|
|
786
|
-
readonly texelSize: 16;
|
|
787
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
788
|
-
readonly aspects: readonly ["color"];
|
|
789
|
-
readonly canRenderAttachment: false;
|
|
790
|
-
readonly canBlend: false;
|
|
791
|
-
readonly canMultisample: false;
|
|
792
|
-
readonly canResolve: false;
|
|
793
|
-
readonly storageBindings: null;
|
|
794
|
-
};
|
|
795
|
-
readonly 'bc7-rgba-unorm-srgb': {
|
|
796
|
-
readonly channelType: F32;
|
|
797
|
-
readonly vectorType: Vec4f;
|
|
798
|
-
readonly texelSize: 16;
|
|
799
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
800
|
-
readonly aspects: readonly ["color"];
|
|
801
|
-
readonly canRenderAttachment: false;
|
|
802
|
-
readonly canBlend: false;
|
|
803
|
-
readonly canMultisample: false;
|
|
804
|
-
readonly canResolve: false;
|
|
805
|
-
readonly storageBindings: null;
|
|
806
|
-
};
|
|
807
|
-
readonly 'etc2-rgb8unorm': {
|
|
808
|
-
readonly channelType: F32;
|
|
809
|
-
readonly vectorType: Vec4f;
|
|
810
|
-
readonly texelSize: 8;
|
|
811
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
812
|
-
readonly aspects: readonly ["color"];
|
|
813
|
-
readonly canRenderAttachment: false;
|
|
814
|
-
readonly canBlend: false;
|
|
815
|
-
readonly canMultisample: false;
|
|
816
|
-
readonly canResolve: false;
|
|
817
|
-
readonly storageBindings: null;
|
|
818
|
-
};
|
|
819
|
-
readonly 'etc2-rgb8unorm-srgb': {
|
|
820
|
-
readonly channelType: F32;
|
|
821
|
-
readonly vectorType: Vec4f;
|
|
822
|
-
readonly texelSize: 8;
|
|
823
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
824
|
-
readonly aspects: readonly ["color"];
|
|
825
|
-
readonly canRenderAttachment: false;
|
|
826
|
-
readonly canBlend: false;
|
|
827
|
-
readonly canMultisample: false;
|
|
828
|
-
readonly canResolve: false;
|
|
829
|
-
readonly storageBindings: null;
|
|
830
|
-
};
|
|
831
|
-
readonly 'etc2-rgb8a1unorm': {
|
|
832
|
-
readonly channelType: F32;
|
|
833
|
-
readonly vectorType: Vec4f;
|
|
834
|
-
readonly texelSize: 8;
|
|
835
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
836
|
-
readonly aspects: readonly ["color"];
|
|
837
|
-
readonly canRenderAttachment: false;
|
|
838
|
-
readonly canBlend: false;
|
|
839
|
-
readonly canMultisample: false;
|
|
840
|
-
readonly canResolve: false;
|
|
841
|
-
readonly storageBindings: null;
|
|
842
|
-
};
|
|
843
|
-
readonly 'etc2-rgb8a1unorm-srgb': {
|
|
844
|
-
readonly channelType: F32;
|
|
845
|
-
readonly vectorType: Vec4f;
|
|
846
|
-
readonly texelSize: 8;
|
|
847
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
848
|
-
readonly aspects: readonly ["color"];
|
|
849
|
-
readonly canRenderAttachment: false;
|
|
850
|
-
readonly canBlend: false;
|
|
851
|
-
readonly canMultisample: false;
|
|
852
|
-
readonly canResolve: false;
|
|
853
|
-
readonly storageBindings: null;
|
|
854
|
-
};
|
|
855
|
-
readonly 'etc2-rgba8unorm': {
|
|
856
|
-
readonly channelType: F32;
|
|
857
|
-
readonly vectorType: Vec4f;
|
|
858
|
-
readonly texelSize: 16;
|
|
859
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
860
|
-
readonly aspects: readonly ["color"];
|
|
861
|
-
readonly canRenderAttachment: false;
|
|
862
|
-
readonly canBlend: false;
|
|
863
|
-
readonly canMultisample: false;
|
|
864
|
-
readonly canResolve: false;
|
|
865
|
-
readonly storageBindings: null;
|
|
866
|
-
};
|
|
867
|
-
readonly 'etc2-rgba8unorm-srgb': {
|
|
868
|
-
readonly channelType: F32;
|
|
869
|
-
readonly vectorType: Vec4f;
|
|
870
|
-
readonly texelSize: 16;
|
|
871
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
872
|
-
readonly aspects: readonly ["color"];
|
|
873
|
-
readonly canRenderAttachment: false;
|
|
874
|
-
readonly canBlend: false;
|
|
875
|
-
readonly canMultisample: false;
|
|
876
|
-
readonly canResolve: false;
|
|
877
|
-
readonly storageBindings: null;
|
|
878
|
-
};
|
|
879
|
-
readonly 'eac-r11unorm': {
|
|
880
|
-
readonly channelType: F32;
|
|
881
|
-
readonly vectorType: Vec4f;
|
|
882
|
-
readonly texelSize: 8;
|
|
883
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
884
|
-
readonly aspects: readonly ["color"];
|
|
885
|
-
readonly canRenderAttachment: false;
|
|
886
|
-
readonly canBlend: false;
|
|
887
|
-
readonly canMultisample: false;
|
|
888
|
-
readonly canResolve: false;
|
|
889
|
-
readonly storageBindings: null;
|
|
890
|
-
};
|
|
891
|
-
readonly 'eac-r11snorm': {
|
|
892
|
-
readonly channelType: F32;
|
|
893
|
-
readonly vectorType: Vec4f;
|
|
894
|
-
readonly texelSize: 8;
|
|
895
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
896
|
-
readonly aspects: readonly ["color"];
|
|
897
|
-
readonly canRenderAttachment: false;
|
|
898
|
-
readonly canBlend: false;
|
|
899
|
-
readonly canMultisample: false;
|
|
900
|
-
readonly canResolve: false;
|
|
901
|
-
readonly storageBindings: null;
|
|
902
|
-
};
|
|
903
|
-
readonly 'eac-rg11unorm': {
|
|
904
|
-
readonly channelType: F32;
|
|
905
|
-
readonly vectorType: Vec4f;
|
|
906
|
-
readonly texelSize: 16;
|
|
907
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
908
|
-
readonly aspects: readonly ["color"];
|
|
909
|
-
readonly canRenderAttachment: false;
|
|
910
|
-
readonly canBlend: false;
|
|
911
|
-
readonly canMultisample: false;
|
|
912
|
-
readonly canResolve: false;
|
|
913
|
-
readonly storageBindings: null;
|
|
914
|
-
};
|
|
915
|
-
readonly 'eac-rg11snorm': {
|
|
916
|
-
readonly channelType: F32;
|
|
917
|
-
readonly vectorType: Vec4f;
|
|
918
|
-
readonly texelSize: 16;
|
|
919
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
920
|
-
readonly aspects: readonly ["color"];
|
|
921
|
-
readonly canRenderAttachment: false;
|
|
922
|
-
readonly canBlend: false;
|
|
923
|
-
readonly canMultisample: false;
|
|
924
|
-
readonly canResolve: false;
|
|
925
|
-
readonly storageBindings: null;
|
|
926
|
-
};
|
|
927
|
-
readonly 'astc-4x4-unorm': {
|
|
928
|
-
readonly channelType: F32;
|
|
929
|
-
readonly vectorType: Vec4f;
|
|
930
|
-
readonly texelSize: 16;
|
|
931
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
932
|
-
readonly aspects: readonly ["color"];
|
|
933
|
-
readonly canRenderAttachment: false;
|
|
934
|
-
readonly canBlend: false;
|
|
935
|
-
readonly canMultisample: false;
|
|
936
|
-
readonly canResolve: false;
|
|
937
|
-
readonly storageBindings: null;
|
|
938
|
-
};
|
|
939
|
-
readonly 'astc-4x4-unorm-srgb': {
|
|
940
|
-
readonly channelType: F32;
|
|
941
|
-
readonly vectorType: Vec4f;
|
|
942
|
-
readonly texelSize: 16;
|
|
943
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
944
|
-
readonly aspects: readonly ["color"];
|
|
945
|
-
readonly canRenderAttachment: false;
|
|
946
|
-
readonly canBlend: false;
|
|
947
|
-
readonly canMultisample: false;
|
|
948
|
-
readonly canResolve: false;
|
|
949
|
-
readonly storageBindings: null;
|
|
950
|
-
};
|
|
951
|
-
readonly 'astc-5x4-unorm': {
|
|
952
|
-
readonly channelType: F32;
|
|
953
|
-
readonly vectorType: Vec4f;
|
|
954
|
-
readonly texelSize: 16;
|
|
955
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
956
|
-
readonly aspects: readonly ["color"];
|
|
957
|
-
readonly canRenderAttachment: false;
|
|
958
|
-
readonly canBlend: false;
|
|
959
|
-
readonly canMultisample: false;
|
|
960
|
-
readonly canResolve: false;
|
|
961
|
-
readonly storageBindings: null;
|
|
962
|
-
};
|
|
963
|
-
readonly 'astc-5x4-unorm-srgb': {
|
|
964
|
-
readonly channelType: F32;
|
|
965
|
-
readonly vectorType: Vec4f;
|
|
966
|
-
readonly texelSize: 16;
|
|
967
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
968
|
-
readonly aspects: readonly ["color"];
|
|
969
|
-
readonly canRenderAttachment: false;
|
|
970
|
-
readonly canBlend: false;
|
|
971
|
-
readonly canMultisample: false;
|
|
972
|
-
readonly canResolve: false;
|
|
973
|
-
readonly storageBindings: null;
|
|
974
|
-
};
|
|
975
|
-
readonly 'astc-5x5-unorm': {
|
|
976
|
-
readonly channelType: F32;
|
|
977
|
-
readonly vectorType: Vec4f;
|
|
978
|
-
readonly texelSize: 16;
|
|
979
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
980
|
-
readonly aspects: readonly ["color"];
|
|
981
|
-
readonly canRenderAttachment: false;
|
|
982
|
-
readonly canBlend: false;
|
|
983
|
-
readonly canMultisample: false;
|
|
984
|
-
readonly canResolve: false;
|
|
985
|
-
readonly storageBindings: null;
|
|
986
|
-
};
|
|
987
|
-
readonly 'astc-5x5-unorm-srgb': {
|
|
988
|
-
readonly channelType: F32;
|
|
989
|
-
readonly vectorType: Vec4f;
|
|
990
|
-
readonly texelSize: 16;
|
|
991
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
992
|
-
readonly aspects: readonly ["color"];
|
|
993
|
-
readonly canRenderAttachment: false;
|
|
994
|
-
readonly canBlend: false;
|
|
995
|
-
readonly canMultisample: false;
|
|
996
|
-
readonly canResolve: false;
|
|
997
|
-
readonly storageBindings: null;
|
|
998
|
-
};
|
|
999
|
-
readonly 'astc-6x5-unorm': {
|
|
1000
|
-
readonly channelType: F32;
|
|
1001
|
-
readonly vectorType: Vec4f;
|
|
1002
|
-
readonly texelSize: 16;
|
|
1003
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1004
|
-
readonly aspects: readonly ["color"];
|
|
1005
|
-
readonly canRenderAttachment: false;
|
|
1006
|
-
readonly canBlend: false;
|
|
1007
|
-
readonly canMultisample: false;
|
|
1008
|
-
readonly canResolve: false;
|
|
1009
|
-
readonly storageBindings: null;
|
|
1010
|
-
};
|
|
1011
|
-
readonly 'astc-6x5-unorm-srgb': {
|
|
1012
|
-
readonly channelType: F32;
|
|
1013
|
-
readonly vectorType: Vec4f;
|
|
1014
|
-
readonly texelSize: 16;
|
|
1015
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1016
|
-
readonly aspects: readonly ["color"];
|
|
1017
|
-
readonly canRenderAttachment: false;
|
|
1018
|
-
readonly canBlend: false;
|
|
1019
|
-
readonly canMultisample: false;
|
|
1020
|
-
readonly canResolve: false;
|
|
1021
|
-
readonly storageBindings: null;
|
|
1022
|
-
};
|
|
1023
|
-
readonly 'astc-6x6-unorm': {
|
|
1024
|
-
readonly channelType: F32;
|
|
1025
|
-
readonly vectorType: Vec4f;
|
|
1026
|
-
readonly texelSize: 16;
|
|
1027
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1028
|
-
readonly aspects: readonly ["color"];
|
|
1029
|
-
readonly canRenderAttachment: false;
|
|
1030
|
-
readonly canBlend: false;
|
|
1031
|
-
readonly canMultisample: false;
|
|
1032
|
-
readonly canResolve: false;
|
|
1033
|
-
readonly storageBindings: null;
|
|
1034
|
-
};
|
|
1035
|
-
readonly 'astc-6x6-unorm-srgb': {
|
|
1036
|
-
readonly channelType: F32;
|
|
1037
|
-
readonly vectorType: Vec4f;
|
|
1038
|
-
readonly texelSize: 16;
|
|
1039
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1040
|
-
readonly aspects: readonly ["color"];
|
|
1041
|
-
readonly canRenderAttachment: false;
|
|
1042
|
-
readonly canBlend: false;
|
|
1043
|
-
readonly canMultisample: false;
|
|
1044
|
-
readonly canResolve: false;
|
|
1045
|
-
readonly storageBindings: null;
|
|
1046
|
-
};
|
|
1047
|
-
readonly 'astc-8x5-unorm': {
|
|
1048
|
-
readonly channelType: F32;
|
|
1049
|
-
readonly vectorType: Vec4f;
|
|
1050
|
-
readonly texelSize: 16;
|
|
1051
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1052
|
-
readonly aspects: readonly ["color"];
|
|
1053
|
-
readonly canRenderAttachment: false;
|
|
1054
|
-
readonly canBlend: false;
|
|
1055
|
-
readonly canMultisample: false;
|
|
1056
|
-
readonly canResolve: false;
|
|
1057
|
-
readonly storageBindings: null;
|
|
1058
|
-
};
|
|
1059
|
-
readonly 'astc-8x5-unorm-srgb': {
|
|
1060
|
-
readonly channelType: F32;
|
|
1061
|
-
readonly vectorType: Vec4f;
|
|
1062
|
-
readonly texelSize: 16;
|
|
1063
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1064
|
-
readonly aspects: readonly ["color"];
|
|
1065
|
-
readonly canRenderAttachment: false;
|
|
1066
|
-
readonly canBlend: false;
|
|
1067
|
-
readonly canMultisample: false;
|
|
1068
|
-
readonly canResolve: false;
|
|
1069
|
-
readonly storageBindings: null;
|
|
1070
|
-
};
|
|
1071
|
-
readonly 'astc-8x6-unorm': {
|
|
1072
|
-
readonly channelType: F32;
|
|
1073
|
-
readonly vectorType: Vec4f;
|
|
1074
|
-
readonly texelSize: 16;
|
|
1075
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1076
|
-
readonly aspects: readonly ["color"];
|
|
1077
|
-
readonly canRenderAttachment: false;
|
|
1078
|
-
readonly canBlend: false;
|
|
1079
|
-
readonly canMultisample: false;
|
|
1080
|
-
readonly canResolve: false;
|
|
1081
|
-
readonly storageBindings: null;
|
|
1082
|
-
};
|
|
1083
|
-
readonly 'astc-8x6-unorm-srgb': {
|
|
1084
|
-
readonly channelType: F32;
|
|
1085
|
-
readonly vectorType: Vec4f;
|
|
1086
|
-
readonly texelSize: 16;
|
|
1087
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1088
|
-
readonly aspects: readonly ["color"];
|
|
1089
|
-
readonly canRenderAttachment: false;
|
|
1090
|
-
readonly canBlend: false;
|
|
1091
|
-
readonly canMultisample: false;
|
|
1092
|
-
readonly canResolve: false;
|
|
1093
|
-
readonly storageBindings: null;
|
|
1094
|
-
};
|
|
1095
|
-
readonly 'astc-8x8-unorm': {
|
|
1096
|
-
readonly channelType: F32;
|
|
1097
|
-
readonly vectorType: Vec4f;
|
|
1098
|
-
readonly texelSize: 16;
|
|
1099
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1100
|
-
readonly aspects: readonly ["color"];
|
|
1101
|
-
readonly canRenderAttachment: false;
|
|
1102
|
-
readonly canBlend: false;
|
|
1103
|
-
readonly canMultisample: false;
|
|
1104
|
-
readonly canResolve: false;
|
|
1105
|
-
readonly storageBindings: null;
|
|
1106
|
-
};
|
|
1107
|
-
readonly 'astc-8x8-unorm-srgb': {
|
|
1108
|
-
readonly channelType: F32;
|
|
1109
|
-
readonly vectorType: Vec4f;
|
|
1110
|
-
readonly texelSize: 16;
|
|
1111
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1112
|
-
readonly aspects: readonly ["color"];
|
|
1113
|
-
readonly canRenderAttachment: false;
|
|
1114
|
-
readonly canBlend: false;
|
|
1115
|
-
readonly canMultisample: false;
|
|
1116
|
-
readonly canResolve: false;
|
|
1117
|
-
readonly storageBindings: null;
|
|
1118
|
-
};
|
|
1119
|
-
readonly 'astc-10x5-unorm': {
|
|
1120
|
-
readonly channelType: F32;
|
|
1121
|
-
readonly vectorType: Vec4f;
|
|
1122
|
-
readonly texelSize: 16;
|
|
1123
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1124
|
-
readonly aspects: readonly ["color"];
|
|
1125
|
-
readonly canRenderAttachment: false;
|
|
1126
|
-
readonly canBlend: false;
|
|
1127
|
-
readonly canMultisample: false;
|
|
1128
|
-
readonly canResolve: false;
|
|
1129
|
-
readonly storageBindings: null;
|
|
1130
|
-
};
|
|
1131
|
-
readonly 'astc-10x5-unorm-srgb': {
|
|
1132
|
-
readonly channelType: F32;
|
|
1133
|
-
readonly vectorType: Vec4f;
|
|
1134
|
-
readonly texelSize: 16;
|
|
1135
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1136
|
-
readonly aspects: readonly ["color"];
|
|
1137
|
-
readonly canRenderAttachment: false;
|
|
1138
|
-
readonly canBlend: false;
|
|
1139
|
-
readonly canMultisample: false;
|
|
1140
|
-
readonly canResolve: false;
|
|
1141
|
-
readonly storageBindings: null;
|
|
1142
|
-
};
|
|
1143
|
-
readonly 'astc-10x6-unorm': {
|
|
1144
|
-
readonly channelType: F32;
|
|
1145
|
-
readonly vectorType: Vec4f;
|
|
1146
|
-
readonly texelSize: 16;
|
|
1147
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1148
|
-
readonly aspects: readonly ["color"];
|
|
1149
|
-
readonly canRenderAttachment: false;
|
|
1150
|
-
readonly canBlend: false;
|
|
1151
|
-
readonly canMultisample: false;
|
|
1152
|
-
readonly canResolve: false;
|
|
1153
|
-
readonly storageBindings: null;
|
|
1154
|
-
};
|
|
1155
|
-
readonly 'astc-10x6-unorm-srgb': {
|
|
1156
|
-
readonly channelType: F32;
|
|
1157
|
-
readonly vectorType: Vec4f;
|
|
1158
|
-
readonly texelSize: 16;
|
|
1159
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1160
|
-
readonly aspects: readonly ["color"];
|
|
1161
|
-
readonly canRenderAttachment: false;
|
|
1162
|
-
readonly canBlend: false;
|
|
1163
|
-
readonly canMultisample: false;
|
|
1164
|
-
readonly canResolve: false;
|
|
1165
|
-
readonly storageBindings: null;
|
|
1166
|
-
};
|
|
1167
|
-
readonly 'astc-10x8-unorm': {
|
|
1168
|
-
readonly channelType: F32;
|
|
1169
|
-
readonly vectorType: Vec4f;
|
|
1170
|
-
readonly texelSize: 16;
|
|
1171
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1172
|
-
readonly aspects: readonly ["color"];
|
|
1173
|
-
readonly canRenderAttachment: false;
|
|
1174
|
-
readonly canBlend: false;
|
|
1175
|
-
readonly canMultisample: false;
|
|
1176
|
-
readonly canResolve: false;
|
|
1177
|
-
readonly storageBindings: null;
|
|
1178
|
-
};
|
|
1179
|
-
readonly 'astc-10x8-unorm-srgb': {
|
|
1180
|
-
readonly channelType: F32;
|
|
1181
|
-
readonly vectorType: Vec4f;
|
|
1182
|
-
readonly texelSize: 16;
|
|
1183
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1184
|
-
readonly aspects: readonly ["color"];
|
|
1185
|
-
readonly canRenderAttachment: false;
|
|
1186
|
-
readonly canBlend: false;
|
|
1187
|
-
readonly canMultisample: false;
|
|
1188
|
-
readonly canResolve: false;
|
|
1189
|
-
readonly storageBindings: null;
|
|
1190
|
-
};
|
|
1191
|
-
readonly 'astc-10x10-unorm': {
|
|
1192
|
-
readonly channelType: F32;
|
|
1193
|
-
readonly vectorType: Vec4f;
|
|
1194
|
-
readonly texelSize: 16;
|
|
1195
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1196
|
-
readonly aspects: readonly ["color"];
|
|
1197
|
-
readonly canRenderAttachment: false;
|
|
1198
|
-
readonly canBlend: false;
|
|
1199
|
-
readonly canMultisample: false;
|
|
1200
|
-
readonly canResolve: false;
|
|
1201
|
-
readonly storageBindings: null;
|
|
1202
|
-
};
|
|
1203
|
-
readonly 'astc-10x10-unorm-srgb': {
|
|
1204
|
-
readonly channelType: F32;
|
|
1205
|
-
readonly vectorType: Vec4f;
|
|
1206
|
-
readonly texelSize: 16;
|
|
1207
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1208
|
-
readonly aspects: readonly ["color"];
|
|
1209
|
-
readonly canRenderAttachment: false;
|
|
1210
|
-
readonly canBlend: false;
|
|
1211
|
-
readonly canMultisample: false;
|
|
1212
|
-
readonly canResolve: false;
|
|
1213
|
-
readonly storageBindings: null;
|
|
1214
|
-
};
|
|
1215
|
-
readonly 'astc-12x10-unorm': {
|
|
1216
|
-
readonly channelType: F32;
|
|
1217
|
-
readonly vectorType: Vec4f;
|
|
1218
|
-
readonly texelSize: 16;
|
|
1219
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1220
|
-
readonly aspects: readonly ["color"];
|
|
1221
|
-
readonly canRenderAttachment: false;
|
|
1222
|
-
readonly canBlend: false;
|
|
1223
|
-
readonly canMultisample: false;
|
|
1224
|
-
readonly canResolve: false;
|
|
1225
|
-
readonly storageBindings: null;
|
|
1226
|
-
};
|
|
1227
|
-
readonly 'astc-12x10-unorm-srgb': {
|
|
1228
|
-
readonly channelType: F32;
|
|
1229
|
-
readonly vectorType: Vec4f;
|
|
1230
|
-
readonly texelSize: 16;
|
|
1231
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1232
|
-
readonly aspects: readonly ["color"];
|
|
1233
|
-
readonly canRenderAttachment: false;
|
|
1234
|
-
readonly canBlend: false;
|
|
1235
|
-
readonly canMultisample: false;
|
|
1236
|
-
readonly canResolve: false;
|
|
1237
|
-
readonly storageBindings: null;
|
|
1238
|
-
};
|
|
1239
|
-
readonly 'astc-12x12-unorm': {
|
|
1240
|
-
readonly channelType: F32;
|
|
1241
|
-
readonly vectorType: Vec4f;
|
|
1242
|
-
readonly texelSize: 16;
|
|
1243
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1244
|
-
readonly aspects: readonly ["color"];
|
|
1245
|
-
readonly canRenderAttachment: false;
|
|
1246
|
-
readonly canBlend: false;
|
|
1247
|
-
readonly canMultisample: false;
|
|
1248
|
-
readonly canResolve: false;
|
|
1249
|
-
readonly storageBindings: null;
|
|
1250
|
-
};
|
|
1251
|
-
readonly 'astc-12x12-unorm-srgb': {
|
|
1252
|
-
readonly channelType: F32;
|
|
1253
|
-
readonly vectorType: Vec4f;
|
|
1254
|
-
readonly texelSize: 16;
|
|
1255
|
-
readonly sampleTypes: readonly ["float", "unfilterable-float"];
|
|
1256
|
-
readonly aspects: readonly ["color"];
|
|
1257
|
-
readonly canRenderAttachment: false;
|
|
1258
|
-
readonly canBlend: false;
|
|
1259
|
-
readonly canMultisample: false;
|
|
1260
|
-
readonly canResolve: false;
|
|
1261
|
-
readonly storageBindings: null;
|
|
47
|
+
type ParseChannelType<T extends GPUTextureFormat> = T extends `${string}uint${string}` ? 'u32' : T extends `${string}sint${string}` ? 'i32' : 'f32';
|
|
48
|
+
type ChannelTypeToSampleType<T extends 'f32' | 'i32' | 'u32'> = {
|
|
49
|
+
f32: F32;
|
|
50
|
+
i32: I32;
|
|
51
|
+
u32: U32;
|
|
52
|
+
}[T];
|
|
53
|
+
type ChannelTypeToVectorType<T extends 'f32' | 'i32' | 'u32'> = {
|
|
54
|
+
f32: Vec4f;
|
|
55
|
+
i32: Vec4i;
|
|
56
|
+
u32: Vec4u;
|
|
57
|
+
}[T];
|
|
58
|
+
type TextureFormats = {
|
|
59
|
+
[K in GPUTextureFormat]: {
|
|
60
|
+
channelType: ChannelTypeToSampleType<ParseChannelType<K>>;
|
|
61
|
+
vectorType: ChannelTypeToVectorType<ParseChannelType<K>>;
|
|
1262
62
|
};
|
|
1263
63
|
};
|
|
1264
|
-
type TextureFormats = typeof textureFormats;
|
|
1265
64
|
|
|
1266
65
|
declare const $internal: unique symbol;
|
|
1267
66
|
/**
|
|
@@ -1447,7 +246,7 @@ interface WgslTextureDepthMultisampled2d extends WgslTexture<{
|
|
|
1447
246
|
multisampled: true;
|
|
1448
247
|
}> {
|
|
1449
248
|
readonly type: 'texture_depth_multisampled_2d';
|
|
1450
|
-
readonly [$repr]:
|
|
249
|
+
readonly [$repr]: textureDepthMultisampled2d;
|
|
1451
250
|
}
|
|
1452
251
|
interface WgslTextureDepth2dArray extends WgslTexture<{
|
|
1453
252
|
dimension: '2d-array';
|
|
@@ -1455,7 +254,7 @@ interface WgslTextureDepth2dArray extends WgslTexture<{
|
|
|
1455
254
|
multisampled: false;
|
|
1456
255
|
}> {
|
|
1457
256
|
readonly type: 'texture_depth_2d_array';
|
|
1458
|
-
readonly [$repr]:
|
|
257
|
+
readonly [$repr]: textureDepth2dArray;
|
|
1459
258
|
}
|
|
1460
259
|
interface WgslTextureDepthCube extends WgslTexture<{
|
|
1461
260
|
dimension: 'cube';
|
|
@@ -1463,7 +262,7 @@ interface WgslTextureDepthCube extends WgslTexture<{
|
|
|
1463
262
|
multisampled: false;
|
|
1464
263
|
}> {
|
|
1465
264
|
readonly type: 'texture_depth_cube';
|
|
1466
|
-
readonly [$repr]:
|
|
265
|
+
readonly [$repr]: textureDepthCube;
|
|
1467
266
|
}
|
|
1468
267
|
interface WgslTextureDepthCubeArray extends WgslTexture<{
|
|
1469
268
|
dimension: 'cube-array';
|
|
@@ -1471,7 +270,7 @@ interface WgslTextureDepthCubeArray extends WgslTexture<{
|
|
|
1471
270
|
multisampled: false;
|
|
1472
271
|
}> {
|
|
1473
272
|
readonly type: 'texture_depth_cube_array';
|
|
1474
|
-
readonly [$repr]:
|
|
273
|
+
readonly [$repr]: textureDepthCubeArray;
|
|
1475
274
|
}
|
|
1476
275
|
interface WgslStorageTexture1d<TFormat extends StorageTextureFormats = StorageTextureFormats, TAccess extends GPUStorageTextureAccess = GPUStorageTextureAccess> extends WgslStorageTexture<{
|
|
1477
276
|
dimension: '1d';
|
|
@@ -2038,6 +837,7 @@ interface UnknownData {
|
|
|
2038
837
|
}
|
|
2039
838
|
declare const UnknownData: UnknownData;
|
|
2040
839
|
|
|
840
|
+
type Origin = 'uniform' | 'readonly' | 'mutable' | 'workgroup' | 'private' | 'function' | 'this-function' | 'handle' | 'argument' | 'runtime' | 'constant' | 'constant-tgpu-const-ref' | 'runtime-tgpu-const-ref';
|
|
2041
841
|
interface Snippet {
|
|
2042
842
|
readonly value: unknown;
|
|
2043
843
|
/**
|
|
@@ -2045,6 +845,7 @@ interface Snippet {
|
|
|
2045
845
|
* E.g. `1.1` is assignable to `f32`, but `1.1` itself is an abstract float
|
|
2046
846
|
*/
|
|
2047
847
|
readonly dataType: AnyData | UnknownData;
|
|
848
|
+
readonly origin: Origin;
|
|
2048
849
|
}
|
|
2049
850
|
interface ResolvedSnippet {
|
|
2050
851
|
readonly value: string;
|
|
@@ -2053,6 +854,7 @@ interface ResolvedSnippet {
|
|
|
2053
854
|
* E.g. `1.1` is assignable to `f32`, but `1.1` itself is an abstract float
|
|
2054
855
|
*/
|
|
2055
856
|
readonly dataType: AnyData;
|
|
857
|
+
readonly origin: Origin;
|
|
2056
858
|
}
|
|
2057
859
|
type MapValueToSnippet<T> = {
|
|
2058
860
|
[K in keyof T]: Snippet;
|
|
@@ -2357,17 +1159,7 @@ type TgpuComputeFnShell<ComputeIn extends IORecord<AnyComputeBuiltin>> = TgpuCom
|
|
|
2357
1159
|
* Raw WGSL function implementation with header and body
|
|
2358
1160
|
* without `fn` keyword and function name
|
|
2359
1161
|
* e.g. `"(x: f32) -> f32 { return x; }"`;
|
|
2360
|
-
*/ ((implementation: string) => TgpuComputeFn<ComputeIn>) & ((strings: TemplateStringsArray, ...values: unknown[]) => TgpuComputeFn<ComputeIn>)
|
|
2361
|
-
/**
|
|
2362
|
-
* @deprecated Invoke the shell as a function instead.
|
|
2363
|
-
*/
|
|
2364
|
-
does: ((implementation: (input: InferIO<ComputeIn>) => undefined) => TgpuComputeFn<ComputeIn>) & /**
|
|
2365
|
-
* @param implementation
|
|
2366
|
-
* Raw WGSL function implementation with header and body
|
|
2367
|
-
* without `fn` keyword and function name
|
|
2368
|
-
* e.g. `"(x: f32) -> f32 { return x; }"`;
|
|
2369
|
-
*/ ((implementation: string) => TgpuComputeFn<ComputeIn>);
|
|
2370
|
-
};
|
|
1162
|
+
*/ ((implementation: string) => TgpuComputeFn<ComputeIn>) & ((strings: TemplateStringsArray, ...values: unknown[]) => TgpuComputeFn<ComputeIn>);
|
|
2371
1163
|
interface TgpuComputeFn<ComputeIn extends IORecord<AnyComputeBuiltin> = any> extends TgpuNamable {
|
|
2372
1164
|
readonly [$internal]: true;
|
|
2373
1165
|
readonly shell: TgpuComputeFnShellHeader<ComputeIn>;
|
|
@@ -2381,11 +1173,15 @@ declare function computeFn<ComputeIn extends IORecord<AnyComputeBuiltin>>(option
|
|
|
2381
1173
|
workgroupSize: number[];
|
|
2382
1174
|
}): TgpuComputeFnShell<ComputeIn>;
|
|
2383
1175
|
|
|
2384
|
-
type DualFn<TImpl extends (...args: never[]) => unknown> = TImpl & {
|
|
1176
|
+
type DualFn<TImpl extends (...args: never[]) => unknown = (...args: never[]) => unknown> = TImpl & {
|
|
2385
1177
|
readonly [$internal]: {
|
|
2386
1178
|
jsImpl: TImpl;
|
|
2387
1179
|
gpuImpl: (...args: MapValueToSnippet<Parameters<TImpl>>) => Snippet;
|
|
2388
1180
|
argConversionHint: FnArgsConversionHint;
|
|
1181
|
+
strictSignature?: {
|
|
1182
|
+
argTypes: AnyData[];
|
|
1183
|
+
returnType: AnyData;
|
|
1184
|
+
} | undefined;
|
|
2389
1185
|
};
|
|
2390
1186
|
};
|
|
2391
1187
|
|
|
@@ -2419,8 +1215,8 @@ interface TgpuAccessor<T extends AnyData = AnyData> extends TgpuNamable {
|
|
|
2419
1215
|
readonly [$internal]: true;
|
|
2420
1216
|
readonly resourceType: 'accessor';
|
|
2421
1217
|
readonly schema: T;
|
|
2422
|
-
readonly defaultValue: TgpuFn<() => T> | TgpuBufferUsage<T> | Infer<T> | undefined;
|
|
2423
|
-
readonly slot: TgpuSlot<TgpuFn<() => T> | TgpuBufferUsage<T> | Infer<T>>;
|
|
1218
|
+
readonly defaultValue: TgpuFn<() => T> | TgpuBufferUsage<T> | TgpuBufferShorthand<T> | Infer<T> | undefined;
|
|
1219
|
+
readonly slot: TgpuSlot<TgpuFn<() => T> | TgpuBufferUsage<T> | TgpuBufferShorthand<T> | Infer<T>>;
|
|
2424
1220
|
readonly [$gpuValueOf]: InferGPU<T>;
|
|
2425
1221
|
readonly value: InferGPU<T>;
|
|
2426
1222
|
readonly $: InferGPU<T>;
|
|
@@ -2470,7 +1266,8 @@ declare function fn<Args extends AnyData[] | [], Return extends AnyData>(argType
|
|
|
2470
1266
|
declare function isTgpuFn<Args extends AnyData[] | [], Return extends AnyData>(value: unknown | TgpuFn<(...args: Args) => Return>): value is TgpuFn<(...args: Args) => Return>;
|
|
2471
1267
|
|
|
2472
1268
|
type FragmentInConstrained = IORecord<BaseIOData | Decorated<BaseIOData, (Location | Interpolate)[]> | AnyFragmentInputBuiltin>;
|
|
2473
|
-
type
|
|
1269
|
+
type FragmentColorValue = Vec4f | Vec4i | Vec4u;
|
|
1270
|
+
type FragmentOutConstrained = IOLayout<FragmentColorValue | Decorated<FragmentColorValue, (Location | Interpolate)[]> | AnyFragmentOutputBuiltin>;
|
|
2474
1271
|
/**
|
|
2475
1272
|
* Describes a fragment entry function signature (its arguments, return type and targets)
|
|
2476
1273
|
*/
|
|
@@ -2487,22 +1284,12 @@ type TgpuFragmentFnShellHeader<FragmentIn extends FragmentInConstrained, Fragmen
|
|
|
2487
1284
|
*/
|
|
2488
1285
|
type TgpuFragmentFnShell<FragmentIn extends FragmentInConstrained, FragmentOut extends FragmentOutConstrained> = TgpuFragmentFnShellHeader<FragmentIn, FragmentOut> /**
|
|
2489
1286
|
* Creates a type-safe implementation of this signature
|
|
2490
|
-
*/ & ((implementation: (input: InferIO<FragmentIn>, out: FragmentOut extends IORecord ? WgslStruct<FragmentOut> : FragmentOut) => InferIO<FragmentOut>) => TgpuFragmentFn<OmitBuiltins<FragmentIn>,
|
|
1287
|
+
*/ & ((implementation: (input: InferIO<FragmentIn>, out: FragmentOut extends IORecord ? WgslStruct<FragmentOut> : FragmentOut) => InferIO<FragmentOut>) => TgpuFragmentFn<OmitBuiltins<FragmentIn>, FragmentOut>) & /**
|
|
2491
1288
|
* @param implementation
|
|
2492
1289
|
* Raw WGSL function implementation with header and body
|
|
2493
1290
|
* without `fn` keyword and function name
|
|
2494
1291
|
* e.g. `"(x: f32) -> f32 { return x; }"`;
|
|
2495
|
-
*/ ((implementation: string) => TgpuFragmentFn<OmitBuiltins<FragmentIn>,
|
|
2496
|
-
/**
|
|
2497
|
-
* @deprecated Invoke the shell as a function instead.
|
|
2498
|
-
*/
|
|
2499
|
-
does: ((implementation: (input: InferIO<FragmentIn>) => InferIO<FragmentOut>) => TgpuFragmentFn<OmitBuiltins<FragmentIn>, OmitBuiltins<FragmentOut>>) & /**
|
|
2500
|
-
* @param implementation
|
|
2501
|
-
* Raw WGSL function implementation with header and body
|
|
2502
|
-
* without `fn` keyword and function name
|
|
2503
|
-
* e.g. `"(x: f32) -> f32 { return x; }"`;
|
|
2504
|
-
*/ ((implementation: string) => TgpuFragmentFn<OmitBuiltins<FragmentIn>, OmitBuiltins<FragmentOut>>);
|
|
2505
|
-
};
|
|
1292
|
+
*/ ((implementation: string) => TgpuFragmentFn<OmitBuiltins<FragmentIn>, FragmentOut>) & ((strings: TemplateStringsArray, ...values: unknown[]) => TgpuFragmentFn<OmitBuiltins<FragmentIn>, FragmentOut>);
|
|
2506
1293
|
interface TgpuFragmentFn<Varying extends FragmentInConstrained = FragmentInConstrained, Output extends FragmentOutConstrained = FragmentOutConstrained> extends TgpuNamable {
|
|
2507
1294
|
readonly [$internal]: true;
|
|
2508
1295
|
readonly shell: TgpuFragmentFnShellHeader<Varying, Output>;
|
|
@@ -2533,12 +1320,7 @@ type TgpuVertexFnShellHeader<VertexIn extends VertexInConstrained, VertexOut ext
|
|
|
2533
1320
|
* Allows creating tgpu vertex functions by calling this shell
|
|
2534
1321
|
* and passing the implementation (as WGSL string or JS function) as the argument.
|
|
2535
1322
|
*/
|
|
2536
|
-
type TgpuVertexFnShell<VertexIn extends VertexInConstrained, VertexOut extends VertexOutConstrained> = TgpuVertexFnShellHeader<VertexIn, VertexOut> & ((implementation: (input: InferIO<VertexIn>, out: WgslStruct<VertexOut>) => InferIO<VertexOut>) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>) & ((implementation: string) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>) & ((strings: TemplateStringsArray, ...values: unknown[]) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>)
|
|
2537
|
-
/**
|
|
2538
|
-
* @deprecated Invoke the shell as a function instead.
|
|
2539
|
-
*/
|
|
2540
|
-
does: ((implementation: (input: InferIO<VertexIn>) => InferIO<VertexOut>) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>) & ((implementation: string) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>);
|
|
2541
|
-
};
|
|
1323
|
+
type TgpuVertexFnShell<VertexIn extends VertexInConstrained, VertexOut extends VertexOutConstrained> = TgpuVertexFnShellHeader<VertexIn, VertexOut> & ((implementation: (input: InferIO<VertexIn>, out: WgslStruct<VertexOut>) => InferIO<VertexOut>) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>) & ((implementation: string) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>) & ((strings: TemplateStringsArray, ...values: unknown[]) => TgpuVertexFn<OmitBuiltins<VertexIn>, OmitBuiltins<VertexOut>>);
|
|
2542
1324
|
interface TgpuVertexFn<VertexIn extends VertexInConstrained = VertexInConstrained, VertexOut extends VertexOutConstrained = VertexOutConstrained> extends TgpuNamable {
|
|
2543
1325
|
readonly [$internal]: true;
|
|
2544
1326
|
readonly shell: TgpuVertexFnShellHeader<VertexIn, VertexOut>;
|
|
@@ -2672,25 +1454,35 @@ interface TgpuRenderPipeline<Output extends IOLayout = IOLayout> extends TgpuNam
|
|
|
2672
1454
|
with(bindGroup: TgpuBindGroup): this;
|
|
2673
1455
|
withColorAttachment(attachment: FragmentOutToColorAttachment<Output>): this;
|
|
2674
1456
|
withDepthStencilAttachment(attachment: DepthStencilAttachment): this;
|
|
1457
|
+
withStencilReference(reference: GPUStencilValue): this;
|
|
2675
1458
|
withIndexBuffer(buffer: TgpuBuffer<AnyWgslData> & IndexFlag, offsetElements?: number, sizeElements?: number): this & HasIndexBuffer;
|
|
2676
1459
|
withIndexBuffer(buffer: GPUBuffer, indexFormat: GPUIndexFormat, offsetBytes?: number, sizeBytes?: number): this & HasIndexBuffer;
|
|
2677
1460
|
draw(vertexCount: number, instanceCount?: number, firstVertex?: number, firstInstance?: number): void;
|
|
2678
1461
|
}
|
|
2679
|
-
type FragmentOutToTargets<T extends IOLayout> = T extends IOData ? GPUColorTargetState : T extends Record<string, unknown> ? {
|
|
2680
|
-
[Key in keyof T]: GPUColorTargetState;
|
|
1462
|
+
type FragmentOutToTargets<T extends IOLayout> = T extends IOData ? T extends Decorated ? Record<string, never> : GPUColorTargetState : T extends Record<string, unknown> ? {
|
|
1463
|
+
[Key in keyof T as T[Key] extends Decorated ? never : Key]: GPUColorTargetState;
|
|
1464
|
+
} : T extends {
|
|
1465
|
+
type: 'void';
|
|
1466
|
+
} ? Record<string, never> : never;
|
|
1467
|
+
type FragmentOutToColorAttachment<T extends IOLayout> = T extends IOData ? T extends Decorated ? Record<string, never> : ColorAttachment : T extends Record<string, unknown> ? {
|
|
1468
|
+
[Key in keyof T as T[Key] extends Decorated ? never : Key]: ColorAttachment;
|
|
2681
1469
|
} : T extends {
|
|
2682
1470
|
type: 'void';
|
|
2683
1471
|
} ? Record<string, never> : never;
|
|
2684
|
-
type FragmentOutToColorAttachment<T extends IOLayout> = T extends IOData ? ColorAttachment : T extends Record<string, unknown> ? {
|
|
2685
|
-
[Key in keyof T]: ColorAttachment;
|
|
2686
|
-
} : never;
|
|
2687
1472
|
type AnyFragmentTargets = GPUColorTargetState | Record<string, GPUColorTargetState>;
|
|
1473
|
+
interface ColorTextureConstraint {
|
|
1474
|
+
readonly [$internal]: TextureInternals;
|
|
1475
|
+
readonly resourceType: 'texture';
|
|
1476
|
+
readonly props: {
|
|
1477
|
+
format: GPUTextureFormat;
|
|
1478
|
+
};
|
|
1479
|
+
}
|
|
2688
1480
|
interface ColorAttachment {
|
|
2689
1481
|
/**
|
|
2690
1482
|
* A {@link GPUTextureView} describing the texture subresource that will be output to for this
|
|
2691
1483
|
* color attachment.
|
|
2692
1484
|
*/
|
|
2693
|
-
view: (
|
|
1485
|
+
view: (ColorTextureConstraint & RenderFlag) | GPUTextureView | TgpuTextureView<WgslTexture> | TgpuTextureRenderView;
|
|
2694
1486
|
/**
|
|
2695
1487
|
* Indicates the depth slice index of {@link GPUTextureViewDimension#"3d"} {@link GPURenderPassColorAttachment#view}
|
|
2696
1488
|
* that will be output to for this color attachment.
|
|
@@ -2723,12 +1515,20 @@ interface ColorAttachment {
|
|
|
2723
1515
|
*/
|
|
2724
1516
|
storeOp: GPUStoreOp;
|
|
2725
1517
|
}
|
|
1518
|
+
type DepthStencilFormat = 'stencil8' | 'depth16unorm' | 'depth24plus' | 'depth24plus-stencil8' | 'depth32float' | 'depth32float-stencil8';
|
|
1519
|
+
interface DepthStencilTextureConstraint {
|
|
1520
|
+
readonly [$internal]: TextureInternals;
|
|
1521
|
+
readonly resourceType: 'texture';
|
|
1522
|
+
readonly props: {
|
|
1523
|
+
format: DepthStencilFormat;
|
|
1524
|
+
};
|
|
1525
|
+
}
|
|
2726
1526
|
interface DepthStencilAttachment {
|
|
2727
1527
|
/**
|
|
2728
1528
|
* A {@link GPUTextureView} | ({@link TgpuTexture} & {@link RenderFlag}) describing the texture subresource that will be output to
|
|
2729
1529
|
* and read from for this depth/stencil attachment.
|
|
2730
1530
|
*/
|
|
2731
|
-
view: (
|
|
1531
|
+
view: (DepthStencilTextureConstraint & RenderFlag) | TgpuTextureView<WgslTextureDepth2d | WgslTextureDepthMultisampled2d> | TgpuTextureRenderView | GPUTextureView;
|
|
2732
1532
|
/**
|
|
2733
1533
|
* Indicates the value to clear {@link GPURenderPassDepthStencilAttachment#view}'s depth component
|
|
2734
1534
|
* to prior to executing the render pass. Ignored if {@link GPURenderPassDepthStencilAttachment#depthLoadOp}
|
|
@@ -2795,6 +1595,7 @@ type TgpuRenderPipelinePriors = {
|
|
|
2795
1595
|
readonly bindGroupLayoutMap?: Map<TgpuBindGroupLayout, TgpuBindGroup> | undefined;
|
|
2796
1596
|
readonly colorAttachment?: AnyFragmentColorAttachment | undefined;
|
|
2797
1597
|
readonly depthStencilAttachment?: DepthStencilAttachment | undefined;
|
|
1598
|
+
readonly stencilReference?: GPUStencilValue | undefined;
|
|
2798
1599
|
readonly indexBuffer?: {
|
|
2799
1600
|
buffer: TgpuBuffer<AnyWgslData> & IndexFlag | GPUBuffer;
|
|
2800
1601
|
indexFormat: GPUIndexFormat;
|
|
@@ -2897,18 +1698,19 @@ declare function isVariable<T extends TgpuVar>(value: T | unknown): value is T;
|
|
|
2897
1698
|
declare const wgslExtensions: readonly ["f16", "clip_distances", "dual_source_blending", "subgroups", "primitive_index"];
|
|
2898
1699
|
type WgslExtension = (typeof wgslExtensions)[number];
|
|
2899
1700
|
|
|
2900
|
-
type ResolvableObject = SelfResolvable | TgpuBufferUsage | TgpuConst | TgpuDeclare | TgpuFn | TgpuComputeFn | TgpuFragmentFn | TgpuComputePipeline | TgpuRenderPipeline | TgpuVertexFn | TgpuSampler | TgpuAccessor | TgpuExternalTexture | TgpuTexture | TgpuTextureView | TgpuVar | AnyVecInstance | AnyMatInstance | AnyData |
|
|
1701
|
+
type ResolvableObject = SelfResolvable | TgpuBufferUsage | TgpuConst | TgpuDeclare | TgpuFn | TgpuComputeFn | TgpuFragmentFn | TgpuComputePipeline | TgpuRenderPipeline | TgpuVertexFn | TgpuSampler | TgpuAccessor | TgpuExternalTexture | TgpuTexture | TgpuTextureView | TgpuVar | AnyVecInstance | AnyMatInstance | AnyData | ((...args: never[]) => unknown);
|
|
2901
1702
|
type Wgsl = Eventual<string | number | boolean | ResolvableObject>;
|
|
2902
1703
|
type TgpuShaderStage = 'compute' | 'vertex' | 'fragment';
|
|
2903
1704
|
interface FnToWgslOptions {
|
|
2904
|
-
|
|
2905
|
-
|
|
1705
|
+
functionType: 'normal' | TgpuShaderStage;
|
|
1706
|
+
argTypes: AnyData[];
|
|
2906
1707
|
/**
|
|
2907
1708
|
* The return type of the function. If undefined, the type should be inferred
|
|
2908
1709
|
* from the implementation (relevant for shellless functions).
|
|
2909
1710
|
*/
|
|
2910
1711
|
returnType: AnyData | undefined;
|
|
2911
1712
|
body: Block;
|
|
1713
|
+
params: FuncParameter[];
|
|
2912
1714
|
externalMap: Record<string, unknown>;
|
|
2913
1715
|
}
|
|
2914
1716
|
type ItemLayer = {
|
|
@@ -2917,6 +1719,7 @@ type ItemLayer = {
|
|
|
2917
1719
|
};
|
|
2918
1720
|
type FunctionScopeLayer = {
|
|
2919
1721
|
type: 'functionScope';
|
|
1722
|
+
functionType: 'normal' | 'compute' | 'vertex' | 'fragment';
|
|
2920
1723
|
args: Snippet[];
|
|
2921
1724
|
argAliases: Record<string, Snippet>;
|
|
2922
1725
|
externalMap: Record<string, unknown>;
|
|
@@ -2938,7 +1741,7 @@ interface ItemStateStack {
|
|
|
2938
1741
|
popItem(): void;
|
|
2939
1742
|
pushSlotBindings(pairs: SlotValuePair<unknown>[]): void;
|
|
2940
1743
|
popSlotBindings(): void;
|
|
2941
|
-
pushFunctionScope(args: Snippet[], argAliases: Record<string, Snippet>,
|
|
1744
|
+
pushFunctionScope(functionType: 'normal' | TgpuShaderStage, args: Snippet[], argAliases: Record<string, Snippet>,
|
|
2942
1745
|
/**
|
|
2943
1746
|
* The return type of the function. If undefined, the type should be inferred
|
|
2944
1747
|
* from the implementation (relevant for shellless functions).
|
|
@@ -3144,29 +1947,27 @@ declare function isBufferShorthand<TData extends BaseData>(value: unknown | Tgpu
|
|
|
3144
1947
|
*/
|
|
3145
1948
|
interface ShelllessImpl extends SelfResolvable {
|
|
3146
1949
|
readonly resourceType: 'shellless-impl';
|
|
1950
|
+
readonly argTypes: AnyData[];
|
|
3147
1951
|
readonly [$getNameForward]: unknown;
|
|
3148
1952
|
}
|
|
3149
1953
|
|
|
3150
|
-
interface ShelllessVariant {
|
|
3151
|
-
argTypes: AnyData[];
|
|
3152
|
-
value: ShelllessImpl;
|
|
3153
|
-
}
|
|
3154
1954
|
type AnyFn = (...args: never[]) => unknown;
|
|
3155
1955
|
declare class ShelllessRepository {
|
|
3156
|
-
cache: Map<AnyFn,
|
|
1956
|
+
cache: Map<AnyFn, ShelllessImpl[]>;
|
|
3157
1957
|
get(fn: AnyFn, argSnippets: Snippet[] | undefined): ShelllessImpl | undefined;
|
|
3158
1958
|
}
|
|
3159
1959
|
|
|
3160
1960
|
type GenerationCtx = ResolutionCtx & {
|
|
3161
1961
|
readonly pre: string;
|
|
3162
1962
|
/**
|
|
3163
|
-
* Used by `
|
|
1963
|
+
* Used by `typedExpression` to signal downstream
|
|
3164
1964
|
* expression resolution what type is expected of them.
|
|
3165
1965
|
*
|
|
3166
1966
|
* It is used exclusively for inferring the types of structs and arrays.
|
|
3167
|
-
* It is modified exclusively by `
|
|
1967
|
+
* It is modified exclusively by `typedExpression` function.
|
|
3168
1968
|
*/
|
|
3169
1969
|
expectedType: AnyData | undefined;
|
|
1970
|
+
readonly topFunctionScope: FunctionScopeLayer | undefined;
|
|
3170
1971
|
readonly topFunctionReturnType: AnyData | undefined;
|
|
3171
1972
|
indent(): string;
|
|
3172
1973
|
dedent(): string;
|
|
@@ -3256,14 +2057,22 @@ interface TgpuGuardedComputePipeline<TArgs extends number[] = number[]> {
|
|
|
3256
2057
|
* "guarded" by a bounds check.
|
|
3257
2058
|
*/
|
|
3258
2059
|
dispatchThreads(...args: TArgs): void;
|
|
2060
|
+
/**
|
|
2061
|
+
* The underlying pipeline used during `dispatchThreads`.
|
|
2062
|
+
*/
|
|
2063
|
+
pipeline: TgpuComputePipeline;
|
|
2064
|
+
/**
|
|
2065
|
+
* The buffer used to automatically pass the thread count to the underlying pipeline during `dispatchThreads`.
|
|
2066
|
+
* For pipelines with a dimension count lower than 3, the remaining coordinates are expected to be 1.
|
|
2067
|
+
*/
|
|
2068
|
+
sizeUniform: TgpuUniform<Vec3u>;
|
|
3259
2069
|
}
|
|
3260
2070
|
interface WithCompute {
|
|
3261
2071
|
createPipeline(): TgpuComputePipeline;
|
|
3262
2072
|
}
|
|
3263
|
-
type
|
|
3264
|
-
|
|
3265
|
-
|
|
3266
|
-
] : [
|
|
2073
|
+
type IsEmptyRecord<T> = T extends Record<string, never> ? true : false;
|
|
2074
|
+
type OptionalArgs<T> = IsEmptyRecord<T> extends true ? [] | [T] : [T];
|
|
2075
|
+
type ValidateFragmentIn<VertexOut extends VertexOutConstrained, FragmentIn extends FragmentInConstrained, FragmentOut extends FragmentOutConstrained> = UndecorateRecord<FragmentIn> extends Partial<UndecorateRecord<VertexOut>> ? UndecorateRecord<VertexOut> extends UndecorateRecord<FragmentIn> ? OptionalArgs<FragmentOutToTargets<FragmentOut>> extends infer Args ? Args extends [infer T] ? [entryFn: TgpuFragmentFn<FragmentIn, FragmentOut>, targets: T] : Args extends [] | [infer T] ? [entryFn: TgpuFragmentFn<FragmentIn, FragmentOut>] | [entryFn: TgpuFragmentFn<FragmentIn, FragmentOut>, targets: T] : never : never : [
|
|
3267
2076
|
entryFn: 'n/a',
|
|
3268
2077
|
targets: 'n/a',
|
|
3269
2078
|
MissingFromVertexOutput: {
|
|
@@ -3348,7 +2157,7 @@ interface WithBinding {
|
|
|
3348
2157
|
* ```
|
|
3349
2158
|
*/
|
|
3350
2159
|
createGuardedComputePipeline<TArgs extends number[]>(callback: (...args: TArgs) => void): TgpuGuardedComputePipeline<TArgs>;
|
|
3351
|
-
withVertex<VertexIn extends VertexInConstrained, VertexOut extends VertexOutConstrained>(entryFn: TgpuVertexFn<VertexIn, VertexOut>,
|
|
2160
|
+
withVertex<VertexIn extends VertexInConstrained, VertexOut extends VertexOutConstrained>(entryFn: TgpuVertexFn<VertexIn, VertexOut>, ...args: OptionalArgs<LayoutToAllowedAttribs<OmitBuiltins<VertexIn>>>): WithVertex<VertexOut>;
|
|
3352
2161
|
with<T>(slot: TgpuSlot<T>, value: Eventual<T>): WithBinding;
|
|
3353
2162
|
with<T extends WgslTexture | WgslStorageTexture>(accessor: TgpuAccessor<T>, value: TgpuTextureView<T> | Infer<T>): WithBinding;
|
|
3354
2163
|
with<T extends AnyWgslData>(accessor: TgpuAccessor<T>, value: TgpuFn<() => T> | TgpuBufferUsage<T> | TgpuBufferShorthand<T> | Infer<T>): WithBinding;
|
|
@@ -3931,33 +2740,26 @@ type PropsForSchema<T extends WgslTexture | WgslStorageTexture> = T extends Wgsl
|
|
|
3931
2740
|
size: readonly number[];
|
|
3932
2741
|
format: T['format'];
|
|
3933
2742
|
} & OptionalDimension<T['dimension']> : never;
|
|
3934
|
-
type TextureAspect = 'color' | 'depth' | 'stencil';
|
|
3935
|
-
type DepthStencilFormats = 'depth24plus-stencil8' | 'depth32float-stencil8';
|
|
3936
|
-
type DepthFormats = 'depth16unorm' | 'depth24plus' | 'depth32float';
|
|
3937
|
-
type StencilFormats = 'stencil8';
|
|
3938
|
-
type AspectsForFormat<T extends GPUTextureFormat> = GPUTextureFormat extends T ? TextureAspect[] : T extends DepthStencilFormats ? ('depth' | 'stencil')[] : T extends DepthFormats ? 'depth'[] : T extends StencilFormats ? 'stencil'[] : 'color'[];
|
|
3939
2743
|
type CopyCompatibleTexture<T extends TextureProps> = TgpuTexture<{
|
|
3940
2744
|
size: T['size'];
|
|
3941
2745
|
format: T['format'];
|
|
3942
2746
|
sampleCount?: T['sampleCount'];
|
|
3943
2747
|
}>;
|
|
3944
|
-
|
|
3945
|
-
* @param TProps all properties that distinguish this texture apart from other textures on the type level.
|
|
3946
|
-
*/
|
|
3947
|
-
interface TgpuTexture<TProps extends TextureProps = TextureProps> extends TgpuNamable {
|
|
2748
|
+
interface TgpuTexture<TProps extends TextureProps = any> extends TgpuNamable {
|
|
3948
2749
|
readonly [$internal]: TextureInternals;
|
|
3949
2750
|
readonly resourceType: 'texture';
|
|
3950
2751
|
readonly props: TProps;
|
|
3951
|
-
readonly aspects: AspectsForFormat<TProps['format']>;
|
|
3952
2752
|
readonly destroyed: boolean;
|
|
3953
2753
|
readonly usableAsStorage: boolean;
|
|
3954
2754
|
readonly usableAsSampled: boolean;
|
|
3955
2755
|
readonly usableAsRender: boolean;
|
|
3956
2756
|
$usage<T extends AllowedUsages<TProps>[]>(...usages: T): this & UnionToIntersection<LiteralToExtensionMap[T[number]]>;
|
|
3957
2757
|
createView(...args: this['usableAsSampled'] extends true ? [] : [ValidateTextureViewSchema<this, WgslTexture>]): TgpuTextureView<DefaultViewSchema<TProps>>;
|
|
3958
|
-
createView
|
|
3959
|
-
|
|
2758
|
+
createView(schema: 'render', viewDescriptor?: TgpuTextureViewDescriptor): TgpuTextureRenderView;
|
|
2759
|
+
createView<T extends WgslTexture>(schema: ValidateTextureViewSchema<this, T>, viewDescriptor?: TgpuTextureViewDescriptor & {
|
|
2760
|
+
sampleType?: T['sampleType'] extends F32 ? 'float' | 'unfilterable-float' : never;
|
|
3960
2761
|
}): TgpuTextureView<T>;
|
|
2762
|
+
createView<T extends WgslStorageTexture>(schema: ValidateTextureViewSchema<this, T>, viewDescriptor?: TgpuTextureViewDescriptor): TgpuTextureView<T>;
|
|
3961
2763
|
clear(mipLevel?: number | 'all'): void;
|
|
3962
2764
|
generateMipmaps(baseMipLevel?: number, mipLevels?: number): void;
|
|
3963
2765
|
write(source: ExternalImageSource | ExternalImageSource[]): void;
|
|
@@ -3973,6 +2775,11 @@ interface TgpuTextureView<TSchema extends WgslStorageTexture | WgslTexture = Wgs
|
|
|
3973
2775
|
value: Infer<TSchema>;
|
|
3974
2776
|
$: Infer<TSchema>;
|
|
3975
2777
|
}
|
|
2778
|
+
interface TgpuTextureRenderView {
|
|
2779
|
+
readonly [$internal]: TextureViewInternals;
|
|
2780
|
+
readonly resourceType: 'texture-view';
|
|
2781
|
+
readonly descriptor: TgpuTextureViewDescriptor;
|
|
2782
|
+
}
|
|
3976
2783
|
declare function isTexture<T extends TgpuTexture>(value: unknown | T): value is T;
|
|
3977
2784
|
|
|
3978
2785
|
/**
|
|
@@ -4076,13 +2883,39 @@ type ValidSampledUsage<TTexture extends TgpuTexture, TSchema extends WgslTexture
|
|
|
4076
2883
|
/**
|
|
4077
2884
|
* Validates texture view schema against texture usage
|
|
4078
2885
|
*/
|
|
4079
|
-
type ValidateTextureViewSchema<TTexture extends TgpuTexture
|
|
2886
|
+
type ValidateTextureViewSchema<TTexture extends TgpuTexture, TSchema extends WgslTexture | WgslStorageTexture> = TSchema extends WgslStorageTexture ? SelfOrErrors<TSchema, ValidStorageUsage<TTexture, TSchema>> : TSchema extends WgslTexture ? SelfOrErrors<TSchema, ValidSampledUsage<TTexture, TSchema>> : never;
|
|
4080
2887
|
type ExtractInvalidSchemaError<T, TPrefix extends string = ''> = [
|
|
4081
2888
|
T
|
|
4082
2889
|
] extends [{
|
|
4083
2890
|
readonly [$invalidSchemaReason]: string;
|
|
4084
2891
|
}] ? `${TPrefix}${T[typeof $invalidSchemaReason]}` : never;
|
|
4085
2892
|
|
|
2893
|
+
type RefFn = <T>(value: T) => ref<T>;
|
|
2894
|
+
/**
|
|
2895
|
+
* A reference to a value `T`. Can be passed to other functions to give them
|
|
2896
|
+
* mutable access to the underlying value.
|
|
2897
|
+
*
|
|
2898
|
+
* Conceptually, it represents a WGSL pointer.
|
|
2899
|
+
*/
|
|
2900
|
+
interface ref<T> {
|
|
2901
|
+
readonly [$internal]: unknown;
|
|
2902
|
+
readonly type: 'ref';
|
|
2903
|
+
/**
|
|
2904
|
+
* Derefences the reference, and gives access to the underlying value.
|
|
2905
|
+
*
|
|
2906
|
+
* @example ```ts
|
|
2907
|
+
* const boid = Boid({ pos: d.vec3f(3, 2, 1) });
|
|
2908
|
+
* const posRef = d.ref(boid.pos);
|
|
2909
|
+
*
|
|
2910
|
+
* // Actually updates `boid.pos`
|
|
2911
|
+
* posRef.$ = d.vec3f(1, 2, 3);
|
|
2912
|
+
* console.log(boid.pos); // Output: vec3f(1, 2, 3)
|
|
2913
|
+
* ```
|
|
2914
|
+
*/
|
|
2915
|
+
$: T;
|
|
2916
|
+
}
|
|
2917
|
+
declare const ref: DualFn<RefFn>;
|
|
2918
|
+
|
|
4086
2919
|
type DecoratedLocation<T extends BaseData> = Decorated<T, Location[]>;
|
|
4087
2920
|
interface BaseData {
|
|
4088
2921
|
readonly [$internal]: true | Record<string, any>;
|
|
@@ -5042,7 +3875,8 @@ interface Ptr<TAddr extends AddressSpace = AddressSpace, TInner extends Storable
|
|
|
5042
3875
|
readonly inner: TInner;
|
|
5043
3876
|
readonly addressSpace: TAddr;
|
|
5044
3877
|
readonly access: TAccess;
|
|
5045
|
-
readonly
|
|
3878
|
+
readonly implicit: boolean;
|
|
3879
|
+
readonly [$repr]: ref<Infer<TInner>>;
|
|
5046
3880
|
readonly [$invalidSchemaReason]: 'Pointers are not host-shareable';
|
|
5047
3881
|
}
|
|
5048
3882
|
/**
|
|
@@ -5122,7 +3956,7 @@ type TextureSampleTypes = F32 | I32 | U32;
|
|
|
5122
3956
|
type ScalarData = Bool | F32 | F16 | I32 | U32 | AbstractInt | AbstractFloat;
|
|
5123
3957
|
type VecData = Vec2f | Vec2h | Vec2i | Vec2u | Vec2b | Vec3f | Vec3h | Vec3i | Vec3u | Vec3b | Vec4f | Vec4h | Vec4i | Vec4u | Vec4b;
|
|
5124
3958
|
type MatData = Mat2x2f | Mat3x3f | Mat4x4f;
|
|
5125
|
-
type StorableData = ScalarData | VecData | MatData | Atomic | WgslArray | WgslStruct;
|
|
3959
|
+
type StorableData = ScalarData | VecData | MatData | Atomic<I32> | Atomic<U32> | WgslArray | WgslStruct;
|
|
5126
3960
|
type AnyWgslData = Bool | F32 | F16 | I32 | U32 | U16 | Vec2f | Vec2h | Vec2i | Vec2u | Vec2b | Vec3f | Vec3h | Vec3i | Vec3u | Vec3b | Vec4f | Vec4h | Vec4i | Vec4u | Vec4b | Mat2x2f | Mat3x3f | Mat4x4f | WgslStruct | WgslArray | Ptr | Atomic<U32> | Atomic<I32> | Decorated | AbstractInt | AbstractFloat | Void | WgslTexture | WgslStorageTexture | WgslExternalTexture | WgslSampler | WgslComparisonSampler;
|
|
5127
3961
|
declare function isWgslData(value: unknown): value is AnyWgslData;
|
|
5128
3962
|
/**
|
|
@@ -5175,10 +4009,15 @@ declare function isInterpolateAttrib<T extends Interpolate<InterpolationType>>(v
|
|
|
5175
4009
|
declare function isBuiltinAttrib<T extends Builtin<string>>(value: unknown | T): value is T;
|
|
5176
4010
|
declare function isDecorated<T extends Decorated>(value: unknown | T): value is T;
|
|
5177
4011
|
|
|
4012
|
+
type DeepReadonly<T> = T extends {
|
|
4013
|
+
[$internal]: unknown;
|
|
4014
|
+
} ? T : T extends unknown[] ? ReadonlyArray<DeepReadonly<T[number]>> : T extends Record<string, unknown> ? {
|
|
4015
|
+
readonly [K in keyof T]: DeepReadonly<T[K]>;
|
|
4016
|
+
} : T;
|
|
5178
4017
|
interface TgpuConst<TDataType extends AnyWgslData = AnyWgslData> extends TgpuNamable {
|
|
5179
|
-
readonly [$gpuValueOf]: InferGPU<TDataType
|
|
5180
|
-
readonly value: InferGPU<TDataType
|
|
5181
|
-
readonly $: InferGPU<TDataType
|
|
4018
|
+
readonly [$gpuValueOf]: DeepReadonly<InferGPU<TDataType>>;
|
|
4019
|
+
readonly value: DeepReadonly<InferGPU<TDataType>>;
|
|
4020
|
+
readonly $: DeepReadonly<InferGPU<TDataType>>;
|
|
5182
4021
|
readonly [$internal]: {
|
|
5183
4022
|
/** Makes it differentiable on the type level. Does not exist at runtime. */
|
|
5184
4023
|
dataType?: TDataType;
|
|
@@ -5189,4 +4028,4 @@ interface TgpuConst<TDataType extends AnyWgslData = AnyWgslData> extends TgpuNam
|
|
|
5189
4028
|
*/
|
|
5190
4029
|
declare function constant<TDataType extends AnyWgslData>(dataType: TDataType, value: InferGPU<TDataType>): TgpuConst<TDataType>;
|
|
5191
4030
|
|
|
5192
|
-
export { $internal as $, type AnyData as A,
|
|
4031
|
+
export { $internal as $, type AnyData as A, computeFn as B, type Configurable as C, type Disarray as D, declare as E, isBuffer as F, isUsableAsVertex as G, isDerived as H, type InferGPU as I, isSlot as J, isComparisonSampler as K, type LogResources as L, isSampler as M, isTexture as N, type Origin as O, isUsableAsRender as P, isUsableAsSampled as Q, type ResolvedSnippet as R, ShelllessRepository as S, type TgpuSlot as T, isUsableAsStorage as U, isUsableAsUniform as V, type WgslExtension as W, isBufferShorthand as X, isTgpuFn as Y, isVariable as Z, type TgpuGuardedComputePipeline as _, type TgpuDerived as a, type StorableData as a$, type ValidateBufferSchema as a0, type ValidateStorageSchema as a1, type ValidateUniformSchema as a2, type WithBinding as a3, type WithCompute as a4, type WithFragment as a5, type WithVertex as a6, type Storage as a7, type StorageFlag as a8, type TgpuRenderPipeline as a9, type BindLayoutEntry as aA, type ExtractBindGroupInputFromLayout as aB, type LayoutEntryToInput as aC, type TgpuLayoutComparisonSampler as aD, type TgpuLayoutEntry as aE, type TgpuLayoutExternalTexture as aF, type TgpuLayoutSampler as aG, type TgpuLayoutStorage as aH, type TgpuLayoutTexture as aI, type TgpuLayoutUniform as aJ, type TgpuFnShell as aK, type TgpuVertexFn as aL, type TgpuVertexFnShell as aM, type TgpuFragmentFn as aN, type TgpuFragmentFnShell as aO, type TgpuComputeFn as aP, type TgpuComputeFnShell as aQ, type TgpuDeclare as aR, type INTERNAL_GlobalExt as aS, type Vec2f as aT, type Bool as aU, type F16 as aV, type F32 as aW, type I32 as aX, type U16 as aY, type U32 as aZ, type WgslStruct as a_, type TgpuComputePipeline as aa, type IndexFlag as ab, type Uniform as ac, type UniformFlag as ad, type ValidUsagesFor as ae, type Vertex as af, type VertexFlag as ag, type TgpuBufferMutable as ah, type TgpuBufferReadonly as ai, type TgpuBufferUniform as aj, type TgpuMutable as ak, type TgpuReadonly as al, type TgpuUniform as am, type Eventual as an, type TgpuTexture as ao, type TgpuTextureView as ap, type TextureProps as aq, type RenderFlag as ar, type SampledFlag as as, type TgpuConst as at, type VariableScope as au, type TgpuComparisonSampler as av, type TgpuFixedComparisonSampler as aw, type TgpuFixedSampler as ax, type TgpuSampler as ay, type TgpuQuerySet as az, type TgpuBindGroupLayout as b, textureCubeArray as b$, type Ptr as b0, type Vec2b as b1, type Vec2h as b2, type Vec2i as b3, type Vec2u as b4, type Vec3b as b5, type Vec3f as b6, type Vec3h as b7, type Vec3i as b8, type Vec3u as b9, type Location as bA, type m2x2f as bB, type m3x3f as bC, type m4x4f as bD, type Mat2x2f as bE, type Mat3x3f as bF, type Mat4x4f as bG, type Size as bH, type v2b as bI, type v2f as bJ, type v2i as bK, type v2u as bL, type v3b as bM, type v3f as bN, type v3i as bO, type v3u as bP, type v4b as bQ, type v4f as bR, type v4i as bS, type v4u as bT, type AnyLooseData as bU, type LooseDecorated as bV, texture1d as bW, texture2d as bX, texture2dArray as bY, texture3d as bZ, textureCube as b_, type Vec4b as ba, type Vec4f as bb, type Vec4h as bc, type Vec4i as bd, type Vec4u as be, type BaseData as bf, type Unstruct as bg, type Atomic as bh, isAlignAttrib as bi, isAtomic as bj, isBuiltinAttrib as bk, isDecorated as bl, isInterpolateAttrib as bm, isLocationAttrib as bn, isPtr as bo, isSizeAttrib as bp, isWgslArray as bq, isWgslData as br, isWgslStruct as bs, Void as bt, type Align as bu, type AnyVecInstance as bv, type AnyWgslStruct as bw, type Builtin as bx, type Decorated as by, type Interpolate as bz, type TgpuBindGroup as c, type BuiltinVertexIndex as c$, textureDepth2d as c0, textureDepth2dArray as c1, textureDepthCube as c2, textureDepthCubeArray as c3, textureDepthMultisampled2d as c4, textureExternal as c5, textureMultisampled2d as c6, textureStorage1d as c7, textureStorage2d as c8, textureStorage2dArray as c9, align as cA, type AnyAttribute as cB, type HasCustomLocation as cC, interpolate as cD, invariant as cE, type IsBuiltin as cF, isBuiltin as cG, location as cH, size as cI, isData as cJ, isDisarray as cK, isLooseData as cL, isLooseDecorated as cM, isUnstruct as cN, builtin as cO, type AnyBuiltin as cP, type BuiltinClipDistances as cQ, type BuiltinFragDepth as cR, type BuiltinFrontFacing as cS, type BuiltinGlobalInvocationId as cT, type BuiltinInstanceIndex as cU, type BuiltinLocalInvocationId as cV, type BuiltinLocalInvocationIndex as cW, type BuiltinNumWorkgroups as cX, type BuiltinPosition as cY, type BuiltinSampleIndex as cZ, type BuiltinSampleMask as c_, textureStorage3d as ca, type WgslExternalTexture as cb, type WgslStorageTexture as cc, type WgslStorageTexture1d as cd, type WgslStorageTexture2d as ce, type WgslStorageTexture2dArray as cf, type WgslStorageTexture3d as cg, type WgslStorageTextureProps as ch, type WgslTexture as ci, type WgslTexture1d as cj, type WgslTexture2d as ck, type WgslTexture2dArray as cl, type WgslTexture3d as cm, type WgslTextureCube as cn, type WgslTextureCubeArray as co, type WgslTextureDepth2d as cp, type WgslTextureDepth2dArray as cq, type WgslTextureDepthCube as cr, type WgslTextureDepthCubeArray as cs, type WgslTextureDepthMultisampled2d as ct, type WgslTextureMultisampled2d as cu, comparisonSampler as cv, sampler as cw, type WgslComparisonSampler as cx, type WgslSampler as cy, ref as cz, type ShaderGenerator as d, type mBaseForVec as d$, type BuiltinWorkgroupId as d0, type InferPartial as d1, type FormatToWGSLType as d2, type TgpuVertexFormatData as d3, formatToWGSLType as d4, packedFormats as d5, uint8 as d6, uint8x2 as d7, uint8x4 as d8, sint8 as d9, float32x3 as dA, float32x4 as dB, uint32 as dC, uint32x2 as dD, uint32x3 as dE, uint32x4 as dF, sint32 as dG, sint32x2 as dH, sint32x3 as dI, sint32x4 as dJ, unorm10_10_10_2 as dK, unorm8x4_bgra as dL, type PackedData as dM, isPackedData as dN, type DualFn as dO, type AnyNumericVecInstance as dP, type AnyFloatVecInstance as dQ, type AnyIntegerVecInstance as dR, type v3h as dS, type AnyMatInstance as dT, type AbstractFloat as dU, type AbstractInt as dV, type v2h as dW, type v4h as dX, type AnyFloat32VecInstance as dY, type AnySignedVecInstance as dZ, type vBaseForMat as d_, sint8x2 as da, sint8x4 as db, unorm8 as dc, unorm8x2 as dd, unorm8x4 as de, snorm8 as df, snorm8x2 as dg, snorm8x4 as dh, uint16 as di, uint16x2 as dj, uint16x4 as dk, sint16 as dl, sint16x2 as dm, sint16x4 as dn, unorm16 as dp, unorm16x2 as dq, unorm16x4 as dr, snorm16 as ds, snorm16x2 as dt, snorm16x4 as du, float16 as dv, float16x2 as dw, float16x4 as dx, float32 as dy, float32x2 as dz, type Wgsl as e, type AnyVec2Instance as e0, type AnyVec3Instance as e1, type AnyBooleanVecInstance as e2, type atomicI32 as e3, type atomicU32 as e4, type StorageTextureFormats as e5, type TextureFormats as e6, $repr as e7, type TgpuNamable as e8, $getNameForward as e9, type ResolvableObject as f, type TgpuBuffer as g, type TgpuVar as h, type LogGeneratorOptions as i, type TgpuRoot as j, type AnyWgslData as k, type TgpuFn as l, type TgpuBufferUsage as m, type TgpuBufferShorthand as n, type Infer as o, type TgpuAccessor as p, type TgpuVertexLayout as q, type WgslArray as r, fn as s, bindGroupLayout as t, privateVar as u, vertexLayout as v, workgroupVar as w, constant as x, fragmentFn as y, vertexFn as z };
|