【UE4 材质编辑篇】1.0 shader编译逻辑

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的关系。

相关推荐
肖远行17 小时前
基于Vulkan Specialization Constants的材质变体系统
图形渲染·材质
_李小白18 小时前
【OSG学习笔记】Day 7: 材质与光照——让模型“活”起来
游戏·3d·材质
暴走约伯18 小时前
【3DMax脚本MaxScript开发:创建高效模型虚拟体绑定和材质管理系统,从3DMax到Unreal和Unity引擎_系列第一篇】
3d·unity·材质·unreal·maxscript
北冥没有鱼啊18 小时前
UE 滚动提示条材质制作
游戏·ue5·游戏引擎·ue4·虚幻·材质
在下胡三汉2 天前
3dmax模型怎么导入酷家乐插件,材质贴图在,可优化不卡,可批量处理,无需打开一个个max,可批量转FBX/GLB/GLTF/OBJ/SU
vr·材质·贴图·glb·酷家乐
ue星空9 天前
UE快速预览材质节点快捷键
材质
dermail13 天前
丝杆升降机各部件材质深度剖析:解锁高效稳定运行的技术密码
材质
向宇it14 天前
【blender小技巧】Blender导出带贴图的FBX模型,并在unity中提取材质模型使用
开发语言·unity·c#·游戏引擎·blender·材质·贴图
北冥没有鱼啊15 天前
UE 使用事件分发器设计程序
游戏·ue5·ue4·游戏开发·虚幻
在下胡三汉17 天前
3dmax标准材质/vr/cr材质贴图转PBR材质贴图插件,支持多维子材质转换
vr·材质·贴图