UE4新手,学起来()文章仅记录自己的思考。

参考:虚幻4渲染编程(材质编辑器篇)【第一卷:开篇基础】 - 知乎 (zhihu.com)

开篇基础就摸不着头脑,原因是此前完全没有摸过UE4,一点一点记录吧:

每个连连看都会编译节点后生成一个ShaderTemplate,

但是这篇文章之后的部分,我看的有点稀里糊涂的。

于是看了另一篇关于shader编译的文章:UE4 HLSL 和 Shader 开发指南和技巧 - 知乎 (zhihu.com)

蓝图里的Custom节点,其实就是自定义的一些函数,然后引擎帮你在编译shader的时候生成一个个完整的函数,比如我在UE4.3下一个默认的材质里加入一个简单的return 1的Custom节点:

我们window->HLSL code查看一下这个材质编译出来的code:

我们用VS Code打开,搜索return 1,可以定位到这一段:

没错!这就是我们刚刚加入的简单的Custom函数,并且后面还被用上了:

但还是只有自己动手才能发现,自定义的Custom只有参数遇到输出,才会被编译进HLSL code里:

这种情况下,HLSL Code里不再有我们定义的函数了。不仅仅是Custom,任何没参与的节点都不会被编译。

这下可算搞明白了ShaderTemplete的关系。

精彩内容

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: