尝试使用RenderDoc查看UE的Shader代码

您所在的位置:网站首页 shader代码ue 尝试使用RenderDoc查看UE的Shader代码

尝试使用RenderDoc查看UE的Shader代码

2024-07-11 19:49| 来源: 网络整理| 查看: 265

问题

在《学习使用RenderDoc查看着色器代码》我学习了如何使用RenderDoc查看shader代码。 在《在UE4中使用RenderDoc》中我学习了如何在UE4中使用RenderDoc。 不过有个问题是,如果我直接在UE中截帧尝试看shader代码,看到的是不具有可读性的汇编指令: 在这里插入图片描述 本篇的目标是尝试解决这个问题。

必要操作:r.Shaders.Optimize 和 r.Shaders.KeepDebugInfo

通过查阅《UE4中使用RenderDoc截帧 - 可可西 - 博客园》资料,发现这个问题相关的两个关键控制台变量是r.Shaders.Optimize和r.Shaders.KeepDebugInfo。 需要的值是:

r.Shaders.Optimize=0 r.Shaders.KeepDebugInfo=1

这两个控制台变量在编辑器运行时可以查询到,默认情况下的值刚好相反,而且不能在编辑器内修改。 要想修改,就要在\Engine\Config\ConsoleVariables.ini中修改。 默认情况下,这两个变量的赋值语句都被注释掉了,去掉他们的注释即可: 在这里插入图片描述

随后,再启动引擎编辑器,截帧,即可看到可读的shader代码了: 在这里插入图片描述

可能不是必要的步骤*:设置为Debug?

因为之前有听到说法是,需要将VS解决方案的配置(原始的这个窗口可能较短,变长的方法见【附录】) 从 在这里插入图片描述 改为 在这里插入图片描述 可我换了以后没看到对这个问题有帮助。最后发现只要设置了r.Shaders.Optimize和r.Shaders.KeepDebugInfo,那么就算在Development下也能看到可读的shader代码。 所以暂时认为Debug可能不是必要步骤。

不过,设置为Debug可能在其他方面有帮助,所以我暂时记录下遇到的问题。

换过去之后启动后遇到问题: 在这里插入图片描述 在 这里 看到了解决方法,即先找一个能进去的模式然后点 File > Cook Content for Windows 在这里插入图片描述 等待Cook完成: 在这里插入图片描述 随后再换成Debug启动,就看不到这个报错了。

附录:让解决方案配置窗口变长一些

在《修改VS2017解决方案配置窗口宽度》中找到了方法:

工具>自定义 在这里插入图片描述 命令>工具栏中选“标准” 选择“解决方案配置” 点击“修改所选内容” 在这里插入图片描述 修改宽度,之后点确定。 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3