Files
XCEngine/docs/api/rhi/d3d12/pipeline-state/create-input-element.md

55 lines
1.3 KiB
Markdown
Raw Normal View History

# D3D12PipelineState::CreateInputElement
## 函数签名
```cpp
static D3D12_INPUT_ELEMENT_DESC CreateInputElement(
const char* semanticName,
uint32_t semanticIndex,
Format format,
uint32_t inputSlot,
uint32_t alignedByteOffset)
static D3D12_INPUT_ELEMENT_DESC CreateInputElement(
const char* semanticName,
uint32_t semanticIndex,
Format format,
uint32_t inputSlot)
```
## 中文描述
创建输入元素描述符,用于定义顶点缓冲区的数据布局。
## 参数
| 参数 | 类型 | 描述 |
|------|------|------|
| `semanticName` | `const char*` | 语义名称(如 "POSITION", "TEXCOORD" |
| `semanticIndex` | `uint32_t` | 语义索引 |
| `format` | `Format` | 数据格式 |
| `inputSlot` | `uint32_t` | 输入槽位 |
| `alignedByteOffset` | `uint32_t` | 对齐字节偏移(仅第一个重载) |
## 返回值
`D3D12_INPUT_ELEMENT_DESC` - 输入元素描述符
## 复杂度
O(1)
## 示例
```cpp
D3D12_INPUT_ELEMENT_DESC elements[] = {
D3D12PipelineState::CreateInputElement("POSITION", 0, Format::R32G32B32_FLOAT, 0, 0),
D3D12PipelineState::CreateInputElement("TEXCOORD", 0, Format::R32G32_FLOAT, 0, 12)
};
```
## 相关文档
- [D3D12PipelineState](pipeline-state.md) - 类总览
- [D3D12PipelineState::CreateDesc](create-desc.md) - 创建管线描述符