Vulkan教程 – 16 MVP与统一缓冲对象
我们现在能为每个顶点传输任意属性到顶点着色器了,但是用全局变量怎么样呢?我们本章要转移到3D图形上,这就需要Model-View-Projection矩阵了,也就...
Vulkan教程 – 10 创建图形管线
在我们完成管线创建之前,我们需要告诉Vulkan渲染将要用到的帧缓冲附件的信息。我们需要明确有多少颜色和深度缓冲,每个又有多少采样以及它们的内容应该如何通过渲...
Vulkan更新扩展;Vulkan添加扩展
最近学到了如何更新和添加Vulkan的扩展,就是通过更新驱动的方式。自己写代码制作扩展我不太确定是否可以。 问题是这样的: const std::vector<const char*> deviceExtension...
Vulkan教程 – 18 阶段性总结
Vulkan学习几周了,稍微整理下。由于一开始的博客就是从环境搭建开始的,所以并没有对Vulkan的特性和教程的目标及步骤进行记录。这里主要就是做这个工作,所以这个总结并不是...
Vulkan教程 – 24 生成Mip贴图
现在我们的程序可以加载和渲染3D模型了,本章我们再添加一个新的特性,Mip贴图。Mip贴图是被游戏和渲染软件所广泛使用的,Vulkan也对Mip生成给了我们足够的控制。 Mip贴图是...
Vulkan教程 – 23 加载模型
现在你的程序已经为有贴图的3D网格渲染做好准备了,但是现在的顶点和索引数组都是比较无聊的。本章我们扩展该程序来从真实的模型文件加载顶点和索引数据,以让显卡做点真正的工作。...
Vulkan教程 – 22 深度缓冲
现在创建的几何对象是投影到3D中的,但是还是完全的平面。本章我们添加一个Z坐标来为3D网格做准备。我们会使用这个第三个坐标来放置一个正方形在我们当前正方形之上ÿ...
Vulkan教程 – 21 组合图像采样器
在统一缓冲章节我们第一次见到了描述符,这一章我们会介绍一个新的描述符,即组合图像采样器。该描述符让着色器通过一个采样器对象访问图像资源成为了可能。 修改描述符布局、描述...
Vulkan教程 – 20 图像采样器
本章我们继续创建两个资源,用于图形管线采样图像。第一个资源是我们已经见过的,也就是和交换链图像打交道的时候用的,但是第二个则是新的,它和着色器如何从图像读取...
Vulkan教程 – 15 索引缓冲
顶点缓冲已经能正常工作了,但是让我们能够从CPU访问的内存类型可能对显卡本身读取来说不是最优的。最好的内存会有VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT标记,且通...
Vulkan教程 – 25 多重采样(教程结束)
现在我们的程序可以加载贴图LOD了,可以在渲染远处对象的时候修复假象。现在图像看起来更平滑了,但是离近看的时候会发现几何边缘线有凹凸不平锯齿状的图案。 这个并非我们想要的效...