阿赵UE学习笔记——9、材质和材质实例

阿赵UE学习笔记目录

  大家好,我是阿赵。

  继续学习虚幻引擎,这次来了解一下UE里面关于材质的一些概念性的东西。

一、材质

  材质这个概念,在所有三维软件里面都会有,比如3Dsmax里面的材质球,或者Unity里面的Material。

  之前在做导入钢铁侠模型的例子的时候,就已经有使用过UE的材质编辑器了。导入了资源之后,内容浏览器里面也会出现"材质"类型的资源。

  如果我们要新建一个材质文件,可以在快速创建内容里面找到:

  这样就可以创建一个空白的材质球文件。

  那么,这个UE里面的材质文件,是否就相当于Unity里面的Material呢?

  双击这个材质文件,可以打开UE的材质编辑器:

  可以看到,在这个材质编辑器里面,左边是材质球效果的预览,左下角是一些设置参数。

  然后右边,是一个似乎很熟悉的身影,和我之前介绍过的,在Unity里面使用的ASE可视化编辑Shader工具,相似度超过了90%,连快捷键几乎都一模一样。由于我之前对于UE的了解不算多,所以也不知道是谁参考的谁。不过鉴于这是UE的自带功能,而ASE只是Unity的一个插件,所以我觉得ASE参考UE材质编辑的可能性会比较大吧。

  这个输出节点里面内容很多,关于那些内容是可以使用的,是和左下角的材质域选项有关。切换一下类型,会看到输出节点的可用接口会发生变化:

  如果熟悉之前我介绍过的ASE插件操作的朋友,按道理会比较容易上手这套UE的材质编辑器。基本上材质是一样的,可以直接从内容浏览器里面把贴图拖到材质编辑器里面。

  也可以鼠标右键点击空白的地方,然后选择创建自己需要的参数。不过UE的材质编辑器里面可以使用的东西比ASE多很多。这就证明了UE材质编辑器的功能会比ASE强大很多,但另一个问题时,UE材质编辑器里面想找一个能用的东西,需要对它非常熟悉,不然会找到吐血。

  当然大部分常用的节点都是有快捷键的,比如按T再点击鼠标,就能创建一个贴图节点,  按1-4的数字再按鼠标,可以创建1-4维的向量节点,这些都是和ASE一样的。

  由于这里只是介绍概念,所以细节就不多说,快速的把需要的贴图拖入编辑器,然后进行连线:

  这样一个材质就编辑好了,可以在左上角的材质球预览里面看到效果。

  编辑完之后,一定要记得保存。保存完之后,这个材质就可以使用在模型上了。

二、材质实例

  熟悉Unity引擎的朋友,看完上面关于UE的材质文件的介绍之后,一般会发现有这些疑点:

1.Unity的ASE编辑器,是编辑Shader用的,为什么UE却是在编辑材质球的时候用呢?

2.UE的Shader在哪里?

3.是不是每个材质都需要这样编辑?能不能像Unity一样,使用同一个Shader的材质只是换一下参数就能有不同效果?

  这里是一个概念性的问题,UE的所谓材质文件,更接近于Unity的Shader,可以直接在上面通过连接节点实现各种效果。不过区别只是UE的Shader,是可以当做材质球直接用的而已。

  那么在UE里面怎样才能创建和Unity的材质球对应等级的东西呢?

  这里要引入另外一个概念,叫做:材质实例。

  创建材质实例的方法有2个:

1.选择需要的材质文件,右键------创建材质实例

  这样创建的材质实例,默认就会关联上了之前选择的材质文件

2.在内容浏览器里面,创建------材质------材质实例

  这样创建的材质实例,是空白的,需要自己手动去指定父项的材质。

  创建完材质实例之后,双击打开,会看到这次的材质编辑器的界面和之前完全不一样了。

  里面没有了节点编辑器,可以选择的参数也很少。不过也没有看到之前我拖进去的几张贴图可以替换的地方。

  这是因为默认在材质里面创建的参数,都是私有的,如果想暴露在材质实例里面可以修改,还要进行一些操作:

  比如我想把漫反射贴图暴露出来让材质实例可以替换,于是我选择漫反射贴图节点,右键------转换为参数

  然后把参数的名字改为DiffuseTex。

  保存一下材质文件,然后到材质实例的窗口去看看,会发现多了一个参数组,里面就多了一个叫做DiffuseTex的贴图参数。不过默认是灰色的,前面的勾选默认是没有勾的。

  当我们需要修改这张贴图的时候,可以把前面的勾选勾上,然后就可以在后面的框里面换贴图了。

  假如我现在想加多一个颜色参数,可以和漫反射相乘的,创建一个三维向量,连好线

  然后也是在节点上右键------转换为参数

  把名字改成ColorOffset

  保存之后,回到材质实例,会看到又多了个颜色的参数,这时候可以修改颜色了

  到了这一步,就已经达到之前预想的目的了,UE的材质相当于Unity的Shader,然后UE的材质实例相当于Unity的材质球。现在编辑修改材质,然后通过材质实例来单独修改暴露的参数,并赋给网格模型使用。

  材质和材质实例有保存兄弟项和保存子项的操作,实际上就是另存一份。



相关推荐
通信小呆呆4 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick4 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee4 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn864 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e4 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨4 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙
闪闪发亮的小星星4 天前
高斯光以及高斯光公式解释
笔记
cqbzcsq4 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
YangYang9YangYan4 天前
2026初入职场学习数据分析的价值
学习·数据挖掘·数据分析
阿米亚波4 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm