我正在调试GLSL顶点着色器,并且无法摆脱自己做错了的感觉。
总的来说,我有两种策略来弥补跟踪的不足
- 我将值填充到调试颜色变化中,然后将其传递给片段着色器,然后尝试解释颜色。
- 我更改了顶点着色器代码,看看会发生什么。
我在想,理想情况下,我可以通过以某种方式将值写入纹理,从GPU读取纹理并打印填充在纹理中的值来弥补跟踪的不足。
我的猜测是可能会有更好的方法。有什么建议么?
我正在调试GLSL顶点着色器,并且无法摆脱自己做错了的感觉。
总的来说,我有两种策略来弥补跟踪的不足
我在想,理想情况下,我可以通过以某种方式将值写入纹理,从GPU读取纹理并打印填充在纹理中的值来弥补跟踪的不足。
我的猜测是可能会有更好的方法。有什么建议么?
Answers:
我的一个朋友为此使用了glslDevil,并表示还可以。
如果您不依赖GLSL,Microsoft会为DirectX提供令人称奇的工具PIX,但我认为OpenGL没有任何等效的工具。
nVidia有一个很棒的着色器调试器。您可以在这里找到它及其规格
2016年更新:还有一个Visual Studio插件,这很可能是他们在帮助开发人员方面的最新成果,网址为:https : //developer.nvidia.com/nvidia-nsight-visual-studio-edition