
[英]How does Vulkan's memory domain operation work
我阅读了一些关于使用 VK_PIPELINE_STAGE_HOST_BIT 在 cpu 和 gpu 之间复制图像的代码示例。 (为简单起见,我将使用下面的 phsuedo 代码)对于 gpu->cpu 就像: 1.vkCmdCopyImage(..., src_img, ... dst_im ...
[英]How does Vulkan's memory domain operation work
我阅读了一些关于使用 VK_PIPELINE_STAGE_HOST_BIT 在 cpu 和 gpu 之间复制图像的代码示例。 (为简单起见,我将使用下面的 phsuedo 代码)对于 gpu->cpu 就像: 1.vkCmdCopyImage(..., src_img, ... dst_im ...
[英]how to write to android hardware buffer in vulkan?
在OpenGL中,其中memory的纹理由android硬件缓冲区导入,可以作为样图和颜色附件。 但是,当我尝试使用从 android 硬件缓冲区导入 memory 的纹理时,似乎可以从纹理中成功采样。 但是写入外部memory时,并没有达到预期效果。那么如何在vulkan中直接写入android ...
[英]Vulkan vkInvalidateMappedMemoryRanges explanation
从 Vulkan 文档中,它说“vkInvalidateMappedMemoryRanges 保证设备写入 pMemoryRanges 描述的 memory 范围,这些范围已使用 VK_ACCESS_HOST_WRITE_BIT 和 VK_ACCESS_HOST_READ_BIT 访问类型提供给主 ...
[英]glm::lookAt with custom rotation does not work properly
我想控制我的相机,让它可以围绕 model 旋转。 理论代码应该是:// `camera_rotation_angle_x_` and `camera_rotation_angle_y_` are initialized to 0, and can be modified by the user. ...
[英]The intersection shader reads zeroes out of an SSBO
我的相交着色器总是从我拥有的 SSBO 中读取零。 我尝试使用debugPrintEXT ,但它不会从相交着色器中打印出来。 但是,当我尝试通过光线有效载荷将 output 任何值作为命中颜色时,我得到的始终是黑色。 最初,我认为我复制数据的方式有问题,但没有,它和示例代码一样好,它可以工作(来自 ...
[英]<Vulkan> Use rendered vkImage as Texture
我想使用在前一个渲染过程中渲染的 vkImage 作为 Texture 在片段着色器中执行复合操作。 从这里我了解到 vkCmdPipelineBarrier 用于等待 GPU 完成渲染操作,我编写了这段代码。 它在 Snapdragon 设备上运行良好。 但不是在 Mali-G52 上。 Wri ...
[英]Vulkan loader not searching correct paths for layer files?
我遇到了一个问题,即 vulkan 加载程序似乎忽略了我设置的一些环境变量。 VK_LOADER_DEBUG=一切正常,但 VK_LAYER_PATH 和 VK_ADD_LAYER_PATH 似乎都被忽略了。 任何人都可以找出原因吗? ...
[英]Implementing blending functions too complicated for fixed-function blending
我正在尝试在 gpu 上实现高级混合。但是每当我尝试搜索资源时,我都会被顺序独立渲染、片段着色器互锁等术语弄得不知所措。 而且我不知道哪些与我的问题相关。 简单地给出 3 个对象,( b0 , b1 , b2 ),它们都位于同一个像素上并具有特定的 z 顺序。 (您可以假设对象已正确排序)。 那么 ...
[英]Reading non-aligned vertex input variables from buffers
在顶点输入布局中,例如,vec3 后跟 vec2 紧密打包在一起,但是在统一块和存储缓冲区之类的东西中,vec3 被打包为 16 字节。 我想知道这是什么原因。 而且,我想知道如果我的顶点在布局 vec3 而不是 vec4 中,我想最终从存储缓冲区或使用缓冲区设备地址读取这些顶点,可以吗? 它本质上 ...
[英]Why prefer Non-SRGB format for vulkan swapchain?
在 Vulkan 立方体示例中,选择表面格式的方法是: } 为什么我们更喜欢非 SRGB 格式,不是大多数屏幕都期待 SRGB 格式吗? ...
[英]How to install a Vulkan extension?
我正在使用 Vulkan 实现一个算法。 我的 Vulkan sdk 中似乎缺少一个扩展程序。我在哪里可以下载此扩展程序以及如何安装它? 我知道我需要的确切扩展名,但我不知道下一步该做什么。 ...
[英]Vulkan Instance creation fails with SDL2. I am not sure where I am wrong
我正在尝试创建一个实例并验证代码是否可以创建该实例。 但是,出于某种原因,代码编译但无法创建实例。 我不知道我做错了什么。 创建实例之前的一切都有效。 但是当我尝试验证实例创建时它失败了。 我正在使用 SDL2 创建 window。 这是我的 cmakelist 文件: 这是我拥有的 main.h ...
[英]How can I determine what instance extensions a given `VkInstance` was created with?
我正在管理一个VkInstance ,它是由其他一些库创建的(并仍然拥有)。 我需要知道向用于创建VkInstance的VkInstanceCreateInfo提供了哪些实例扩展名称。 因为我没有创建VkInstance ,所以我无法直接访问VkInstanceCreateInfo::ppEnab ...
[英]Increasing TdrDelay from 2s to 30s in Registy Editor for GPU solved Device Lost error in my Vulkan Program. What can be the cause for it?
我的 Vulkan 程序给我一个设备丢失错误。 我在注册表编辑器中添加了 TdrDelay 从 2s 到 30s。 现在我的程序运行良好。 可能是什么原因呢? 考虑到我不能在这里发布代码,我可以进一步检查和改进我的程序的可能原因是什么? ...
[英]Rust Vulkano creation of compute pipeline does not work and freeze my video card
我正在尝试将着色器加载到 amd 视频卡中。 创建所有缓冲区后,我尝试创建一个新的计算管道。 当我开始调试它打印消息时,我发现“完成创建计算管道”从未被打印出来。 当我用 `cargo run --release` 运行它时,它会打印:“Creating pipeline with shader”, ...
[英]Is it possible to assign a storage buffer to a variable in glsl shader?
我通过以下方式在 GLSL 着色器中定义了一个缓冲区描述符:layout(set = 1, binding = 0) buffer ShadowMapData { ShadowMapItem items[]; } uShadowMapDataRegister[]; 有没有办法从这个描述符的索引全 ...
[英]Vulkan Ray Tracing - Any Hit Shader doesn't write to buffer
我在 vulkan 中设置了一个最小的光线追踪管道,其中包含写入缓冲区和光线有效载荷的任何和最近的命中着色器。 问题是来自任何命中着色器的缓冲区写入似乎没有生效。 这是最近命中着色器的源代码: 除了分别为光线状态缓冲区项和光线有效载荷写入3和4之外,任何命中着色器代码都是相同的。 与gRayStat ...
[英]Checking to see if an image format supports a usage in Vulkan?
如果我想查看图像格式的用途,我可以执行 vkGetPhysicalDeviceImageFormatProperties2() 并设置图像格式的使用标志。 我注意到如果这些用法和设置不支持格式,我传入的结构设置为全零,我可以知道格式是否支持这些用途。 因此,如果我想知道 VK_FORMAT_R8G ...
[英]Is it normal for your gpu device not to support three channel formats?
我注意到我在 Vulkan 上运行的 GPU 不支持这么多 R8G8B8_UINT 格式,但支持 R8G8B8A8 格式。 许多其他人也有同样的事情,比如 R32G32B32_SFLOAT。 我注意到这也是我在OpenGPU数据库中看到的其他 GPU 的情况。 这是正常的吗? 为什么会这样? 使用 ...
[英]What does the grey check mark mean on GPUOpen's Vulkan database?
在此 网站上,它显示了每个物理设备的格式功能。 有绿色十字、红色十字和灰色十字。 我猜绿色表示支持格式,红色表示不支持,灰色是什么意思? 没有数据? ...