Skip to content

Commit 69d9780

Browse files
authored
Require indirect draw calls use a firstInstance of 0 (#1928)
1 parent 7c19041 commit 69d9780

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

spec/index.bs

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7225,9 +7225,12 @@ enum GPUStoreOp {
72257225
drawIndirectParameters[0] = vertexCount;
72267226
drawIndirectParameters[1] = instanceCount;
72277227
drawIndirectParameters[2] = firstVertex;
7228-
drawIndirectParameters[3] = firstInstance;
7228+
drawIndirectParameters[3] = 0; // firstInstance. Must be 0.
72297229
</pre>
72307230

7231+
The value corresponding to `firstInstance` is reserved for future use and must be zero. If
7232+
it is not zero the {{GPURenderEncoderBase/drawIndirect()}} call will be treated as a no-op.
7233+
72317234
<div algorithm="GPURenderEncoderBase.drawIndirect">
72327235
**Called on:** {{GPURenderEncoderBase}} this.
72337236

@@ -7269,9 +7272,13 @@ enum GPUStoreOp {
72697272
drawIndexedIndirectParameters[1] = instanceCount;
72707273
drawIndexedIndirectParameters[2] = firstIndex;
72717274
drawIndexedIndirectParameters[3] = baseVertex;
7272-
drawIndexedIndirectParameters[4] = firstInstance;
7275+
drawIndexedIndirectParameters[4] = 0; // firstInstance. Must be 0.
72737276
</pre>
72747277

7278+
The value corresponding to `firstInstance` is reserved for future use and must be zero. If
7279+
it is not zero the {{GPURenderEncoderBase/drawIndexedIndirect()}} call will be treated as a
7280+
no-op.
7281+
72757282
<div algorithm="GPURenderEncoderBase.drawIndexedIndirect">
72767283
**Called on:** {{GPURenderEncoderBase}} this.
72777284

@@ -7299,6 +7306,10 @@ enum GPUStoreOp {
72997306
</div>
73007307
</dl>
73017308

7309+
Note: The ability to set a `firstInstance` for indirect draw calls is initially disabled to expand
7310+
the hardware that supports WebGPU. It is likely to be added as a feature in the future along with
7311+
other new indirect drawing features.
7312+
73027313
<div algorithm>
73037314
To determine if it's <dfn abstract-op>valid to draw</dfn> with {{GPURenderEncoderBase}} |encoder|
73047315
run the following steps:

0 commit comments

Comments
 (0)