结束渲染流程

接着,我们调用vkCmdEndRenderPass函数结束渲染流程:

vkCmdEndRenderPass(commandBuffers[i]);

然后,结束记录指令到指令缓冲:

if (vkEndCommandBuffer(commandBuffers[i]) != VK_SUCCESS) {
    throw std::runtime_error("failed to record command buffer!");
}

下一章节,我们开始编写主循环的代码,从交换链获取图像,提交指令缓冲执行渲染指令,将渲染结果呈现到屏幕上。

本章节代码:

C++:

https://vulkan-tutorial.com/code/14_command_buffers.cpp

Vertex Shader:

https://vulkan-tutorial.com/code/09_shader_base.vert

Fragment Shader:

https://vulkan-tutorial.com/code/09_shader_base.frag