Oculus Rift / Vulkan:使用计算着色器写入交换链

Oculus Rift / Vulkan : Write to swapchain with a compute shader

我想用计算着色器写入 OVR 生成的交换链。 问题是图像没有使用 VK_IMAGE_USAGE_STORAGE_BIT.

交换链的​​创建是通过 ovr_CreateTextureSwapChainVk 完成的,它需要一个标志 BindFlags。我添加了标志 ovrTextureBind_DX_UnorderedAccess 但图像仍然没有正确的用法。

The problem is that the images don't have the usage VK_IMAGE_USAGE_STORAGE_BIT.

那么你不能直接用计算着色器写入交换链图像。

提供交换链图像的显示引擎有权决定您如何使用它们。唯一需要的交互方法是能够将它们用作颜色渲染目标; 其他所有内容 都是可选的。

因此您将不得不以另一种方式执行此操作,也许是写入中间图像并将其 copying/rendering 写入交换链图像。