《Vulkan Tutorial》 笔记 19:Frame in Flight对渲染循环进行改进,通过创建多个 Command Buffer 和信号量来实现多帧渲染,允许 CPU 和 GPU 同时工作,避免 CPU 在 GPU 渲染时处于空闲状态。最新博文# Vulkan1个月前000
《Vulkan Tutorial》 笔记 18:Rendering And Presentation本章描述了最终渲染三角形和将其显示到屏幕上的过程,在其中需要创建信号量(Semaphore)和栅栏(Fence)实现 CPU 与 GPU 及队列间的同步,确保渲染流程各阶段正确有序地执行和呈现最新博文# Vulkan1个月前000
《Vulkan Tutorial》 笔记 17:Command BuffersVulkan 中的命令(如绘制操作和内存传输)并不是通过函数调用直接执行的。开发者必须将所有想要执行的操作记录(Record)在 Command Buffer 对象中。在之前的章节中已经创建了绘制三角...最新博文# Vulkan3个月前000
《Vulkan Tutorial》 笔记 16:FrameBuffers创建 用于封装一组图像视图(如颜色、深度等附件),作为渲染目标 的 FrameBuffer 对象,其需要与之前创建的 RenderPass 兼容。最新博文# Vulkan3个月前000
《Vulkan Tutorial》 笔记 14:Render Passes本章介绍了 Vulkan 中 Render Pass 的作用、关键结构体及其创建流程,讲解了如何描述和管理渲染过程中的附件与子通道,为后续渲染管线的搭建打下基础。最新博文# Vulkan3个月前000
《Vulkan Tutorial》 笔记 13:Fixed Functions在这一节中,会设定创建 Pipeline 中除了 Shader Modules 剩下的固定函数的一些操作,如 Viewport Size / Color Blending 模式,这些在 Vulklan...最新博文# Vulkan3个月前000
《Vulkan Tutorial》 笔记 12:Shader ModuleVkShaderModule 类用以封装和管理已编译好的着色器代码,本节将说明如何创建 Shader Module,以及如何将其传递给渲染管线的特定阶段。最新博文# Vulkan4个月前000
《Vulkan Tutorial》 笔记 11:图形管线介绍Vulkan 中需要自己设定图形渲染管线,在一些旧的图形 API 如 OpenGL 中,时可以通过一些函数修改渲染管线的,如通过 `glBlendFunc` 修改管线中对于混合的操作。但在 Vulka...最新博文# Vulkan4个月前000
《Vulkan Tutorial》 笔记 10: Image Views为了使用在 Swap Chain 最后获取的 VkImage,需要首先创建 VkImageView 对象。该对象作为外部对这个 Image 的 View,即该对象描述了该如何访问 Image,以及需要...最新博文# Vulkan4个月前000
《Vulkan Tutorial》 笔记 09: Swap Chain在 Vulkan 中必须显式的创建 Swap Chain。SwapChain 是与 Surface 绑定的数据结构,其包含了多个 Image,应用渲染时会将渲染的结果放置到这些 Image 中,当调用...最新博文# Vulkan4个月前000
《Vulkan Tutorial》 笔记 08: 窗口 Surface因为 Vulkan 是一个平台不相关的 API,所以它无法直接与 Window 操作系统交互。为了建立 Vulkan 和 Window 操作系统之间的连接,就需要使用 `WSI(Window Syst...最新博文# Vulkan4个月前000
《Vulkan Tutorial》 笔记 07: 逻辑设备和队列在创建了 Physical Device(VkPhysicalDevice) 后需要建立一个 Logical Device (VkDevice)来与之交互。在创建 Logical Devices 时还...最新博文# Vulkan4个月前000
《Vulkan Tutorial》 笔记 06:物理设备和 Queue Family选择符合要求的物理设备和 Queue Family,物理设备是 Vulkan 的一个重要概念,它表示了一个支持 Vulkan 的 GPU 设备,Queue Family 则是物理设备的一个属性,表示了...最新博文# Vulkan4个月前000
《Vulkan Tutorial》 笔记 04:Instance对于一个 Vulkan 应用而言,你首先需要通过创建一个 `instance` 来初始化 Vulkan 库, `instance` 是应用与 Vulkan 库的连接,在创建过程中会有相应的操作告知 D...最新博文# Vulkan4个月前000