用GLSL创建深度缓冲区直方图纹理
|
我正在使用当前上下文的深度缓冲区来影响正在显示的纹理。纹理是一维的,呈灰度。从左到右代表从近到远。在某个深度处的像素越多,则该点处的纹理越亮,黑色是该深度处没有像素,白色是所有像素都处于该深度处。
现在,我有了一个在深度缓冲区上执行does0ѭ的解决方案,并在CPU上对其进行分析,然后将其写回到纹理中。自然,这是应用程序中的真正瓶颈。
我正在寻找一种全GPU解决方案,其中在着色器或类似工具中分析深度缓冲区并以这种方式更新纹理。我考虑过要创建一个片段着色器,该片段着色器读取深度值并增加到纹理中的相应像素,但是这将要求片段着色器可以写入其他纹理。我已经学会了一种禁忌,尤其是如果他们必须写入相同的像素时。
是否有我缺少的技巧或技术,或者我被迫让CPU参与其中?
没有找到相关结果
已邀请:
2 个回复
广躺椽
夏瓤跋棘