作者:朱佳敏 zjmjeo@qq.com
前言
1. 在学习材质球的基础上,通过这篇文章,美术的新同学可以了解什么是材质球模板和关联材质球
2. 通过两个例子来展示材质球模板和关联材质球的制作过程
3. 一些关于展现一个材质的属性和细节的Tips
4. 使用英文界面UDK来演示
5. 平时比较懒,不会主动写教程,有需求的话,尽量把需求详细写明,能提供素材更好,能做的我会完成并将制作流程做成图文教程发到网上
【概念介绍】
材质球模板:在U3项目开发中,我们通常为同一类材质做一套模板,设置统一的Texture place
holder和控制参数,是一种特殊的Material。例子中会详细说明
关联材质球:Material
Instance,在关联材质球中引用材质球模板,他们是子父关系,一个材质球模板可以做出不同的关联材质球。
【作用】
1. 减少工作量:一套材质球模板可以涵盖所有的同类材质球,只要通过更换关联材质球的贴图,就能形成不同的关联材质球
2. 减少了材质球的数量,从而减少了内存占用
3. 通过添加控制参数,可以在粒子特效系统和KISMET中控制这些参数的变化。比如材质变色等
【实例】制作材质球模板
【注】下面我会用官方的素材来再现一个材质球的制作过程,一些基本操作请参考:[Unreal3美术教程]在Unreal3内制作材质球,基本操作不再赘述
第一步,制作材质球模板的基础部分
1. 选取默认贴图,尺寸不需要很大
默认的Diffuse和Specular就是类似T_Reflection这种灰色图
默认的Mormal就是类似T_Normal这种没有凹凸的图,表明默认光滑
默认的Emissive和Decal就是类似T_Emissive这种全黑的图,表明默认没有Emissive和Decal
默认的透明,MASK和通道就是全白的图,表明默认没有透明等。
2. 创建Material,命名M_Proto。制作思路与普通的材质球相同,但是用的一些节点稍有不同。材质球模板所用的一些节点参数都可以在关联材质球中再次设置。
| 节点功能 |
普通材质球 |
材质球模板 |
| 一维运算:数学运算等 |
Constant |
ScalarParameter |
| 二维运算:UV运算等 |
Constant2Vector |
VectorParameter |
| 三维运算:贴图、矢量运算等 |
Constant3Vector |
VectorParameter |
| 四维运算 |
Constant4Vector |
VectorParameter |
| 引用贴图 |
TextureSample |
TextureSample Parameter2D |
| 可以在FX中调节时间-颜色曲线 |
|
Vertex Color |
【疑问】读者可能有疑问,既然后者的功能都包含了前者,为什么epic还要把前者放进来呢?为什么不只留下后面一排的节点?答案我也不知道
3. 完成最基本的连接
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
第二步 添加参数控制节点
1. Diffuse,用一个VectorParameter来控制Diffuse的输出颜色,默认(1,1,1,1)
【Tips】
Ctrl+Alt左键框选节点后,空白处右键选择new
comment可议将选中的节点框住,有助于分类管理
清晰命名每个控制节点有助于后期的调整
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
2. Emissive,用一个ScalarParameter来控制Emissive的自发光强度,默认10
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
3. Specular,用一个ScalarParameter来控制Specular的强度,默认1
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
4. Specular Power,用一个ScalarParameter来控制Specular
Power的强度,默认15
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
5. Normal,用VectorParameter来控制Normal和Detail
Normal的强度;用ScalarParameter来控制Detail Normal的tiling次数
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
6. 最后全部连起来
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
【实例】制作关联材质球
1. 右键选择New Material Instance Constant创建Material
Instance,命名MI_Road
2. 选中M_Proto,切换到MI_Road编辑界面,引用到Parent选项
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
3. 在各个下拉菜单中,可以重新设定参数。在此把默认贴图换掉
![[Unreal3_Material]制作材质球模板和关联材质球 [Unreal3_Material]制作材质球模板和关联材质球](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
【注】打钩表明使用新参数;不打勾使用默认
其他
1. 关联材质球的用法和普通材质球一样
2. 如果要制作同类的其他材质球如墙壁、草地、雪地什么,重复上一步:制作关联材质球,修改参数即可。
3. 如果控制参数不够用,可以扩展材质球模板或者制作新的模板
4. 独特或是复杂的材质球一般不用模板,单独做
加载中,请稍候......