GPURenderBundleEncoder:drawIndexed() 方法
注意:此功能在 Web Workers 中可用。
GPURenderBundleEncoder 接口的 drawIndexed() 方法根据通过 setVertexBuffer() 和 setIndexBuffer() 提供的顶点和索引缓冲区,绘制索引图元。
注意: 此方法在功能上与其在 GPURenderPassEncoder 上的等效方法——drawIndexed()——是相同的。
语法
js
drawIndexed(indexCount)
drawIndexed(indexCount, instanceCount)
drawIndexed(indexCount, instanceCount, firstIndex)
drawIndexed(indexCount, instanceCount, firstIndex, baseVertex)
drawIndexed(indexCount, instanceCount, firstIndex, baseVertex, firstInstance)
参数
indexCount-
一个数字,定义要绘制的索引数量。
instanceCount可选-
一个定义要绘制的实例数量的数字。如果省略,
instanceCount默认为 1。 firstIndex可选-
一个数字,定义从索引缓冲区开始绘制的偏移量(以索引为单位)。如果省略,
firstIndex默认为 0。 baseVertex可选-
在索引顶点缓冲区之前添加到每个索引值的一个数字。如果省略,
baseVertex默认为 0。 firstInstance可选-
一个定义要绘制的第一个实例的数字。如果省略,
firstInstance默认为 0。
返回值
无 (Undefined)。
示例
js
// …
const bundleEncoder = device.createRenderBundleEncoder(descriptor);
bundleEncoder.setPipeline(pipeline);
bundleEncoder.setBindGroup(0, sceneBindGroupForRender);
bundleEncoder.setBindGroup(1, modelBindGroup);
bundleEncoder.setVertexBuffer(0, vertexBuffer);
bundleEncoder.setIndexBuffer(indexBuffer, "uint16");
bundleEncoder.drawIndexed(indexCount);
const renderBundle = bundleEncoder.finish();
// …
规范
| 规范 |
|---|
| WebGPU # dom-gpurendercommandsmixin-drawindexed |
浏览器兼容性
加载中…