36 lines
1.0 KiB
Markdown
36 lines
1.0 KiB
Markdown
# RHICommandList::SetVertexBuffers
|
||
|
||
```cpp
|
||
virtual void SetVertexBuffers(uint32_t startSlot, uint32_t count, const uint64_t* buffers, const uint64_t* offsets, const uint32_t* strides) = 0;
|
||
```
|
||
|
||
批量绑定多个顶点缓冲区到连续的槽位。用于需要多个顶点流的高级渲染场景。
|
||
|
||
**参数:**
|
||
- `startSlot` - 起始槽位索引(范围 0-15)
|
||
- `count` - 顶点缓冲区数量
|
||
- `buffers` - 顶点缓冲区指针数组
|
||
- `offsets` - 偏移量数组(字节)
|
||
- `strides` - 步长数组(每个顶点的字节大小)
|
||
|
||
**返回:** `void`
|
||
|
||
**异常:** 无
|
||
|
||
**线程安全:** ❌
|
||
|
||
**复杂度:** O(n),n 为缓冲区数量
|
||
|
||
**示例:**
|
||
|
||
```cpp
|
||
uint64_t buffers[2] = {(uint64_t)vb1, (uint64_t)vb2};
|
||
uint64_t offsets[2] = {0, 0};
|
||
uint32_t strides[2] = {sizeof(Vertex), sizeof(Vertex)};
|
||
cmdList->SetVertexBuffers(0, 2, buffers, offsets, strides);
|
||
```
|
||
|
||
## 相关文档
|
||
|
||
- [RHICommandList 总览](command-list.md) - 返回类总览
|
||
- [SetVertexBuffer](set-vertex-buffer.md) - 设置单个顶点缓冲 |