是否可以将
3D RGBA32F纹理作为与 imageAtomic 操作兼容的类型(即 R32F)传递给着色器,然后以某种方式修改 ivec3 索引,以便确定性地访问RGBA32F纹理的相应组件?
我知道这在索引更直接的缓冲区中是可能的,但 ivec3 似乎可以防止聪明的索引操作。
首先,R32F
与原子映像操作不兼容。只有整数格式是。除非您使用的是 NVIDIA 扩展。
其次,图像格式兼容性规则不允许你假装RGBA32F纹理是R32UI纹理。它们基于兼容的纹素大小工作,RGBA32F的大小为 128 位,而 R32UI 的大小为 32 位。