加载中
NVIDIA Nsight Graphics对Vulkan GPU的分析

1.官方下载:https://developer.nvidia.com/nsight-graphics 2.配置: 3.结果: 4.分析 先ctrl+z,然后进入分析页面:

前天 10:58
32
18Vulkan——Vulkan中Shader数据交换机制和描述符

问题:Shader是如何与GPU进行数据交互的? 1.Shader 在Vulkan中,允许你使用GLSL、HLSL来编写shader,但是,它通过一个解释器,将你编写出来的shader代码转译成SPIR-V中间代码,然后,在每个...

22VulKan——内存管理

1.内存 VulKan将内存分为两类:Host Memory 和 Device Memory. Host是运行应用程序的处理器,在PC端上就是指CPU;Device是执行VulKan命令的处理器,也就是GPU. Host memory指的是对Host可见的...

13VulKan——坐标系深度值

Vulkan相对于OpenGL做了很多改变。其中一个非常重要的改变之一就是Vulkan使用的坐标系。 Vulkan现在的坐标系的y轴方向向下。x轴和z轴的方向和OpenGL相同。如果不对这些改变进行处理,就会造成...

07/15 20:42
241
15Vulkan——队列和队列簇· 同步原语 多线程 命令缓冲(Command Buffer)

队列以及队列族 队列是应用程序和物理设备通信的手段。 应用程序以向队列提交命令缓冲区的形式提供作业任务。 物理设备对它们进行读取并异步处理。 物理设备可能支持四种类型的队列,如下图所...

07/25 14:46
258
01VulKan——在Windows系统+NuGet环境搭建

1.Vulkan SDK下载 下载网址 https://vulkan.lunarg.com/sdk/home,选择Windows平台下的最新SDK下载安装。 2.安装Vulkan,双击.exe文件 安装 3.测试 安装完成了,到安装的新形成的目录下Bin32运...

02Vulkan——应用程序架构与创建实例

1.总体结构 #include <vulkan/vulkan.h> #include <iostream> #include <stdexcept> #include <functional> class CApplicationTest { public: void run() { initVulkan(); main......

14Vulkan流程

VulKan流程 https://zhuanlan.zhihu.com/p/56338417 https://zhuanlan.zhihu.com/p/59695433 https://www.zhihu.com/people/snowfox-68 https://vulkan.lunarg.com/doc/sdk/1.2.131.2/window...

11VulKan——贴图MipMap

整体思想: 在Vulkan中,每个mip图像都保存在VkImage的不同的mip层里。0级是原始图像,0级之后的Mip级通常称为Mip链。 miplevel计算方式: mipLevels = static_cast<uint32_t>(std::floor(s...

07/13 20:42
91
05VulKan——顶点缓冲区

1.顶点缓冲区 在Vulkan中,缓冲区是内存的一块区域,该区域用于向显卡提供预要读取的任意数据。它们可以用来存储顶点数据,也可以用于其他目的。与之前创建的Vulkan对象不同的是,缓冲区自己...

07/06 19:33
25
16Vulkan——图像资源和SwapChain

1.图像资源 Vulkan 图像以 1D / 2D / 3D 形式表示连续的纹理数据。 这些图像主要用作附件或纹理: 附件 Attachment:图像可以被附加到管线,用于帧缓冲区的颜色附件或深度附件,也可以用作辅...

10VulKan——深度缓冲 模型加载

整体思路: GLM生产出的透视投影矩阵默认使用OpenGL的深度范围,收敛在 -1.0 到 1.0。我们需要使用GLM_FORCE_DEPTH_ZERO_TO_ONE定义将其配置为使用 0.0 到 1.0 的Vulkan深度范围 ; 使用 ti...

19Vulkan——Pipeline管线

1.管线 管线是指数据输入流经的一系列固定阶段;每个阶段都处理传入的数据并将其传递到下一个阶段。 最终产品或是一个 2D 栅格绘图图像(图形管线),或是 使用计算逻辑和计算操作(计算管线...

21VulKan——纹理绘制

绘制函数 该方法会执行下面的操作: 1.从交换链获取图像; 2.用该图像作为帧缓冲中的附件来执行命令缓冲; 3.将图像返回给交换链以便呈现。 这些事件每一个都是使用单个方法调用来启动的,但...

08/07 11:34
66
23Vulkan Buffer与内存

Buffer 在Vulkan里面,所有需要存储的资源都视为Buffer。其实这个不难理解,因为无论是Texture、VertexBuffer、IndexBuffer或者UniformBuffer等等,其实都最终都是一段内存,因此Vulkan将这些...

08/17 15:38
61
20Vulkan———绘制对象

1.绘制对象过程 包括记录和执行绘图对象的命令缓冲区。 记录将 Render Pass,framebuffer 和管线与视口和几何数据相关联。 命令缓冲区执行涉及在设备队列中提交命令缓冲区,并将绘制的交换链...

07/29 23:51
897
17Vulkan——缓冲区资源和RenderPass

1.缓冲区资源 缓冲区资源以线性方式表示连续的数据阵列。 缓冲区资源通常用来存储属性数据信息,如顶点坐标,纹理坐标,关联颜色等。 Vulkan 中的缓冲区资源由 VkBuffer 对象表示,与视图形式...

07/27 00:03
260
08VulKan——描述符布局、缓冲、描述符池和描述符集

整体思想: 对于一些所有顶点都共享的属性,比如顶点的变换矩阵,将它们作为顶点属性为每个顶点都传递一份显然是非常浪费的 。VulKan提出使用资源描述符解决这种全局变量, 描述符是用来在着...

amp
07/09 21:18
58
03Vulkan——绘制三角形

#define GLFW_INCLUDE_VULKAN #include <GLFW/glfw3.h> #include <fstream> #include <iostream> #include <stdexcept> #include <vector> #include <cstring> #include <cstdlib> #include ...

amp
06/30 09:53
67

没有更多内容

加载失败,请刷新页面

返回顶部
顶部