37 lines
909 B
Markdown
37 lines
909 B
Markdown
|
|
# VulkanCommandQueue::ExecuteCommandLists
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
void ExecuteCommandLists(uint32_t count, void** lists) override;
|
||
|
|
```
|
||
|
|
|
||
|
|
## 作用
|
||
|
|
|
||
|
|
提交一组 `VulkanCommandList` 到当前 `VkQueue` 执行。
|
||
|
|
|
||
|
|
## 前置条件
|
||
|
|
|
||
|
|
- 队列已经初始化
|
||
|
|
- `lists` 中的命令列表已经完成录制并 `Close()`
|
||
|
|
|
||
|
|
## 当前实现行为
|
||
|
|
|
||
|
|
- 会遍历输入数组,筛出有效的 `VkCommandBuffer`
|
||
|
|
- 用一个 `VkSubmitInfo` 提交全部命令缓冲
|
||
|
|
- 提交后立即调用 `vkQueueWaitIdle()`
|
||
|
|
- 成功提交流程后 `m_currentFrame` 自增
|
||
|
|
|
||
|
|
## 注意事项
|
||
|
|
|
||
|
|
当前实现是同步提交模型,不是多帧并发的异步提交模型。
|
||
|
|
|
||
|
|
## 参数
|
||
|
|
|
||
|
|
- `count` - 输入命令列表数量
|
||
|
|
- `lists` - 命令列表数组,元素应能向下转为 `VulkanCommandList`
|
||
|
|
|
||
|
|
## 相关文档
|
||
|
|
|
||
|
|
- [VulkanCommandQueue](VulkanCommandQueue.md)
|
||
|
|
- [WaitForIdle](WaitForIdle.md)
|
||
|
|
- [VulkanCommandList](../VulkanCommandList/VulkanCommandList.md)
|