Vulkan教程

Vulkan教程 - 06 交换链-卡核

Vulkan教程 – 06 交换链

Swap chain(交换链) 现在到了Vulkan教程第十章了,学习交换链。Vulkan没有默认帧缓冲的概念,因此它需要一个基础设施,能够在我们通过屏幕看到内容之前,...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
0941
Vulkan教程 - 24 生成Mip贴图-卡核

Vulkan教程 – 24 生成Mip贴图

现在我们的程序可以加载和渲染3D模型了,本章我们再添加一个新的特性,Mip贴图。Mip贴图是被游戏和渲染软件所广泛使用的,Vulkan也对Mip生成给了我们足够的控制。 Mip贴图是...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
0600
Vulkan教程 - 05 逻辑设备与窗口表面-卡核

Vulkan教程 – 05 逻辑设备与窗口表面

逻辑设备 选择了物理设备后,我们需要建立逻辑设备来交互了。逻辑设备创建过程和实例创建过程类似,且描述了我们想要的特性。向类中添加一个新的成员变量存储逻辑设备句柄: ...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
13590
Vulkan教程 - 18 阶段性总结-卡核

Vulkan教程 – 18 阶段性总结

Vulkan学习几周了,稍微整理下。由于一开始的博客就是从环境搭建开始的,所以并没有对Vulkan的特性和教程的目标及步骤进行记录。这里主要就是做这个工作,所以这个总结并不是...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
01160
Vulkan教程 - 08 着色器及编译SPIR-V-卡核

Vulkan教程 – 08 着色器及编译SPIR-V

着色器模块 不像是之前的API,Vulkan着色器代码一定要用字节码格式,而不是人类可读的语法如GLSL和HLSL。这个字节码就是SPIR-V,设计用于Vulkan和OpenCL。这是一个可以用于编...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
01490
Google Filament引擎编译记录-卡核

Google Filament引擎编译记录

我之前写过两篇Filament编译文档,就在我的网站上,可以到如下地址找到: 捉不住的鼬鼠的训练场 - 文档 现在又在做安卓有关开发和编译的问题,尤其是涉及到C+...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
0830
Vulkan更新扩展;Vulkan添加扩展-卡核

Vulkan更新扩展;Vulkan添加扩展

最近学到了如何更新和添加Vulkan的扩展,就是通过更新驱动的方式。自己写代码制作扩展我不太确定是否可以。 问题是这样的: const std::vector<const char*> deviceExtension...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
02350
Vulkan教程 - 13 重建交换链-卡核

Vulkan教程 – 13 重建交换链

现在我们的程序能成功绘制三角形了,但是还有一些情况,它还不能很好地处理。窗口表面可能会改变,导致交换链与其不兼容。这种事情发生的可能原因之一是窗口的大小改变了。我...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
01760
Vulkan教程 - 11 帧缓冲和命令缓冲-卡核

Vulkan教程 – 11 帧缓冲和命令缓冲

        帧缓冲我们前面的章节已经讨论很多了,而且我们已经建立了渲染通道,以便得到单个的帧缓冲,有着和交换链图像一样的格式,但是我们还没有真正创建什么...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
01230
Vulkan教程 - 19 贴图和管线屏障-卡核

Vulkan教程 – 19 贴图和管线屏障

        现在逐个顶点加上颜色,几何体已经是彩色的了,但是这其实是不太好的办法。本章我们要实现贴图映射,这会让几何体看起来更有趣,也能够让我们加载和绘...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
0800
Vulkan教程 - 17 描述符与内存对齐-卡核

Vulkan教程 – 17 描述符与内存对齐

之前章节的描述符布局描述了描述符可以绑定的类型。本章我们要对每个VkBuffer资源创建一个描述符集合来将它绑定到统一缓冲描述符上。 描述符集合不能够直接创建,必须从一个池中分配ÿ...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
02390
Vulkan教程 - 10 创建图形管线-卡核

Vulkan教程 – 10 创建图形管线

        在我们完成管线创建之前,我们需要告诉Vulkan渲染将要用到的帧缓冲附件的信息。我们需要明确有多少颜色和深度缓冲,每个又有多少采样以及它们的内容应该如何通过渲...
捉不住的鼬鼠的头像-卡核捉不住的鼬鼠2年前
01060