总结
至此,我们已经具有了不错的Vulkan使用基础。可以开始深入探索Vulkan的更多特性,比如:
-
Push常量
-
实例渲染
-
动态uniform
-
分离图像和采样器描述符
-
管线缓存
-
多线程指令缓冲生成
-
多子流程
-
计算着色器
我们可以在现有的程序上扩展支持许多特性,比如Blinn-Phong、后期处理、实时阴影。这些内容的实现方法可以在其它图形API的教程中找到,然后移植为Vulkan的API调用实现。
本章节代码:
C++:
https://vulkan-tutorial.com/code/28_mipmapping.cpp
Vertex Shader:
https://vulkan-tutorial.com/code/26_shader_depth.vert
Fragment Shader: