unreal所有源码很长,几百万行,一辈子也抄不完。然而,ue4.0版本的runtime渲染相关部分大概11万行左右,再循序渐进逐版本抄写。
可以从果推因,把涉及到shader的文件抄一抄。
比如LoadShaderSourceFileChecked(TEXT(“/Engine/Private/MaterialTemplate.ush”), GetShaderPlatform(), MaterialTemplate);
可知MaterialTemplate.ush文件关联HLSLMaterialTranslator.cpp,把这个抄一抄就可以了。再把这个文件的各个函数设断点,看看与哪些关联,调试下。以此类推。
本文探讨了如何通过分析Unreal Engine的源码,特别是渲染相关部分,来理解其工作原理。从加载Shader源码开始,逐步深入到HLSLMaterialTranslator.cpp,设置断点进行调试,以此类推,揭示了Unreal Engine中Shader和材质系统的内部关联。
464

被折叠的 条评论
为什么被折叠?



