火焰特效基础纹理,火材质纹理制作

火焰特效是游戏场景和技能中出镜率比较高的类型。 场景中火焰的特效用于制作篝火、灯光或部分墓地的可疑火焰等; 技能中有释放火球、受到打击的效果等。

特效原理分析:

要制造火焰,火焰的运动、火焰中心产生内外火焰、高热高亮、火焰形态随机喷射、纹理面积逐渐衰减、燃烧时伴随黑烟和残渣到处飞扬、小火星被装饰接下来,我们首先从炉膛材质的纹理创建开始学习。

火堆材质的纹理创建

首先制作火焰的基础纹理。 互联网上有很多特效地图素材库,有条件的同学可以在各个CG论坛上下载。 这里介绍如何在没有素材库的情况下制作火焰纹理素材。

打开Photoshop (编辑者使用的版本是CS6 ),然后使用快捷键Ctrl N创建一个高度和宽度为512像素的新空白图案。

创建新图案后,使用快捷键d将颜色表重置为前景颜色的黑色,背景颜色的白色。 使用快捷键Alt Delete,用前景色——的黑色填充当前图层,使整个图层为黑色纹理的底色。

找到“编辑”窗口右下角的“图层”面板,然后单击下面工具栏中的“新建图层”按钮,创建新的空白图层,并在黑色背景图层中显示空白图层。 选择这个新的第1层开始纹理创建。

使用快捷键Alt Delete将新图层填充为黑色,在Photoshop菜单栏中找到“滤镜”菜单,然后从“渲染”类中选择“图层化云”。

整个图像变成了黑白的噪音纹理。 然后选择左侧工具栏上的橡皮擦工具,并将“编辑”窗口顶部的不透明度设置为50%。 在图层上使用“橡皮擦”工具修剪噪波纹理,最终将其修剪为如图所示或几乎相同的样式。 这是火焰的基本纹理。 画不好的学生还是建议在CG论坛上找现成的火焰纹理进行下一步制作。 想耐心学习手绘地图的人请自己画一下纹理。

单击Photoshop的“文件”菜单,将纹理图像另存为TGA格式的文件,选中存储通道,然后选择“存储32位格式”。 24位不保存alpha通道。 基本的火焰纹理完成了。 接下来,需要将纹理叠加添加到此基础火焰贴图。 建议在网络中的每个CG论坛上搜索火焰纹理图案。

准备这两个火焰纹理,打开Unreal Engine 4编辑器,将这两个纹理贴图导入到引擎Content根目录的“Textures”文件夹中,为其命名,然后将纹理贴图转化为材质

如图所示,在材质文件夹下创建一个新着色器,将该着色器命名为Fire,然后双击Fire着色器图标以打开材质编辑窗口。 由于火焰本身是光源,不受其他光源的影响,高热高光是其基本属性,因此在材质中,高光叠加和蒙版模式是纹理表示的必要属性。

在“材质特性”窗口中,将混合模式设置为“相关高光叠加”模式,将照明模式“着色模型”设置为“未发光蒙版”模式,然后选中“Two Sided”材质双面显示

按住t键并在材质编辑窗口中单击鼠标左键以创建纹理样例纹理表达式,然后将在Photoshop中创建的基本火焰纹理添加到纹理表达式的属性窗口中。

由于材质用于粒子系统,因此还必须添加粒子颜色表达式,以便“粒子系统颜色”模块可以控制材质颜色。 使用乘法公式连接纹理表达式和粒子颜色表达式,并将乘法结果连接到材质的Emissive Color自发光通道。 请参照图。 材质预览窗口显示纹理的基本样式。

按住t键,在材质编辑窗口中单击鼠标左键以创建纹理表示,然后在属性窗口中选择另一个提供的火焰复盖纹理,以将该贴图纹理添加到表示中。

将火焰纹理表达式与火焰叠加表达式的alpha通道相乘,将相乘结果与粒子颜色的alpha通道相乘,然后将结果连接到材质的Opacity透明通道。

在某些情况下,火焰复盖纹理采用JPG格式且没有alpha通道,因此也可以将JPG纹理表达式的r通道与火焰贴图alpha相乘。 r、g、b通道与alpha通道同样为单通道类型,单通道之间可以无错误地相互连接。

在实际应用中,火焰材质纹理并不完全静止,而是在火焰燃烧时不断改变自己的形状。 参照这个原理,静态纹理需要增加一些运动。

[ctrlc]将纹理表示重叠粘贴在红色火焰上,在其旁边粘贴[ctrlv],按住p键单击鼠标左键,在编辑窗口中创建Panner坐标变换表达式,然后为复制的重叠纹理表示创建UVs诺在“Panner属性”窗口中,将x轴的值设置为0.05,然后从右向左滚动纹理。

将Panner与Texture Sample表达式一起选中框,然后复制并粘贴。 对于粘贴的组,请将“Panner属性”窗口中的x轴值设置为零,将y轴值设置为0.1,以从下向上滚动纹理。 与上一组滚动纹理的速度和方向不同。 将TexCoord纹理坐标表达式添加到其中一个Panner表达式之前,以调整纹理图案的UV拉伸。

在TexCoord表达式的属性窗口中,将u和v分别设置为0.1和0.2,拉伸纹理,将纹理的x轴压缩为10%,y轴压缩为20%的大小。

将这两组纹理滚动表达式的r通道连接到Add加法公式,以将两个纹理图案相加。

再次复制并粘贴火焰复盖纹理表达式。 右键单击以搜索旋转式并将其添加到“编辑”窗口。 将Rotator表达式连接到火焰复盖纹理表达式的UVs节点。 完成后,复制并粘贴这两个表达式,然后选择其中一个Rotator表达式。 在“属性”窗口中,将“Speed”值更改为-0.1,区分两组纹理的旋转方向,将“Center Y”值更改为1,以不规则地旋转纹理并偏移两组纹理的旋转位置。 将这两组旋转纹理表达式的r通道连接到Add表达式并相加。

用“相乘”(Multiply )表达式连接两组连接滚动纹理和旋转纹理的添加/相加结果。 控制纹理运动的表达式集合可以看作是整体模块,统称为“纹理扰动模块”。 将连接两组Add结果的乘法公式连接到新乘法公式的a节点。 复制并粘贴基于火焰的纹理表示,并将纹理表示的alpha通道连接到乘法b节点,以强制动态纹理在基于火焰的纹理范围内工作。

在如图所示创建纹理扰动后,添加Multiply表达式,将纹理扰动结果连接到a节点,将数值为0.2的常量表达式连接到b节点。 此表达式是扰乱动态的控制开关,常量表达式用于控制强度。

例如,如果现在将常量值设置为0,则表示不再显示扰动并关闭动态纹理开关。 常量参数为1,表示完全显示了扰乱纹理的动画,并打开了纹理动态开关。 这里,常数式的数值取0.2,意味着具有只扰乱纹理运动20%的效果。 数值为1时打开100%效果。

如图所示,为了扰乱纹理开关式的右侧,添加了加法(Add )式,在按住u键的同时单击鼠标左键添加了TexCoord式,将该TexCoord式连接到加法式a节点上。 加法式的b节点连接前面的搅乱纹理开关的乘法输出结果。 将此添加表达式的结果分别连接到基础火焰纹理表达式和火焰复盖纹理表达式的UVs节点。 “材质预览”窗口现在在纹理表面显示动态纹理,如水波。 这样干扰纹理运动的方法称为纹理噪声。

如图所示,火焰材质节点的总图,比较基础,但一般而言是足够的。 接着用粒子系统制造火焰。

0

站点公告

[免费直播课]PR剪辑+AE特效+C4D特训课程
现在报名并提交作业送礼物一份
仅剩 11 位名额
登录+报名