阿赵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的材质球。现在编辑修改材质,然后通过材质实例来单独修改暴露的参数,并赋给网格模型使用。

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



相关推荐
名字不要太长 像我这样就好3 小时前
【iOS】OC源码阅读——alloc源码分析
笔记·学习·macos·ios·objective-c
xin007hoyo4 小时前
算法笔记.染色法判断二分图
数据结构·笔记·算法
conkl4 小时前
如何初入学习编程包含学习流程图
学习·流程图
大学生亨亨4 小时前
go语言八股文(五)
开发语言·笔记·golang
FAREWELL000757 小时前
C#进阶学习(十六)C#中的迭代器
开发语言·学习·c#·迭代器模式·迭代器
无敌小茶7 小时前
Linux学习笔记之动静态库
linux·笔记
DXM05218 小时前
牟乃夏《ArcGIS Engine地理信息系统开发教程》学习笔记3-地图基本操作与实战案例
开发语言·笔记·学习·arcgis·c#·ae·arcgis engine
qsmyhsgcs9 小时前
Java程序员转人工智能入门学习路线图(2025版)
java·人工智能·学习·机器学习·算法工程师·人工智能入门·ai算法工程师
Humbunklung9 小时前
PySide6 GUI 学习笔记——常用类及控件使用方法(常用类矩阵QRectF)
笔记·python·学习·pyqt
每次的天空11 小时前
Android学习总结之Java篇(一)
android·java·学习