
Vulkan学习
文章平均质量分 73
directx3d_beginner
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
(九)图形管线
顶点数据->顶点着色器->细分着色器->几何着色器->光栅化->片元着色器->颜色混合。原创 2025-04-03 20:24:00 · 202 阅读 · 0 评论 -
(八)图像视图
/基础表面特性(最大/最小图像数量,宽度,高度)createInfo.viewType = VK_IMAGE_VIEW_TYPE_2D;//表面格式(像素格式,颜色空间)对于每个图像,都有个图像视图,用来说明图像如何用,以及用图像的哪一部分。//队列族索引,同时支持绘制指令的队列族和支持表现的队列族。&surface);//存储返回的表面的内存地址。//遍历所有交换链图像,创建图像视图。//获取设备的队列族个数。原创 2025-04-03 20:07:47 · 622 阅读 · 0 评论 -
(七)交换链
交换链比较复杂,是呈现到表面的图像队列。(不一定要有交换链,服务器就不需要)3,从设备扩展数组中查看是否满足设备扩展数组中的各项(这里只是交换链)1,//定义设备扩展数组(包含交换链扩展)2,选择显示模式,三缓冲->先进先出队列。2,选择显示模式,三缓冲->先进先出队列。4,在逻辑设备中启动各种设备扩展。3,设置范围(即图像分辨率)3,设置范围(即图像分辨率)概括来讲,对于交换链来说,二,是否与窗口表面兼容。二,是否与窗口表面兼容。原创 2025-04-03 12:35:39 · 162 阅读 · 0 评论 -
(六)窗口表面
/队列族索引,同时支持绘制指令的队列族和支持表现的队列族。//队列族索引,同时支持绘制指令的队列族和支持表现的队列族。//在没有错误和窗口没有被关闭下一直运行,事件循环。&surface);//存储返回的表面的内存地址。instance, //vkInstance对象。window, //GLFW窗口指针。nullptr, //自定义内存分配器。//-1表示没找到满足需求的队列族。//-1表示没找到满足需求的队列族。//同时图形能力和呈现到表面能力。//获取设备的队列族个数。//获取显卡设备数量。原创 2025-04-02 20:17:08 · 614 阅读 · 0 评论 -
(五)逻辑设备和队列
创建逻辑设备时,假设只用带有图形能力的队列族的队列,该队列暂时使用一个,也不考虑校验层。2,创建逻辑设备也要考虑到应用程序使用到的设备特性,暂时为空。//在没有错误和窗口没有被关闭下一直运行,事件循环。与物理设备和队列族相对应的,是逻辑设备和队列。//在应用程序结束前清除vulkan实例。//-1表示没找到满足需求的队列族。//暂时只使用带有图形能力的队列族。//初始化Vulkan对象。//应用程序信息,便于优化。//获取设备的队列族个数。//主循环进行渲染操作。//获取显卡设备数量。原创 2025-04-02 17:00:27 · 916 阅读 · 0 评论 -
(四)队列族
这里通过查找队列族索引的方式,以查找支持图形指令的第一个队列族索引为例( VK_QUEUE_GRAPHICS_BIT)。有的队列是计算指令的,有的队列是内存传输的。//在没有错误和窗口没有被关闭下一直运行,事件循环。我认为最重要的是队列族,也就是队列类型。//在应用程序结束前清除vulkan实例。//-1表示没找到满足需求的队列族。//-1表示没找到满足需求的队列族。//初始化Vulkan对象。//应用程序信息,便于优化。//获取设备的队列族个数。//主循环进行渲染操作。//获取显卡设备数量。原创 2025-03-30 15:19:31 · 548 阅读 · 0 评论 -
(三)物理设备
下一步就要看看设备检测哪些内容。比如设备属性(vkGetPhysicalDeviceProperties),特性(vkGetPhysicalDeviceFeatures )。vulkan可以使用任意多个显卡设备,且能同时使用。这里只使用第一个符合条件的。其实也简单,遵循查找数量->获取数组->查询是否符合条件。我觉得最重要的是队列族,也就是队列类型。3,通过设备检测找到合适的。原创 2025-03-30 15:08:21 · 208 阅读 · 0 评论 -
(二)创建实例
这里有个可选项,就是第2点,设置了窗口交互扩展,那么有多少可扩展项呢?在这节中, 创建一个实例初始化Vulkan库,指定驱动程序需要使用的应用程序信息。nullptr, //自定义的分配器回调函数,暂时设置为nullptr,不使用。(3)//全局扩展层(对整个应用程序都有效,而不仅仅对一个设备有效)&createInfo, //包含创建信息的结构体指针。//在没有错误和窗口没有被关闭下一直运行,事件循环。2,设置创建Vulkan驱动程序需要的信息,//暂时设置为0,不使用全局扩展层。原创 2025-03-29 21:09:06 · 911 阅读 · 0 评论 -
(一)初始化窗口
/在没有错误和窗口没有被关闭下一直运行,事件循环。//初始化Vulkan对象。//主循环进行渲染操作。原创 2025-03-28 11:44:41 · 374 阅读 · 0 评论