繁体   English   中英

Vulkan 存储缓冲区与图像采样器

[英]Vulkan storage buffer vs image sampler

我目前正在 vulkan 中构建一个应用程序,我将从缓冲区中采样大量数据。 我将使用尽可能多的存储空间,但采样速度也很重要。 我的数据采用 32 位整数的二维数组形式。 我可以将它作为纹理上传并为其使用纹理采样器,或者作为存储缓冲区。 我读到存储缓冲区通常很慢,所以我正在考虑使用图像采样器在片段着色器中读取我的数据。 我将不得不禁用 mipmapping 和过滤,并将 UV 坐标转换为数组索引,但如果速度更快,我认为这可能是值得的。

我的问题是,将我的数据存储在图像采样器中通常是值得的,还是我应该做显而易见的事情并使用存储缓冲区? 每种方法的优点/缺点是什么?

不存在关于性能的保证。

但是 Vulkan API 尽量不欺骗您。 显而易见的方法可能是正确的方法。

如果你想采样然后采样。 如果您想进行原始访问,那么显然进行原始访问。 通常,您不应该强行尝试将正方形放入圆孔中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM