这是我第二天使用着色器,到目前为止非常有趣。我开始谷歌如何调试你的代码,发现,(显然)你不能与GPU通信,因为你可以与CPU -因此调试是不那么直截了当。我发现了很多用于着色器调试的调试工具,但没有在macOS上运行的。现在我的问题是是否有工具或方法在macOS上调试着色器代码?对不起,如果这是一个noobie问题…我搜索了工具,但不幸的是找不到任何在macOS上运行的工具。你也可以在着色器内部调试,只要满足一个条件就画一条线或其他东西--但必须有一种更优雅的方式,对吗?
xe55xuns1#
你可以试试GLSL-Debugger。该项目正试图向支持OSX的方向发展(目前还没有)。但是,源代码和构建系统都是可用的,因此如果您愿意深入研究该级别的工作,您可能能够在OSX上编译它。RenderDoc是另一个至少支持Linux的,所以它可以通过一些工作转移到OSX。否则,最好的建议是使用第二个输出路径或纹理创建调试纹理。将您感兴趣的任何值呈现为某种解释的颜色输出,以便您可以查找奇怪的行为。您还可以创建输入键作为数字标志,它将根据您想要查看的内容更改输出。一个例子是shader I wrote在Shadertoy上,其中每个字母键都会更改渲染输出,因此您可以查看不同的值是如何计算的,并检查奇怪的数值错误。
1条答案
按热度按时间xe55xuns1#
你可以试试GLSL-Debugger。该项目正试图向支持OSX的方向发展(目前还没有)。但是,源代码和构建系统都是可用的,因此如果您愿意深入研究该级别的工作,您可能能够在OSX上编译它。
RenderDoc是另一个至少支持Linux的,所以它可以通过一些工作转移到OSX。
否则,最好的建议是使用第二个输出路径或纹理创建调试纹理。将您感兴趣的任何值呈现为某种解释的颜色输出,以便您可以查找奇怪的行为。
您还可以创建输入键作为数字标志,它将根据您想要查看的内容更改输出。一个例子是shader I wrote在Shadertoy上,其中每个字母键都会更改渲染输出,因此您可以查看不同的值是如何计算的,并检查奇怪的数值错误。