将RGBA32F纹理作为 R32F 传递给着色器,以进行 imageAtomic 操作和访问组件


是否可以将

3D RGBA32F纹理作为与 imageAtomic 操作兼容的类型(即 R32F)传递给着色器,然后以某种方式修改 ivec3 索引,以便确定性地访问RGBA32F纹理的相应组件?

我知道这在索引更直接的缓冲区中是可能的,但 ivec3 似乎可以防止聪明的索引操作。

首先,R32F与原子映像操作兼容。只有整数格式是。除非您使用的是 NVIDIA 扩展。

其次,图像格式兼容性规则不允许你假装RGBA32F纹理是R32UI纹理。它们基于兼容的纹素大小工作,RGBA32F的大小为 128 位,而 R32UI 的大小为 32 位。

相关内容

  • 没有找到相关文章