我想对大于 GPU 内存的大型数据集实现基于 GPU 的光线投射体积渲染。我尝试这样做:
(1)首先我将体积分成大小相等的砖块。
(2)然后我根据传递函数决定每块砖是否透明。
(3)然后我将不透明的砖块存储到“Packed-Texture”中。为了在光线投射渲染期间进行采样,我创建了另一个名为“Index-Texture”的纹理,它将砖块索引存储在 Packed-Texture 中。
当我在着色器中渲染期间进行采样时,首先我计算采样点在哪个砖块中。然后我访问索引纹理以获取采样点的值。但默认值是插值后的值,而不是正确地在 Packed-Texture 中的砖的索引。
所以,我的问题是:在光线投射渲染期间进行采样时,如何从索引纹理中正确获取 Packed-Texture 中的砖索引(采样点所在的位置)?