Vulkan填坑学习Day04—物理设备与队列
demi 在 周二, 04/27/2021 - 09:16 提交
Vulkan物理设备与队列 ,通过VkInstance初始化Vulkan后,我们需要在系统中查找并选择一个支持我们所需功能的显卡。实际上,我们可以选择任意数量的显卡并同时使用他们,但在本小节中,我们简单的设定选择规则,即将查找到的第一个图形卡作为我们适合的物理设备。
Vulkan物理设备与队列 ,通过VkInstance初始化Vulkan后,我们需要在系统中查找并选择一个支持我们所需功能的显卡。实际上,我们可以选择任意数量的显卡并同时使用他们,但在本小节中,我们简单的设定选择规则,即将查找到的第一个图形卡作为我们适合的物理设备。
创建Vulkan实例,与Vulkan打交道,通常的步骤是创建一个intance去初始化Vulkan library。这个instance是您的应用程序与Vulkan库之间的连接桥梁,通常创建过程中,需要向驱动程序提供一些应用层的信息。
开发Vulkan应用程序所需的最重要的组件就是SDK。它包括核心头文件、标准的Validation layers及调试工具集、和驱动Loader。
本部分主要介绍:将计算着色器与单独的计算队列一起使用,以将不同的卷积内核(和效果)实时应用于输入图像。
将 slink:VkAccelerationStructureNV 资源分类更改为非线性,并且将 slink: VkAccelerationStructureKHR 更改为既不是线性也不是非线性。为了达成 << resources-bufferimagegranularity,bufferImageGranularity >> 目的,这会影响内存分类。
Vulkan 基本类型,Vulkan 开发需要设计的类型非常多,整理其基本类型如下,主要包含设备、队列、命令缓冲、队列家族、渲染通,管线等……
这也是业界第一个开放的、跨平台的、跨厂商的光追加速标准,无论是此前的GPU计算单元,还是最新的光追核心,都可以支持,这意味着无论是NVIDIA、AMD的新老显卡,乃至是Intel的核芯显卡,都能享受光追。
为了让 Vulkan 在尽可能多的平台上运行(比如苹果 macOS / iOS),Khronos Group 现已推出 Vhkan 可移植性扩展(VK_KHR_portability_subset)的 1.0 正式版本。据悉,该扩展旨在非 Vulkan API 平台环境上启动和运行。显然,Vulkan 选择了一条与 OpenGL 和 Direct3D 不尽相同的发展道路。
环境搭建:主要是Windows上,下载Vulkan SDK,下载GLFW(Graphics Library Framework),下载GLM(OpenGL Mathematics),配置VS,验证Vulkan扩展。
本文主要内容是PowerVR 的tiled renderer对vulkan的使用状况的理解和优化建议