50 lines
930 B
Markdown
50 lines
930 B
Markdown
|
|
# OpenGLDevice::CreateCommandList
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
RHICommandList* CreateCommandList(const CommandListDesc& desc) override
|
||
|
|
```
|
||
|
|
|
||
|
|
创建 OpenGL 命令列表对象。
|
||
|
|
|
||
|
|
## 详细描述
|
||
|
|
|
||
|
|
创建用于记录 GPU 命令的命令列表对象。
|
||
|
|
|
||
|
|
### OpenGL 实现
|
||
|
|
|
||
|
|
当前实现创建基本的 `OpenGLCommandList`,支持:
|
||
|
|
- 命令录制
|
||
|
|
- 命令重放
|
||
|
|
|
||
|
|
## 参数
|
||
|
|
|
||
|
|
- `desc` - 命令列表描述符
|
||
|
|
|
||
|
|
## 返回值
|
||
|
|
|
||
|
|
`RHICommandList*` - 创建的命令列表指针
|
||
|
|
|
||
|
|
## 注意事项
|
||
|
|
|
||
|
|
- 返回的命令列表对象归调用者所有,需自行管理生命周期
|
||
|
|
- 命令列表使用前可能需要额外初始化步骤
|
||
|
|
|
||
|
|
## 示例
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
CommandListDesc cmdDesc;
|
||
|
|
RHICommandList* cmdList = device.CreateCommandList(cmdDesc);
|
||
|
|
|
||
|
|
// 录制命令
|
||
|
|
cmdList->Begin();
|
||
|
|
cmdList->Draw(...);
|
||
|
|
cmdList->End();
|
||
|
|
|
||
|
|
// 提交命令
|
||
|
|
```
|
||
|
|
|
||
|
|
## 相关文档
|
||
|
|
|
||
|
|
- [OpenGLDevice](device.md) - 类总览
|
||
|
|
- [OpenGLCommandList](../opengl-command-list.md) - OpenGL 命令列表实现
|