我会尽量保持这一点。
我想要一种从Frame Buffer输出(或类似)访问场景的正常信息的方法。可以使用glGetTexImage和GL_DEPTH_COMPONENT访问深度缓冲区。
我知道我可以设置一个片段着色器,它输出RGB色彩空间中的法线信息,然后可以从渲染图像中读取。我想知道是否有办法在openGL API中执行此操作。
我会尽可能地根据要求澄清任何事情, 谢谢
答案 0 :(得分:1)
您已经知道解决方案:将法线渲染为RGB。您可以使用没有内置的普通缓冲区。如果您不想渲染场景两次,请使用具有多个渲染目标(MRT)的帧缓冲对象(FBO)。然后,您可以在片段着色器中将颜色和法线都写入单独的纹理中。