火焰也是我们经常能够见到的效果,在许多动画或者电影中都会涉及到火的元素,例如,《木乃伊3之龙帝之墓》 、《功夫熊猫》 等,都有大量的火焰特效。
我们来分析一下火焰的特点,大概有以下几个方面。
1.火焰在空气中 是运动的,是-个典型的动态流体。
2.火焰总体的运动方向向上,运动的过程中会产生很乱的扰动。
3.火焰的运动速度很快。
4.燃料与温度同时存在,才能产生火焰。
5.火焰自身发出橘黄色的光。
根据以.上几点观察,我们可以初步确定火焰的形态,如果大家有新的发现同样要考虑到制作的过程中,如图所示。
制作步骤
步骤1:制作火圈材质。
(1)新建一个名为“fluid_ b”的工程文件,执行Create > Polygon Primitives>Plane (创建>多边形基本体>平面)菜单命令,创建-一个地面,改名为“Ground” ,再次执行Create > PolygonPrimitives>Torus (创建>多边形基本体>圆环)命令,创建一个着火物体并改名为“fire_ base”,如图所示。
(2)将两个模型进行适当的缩放,并且给“Fire base"模型赋予一个新的lambert材质,如图所示。
(3)为“Fire_ base”模型制作一个 被火点燃的材质,选择新建的lambert材质,把color (颜色)属性设为纯黑色,再在Incandescence (白炽度)属性上添加一张fractal (分形)纹理,如图所示。
(4)选中Fractal (分形)纹理,找到Effect (效果)卷展栏下的Color Remap (颜色重映射),单击Insert (插入)属性,插入一张ramp纹理,并且将ramp纹理的颜色调节为,图中所示的3个颜色,用来模拟火焰燃烧物体的效果。调节完成后的渲染效果如图所示。
(5)为场景打一盏灯光,模拟火光,执行Create>Lights> Point Light (创建>灯光> 点光源)菜单命令,创建一盏点光源,将点光源移动到"fire_ base” 模型的上方,设置灯光参数, Color (颜色)属性为橘色,Density (强度)属性设置为15,并且将Decay Rate (衰减速率)改为Quadratic (二次方) ,如图所示。
调节完成后的渲染效果如图所示。
步骤2:发射流体。
(1)执行Fluid Effects> Create 3D Container (流体效果>创建3D容器)菜单命令,创建一个3D容器,并且将流体容器移动到图所示的位置。
(2)将"fire_ base”模型作为流体发射器。选择“fire_ base” 模型与流体容器,执行Fluid Effects> Add/Edit Contents> Emit fromObject (流体效果>添加/编辑内容>从对象发射)菜单命令,播放动画,流体就可以从模型上发射了,如图所示。
步骤3:修改流体参数。
(1)修改流体发射器,此时系统生成了一个发射器,作为“fire_ base” 模型的子对象。选择发射器,按下Ctrl+a键打开发射器属性,在Fluid Attributes (流体属性)卷展栏下找到Heat/Voxel/Sec(热量/体素/秒)属性,将参数修改为2;再找到Fuel/Voxel/Sec (燃料/体素/秒)属性,将参数修改为2; Density/Noxel/Sec (密度/体素/秒)属性保持默认不变。因为我们要制作火焰,所以需要让发射器产生更多的热量和燃料,如图所示。
(2)设置流体容器的解算范围与精度。找到Container Properties (容器特性)卷展栏,Base Resolution (基本分辨率)属性调节为30,增加流体的解算精度;再将Boundary Y (边界Y)修改为-y (-Y侧)方式,这样流体到达顶部边界的时候就不会反弹了,参数设置如图所示。
(3)设置流体的解算方式。因为火焰的主要特 点是呈动态变化,而且温度与燃料也是变化的,因此找到Contents Method (内容方法)卷展栏,将其下的Density (密度)、Velocity (速度)、Temperature (温度)和Fuel (燃料)均改为Dynamic Grid (动态网格)计算方式,如图所示。
步骤4:设置流体的动态细节。
(1)找到Contents Details (内容详细信息)卷展栏下的Density (密度)参数,将Density Scale(密度比例)设置为0.5,Buoyancy (浮力)设置为9,Dissipation (消散)设置为0.5, 其他参数保持默认不变,如图所示。
(2)找到Velocity (速度)卷展栏,将Swirl (漩涡)设置为15,再将Noise (噪波)设置为1,这样可以为流体添加一种着火时呈漩涡状的力场,如图所示。
播放动画查看动画效果,如图所示。已经出现了一点类似火焰的动态效果。
(3)找到Turbulence (湍流)卷展栏,将Strength (强度)设置为0.1,给流体的动态再添加一点扰动的力场,让火焰看上去更加自然,如图所示。
Tips:一般情况下Turbulence (湍流)卷展栏下的Strength (强度)值不会设置得太大,因为扰动场是一个没有方向的力场,强度值设置太大通常会让流体偏离用户所设想的运动方向。
(4)进入Temperature (温度)卷展栏,找到Temperature Scale (温度比例)属性,将其设置为2,让流体产生更多的热量,再将Buoyancy (浮力)设置为5,其他参数保持不变,如图所示。
(5)在Fuel (燃料)卷展栏下找到Reaction Speed (反应速度)属性,将其设置为1,其他属性保持不变,如图所示。
Tips:以上所调节的各项参数是经过了很长时间的测试确定下来的,大家可以根据实际的效果调节各项参数,重要的是在调节的过程中获取更多的经验。
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答《黑神话:悟空》作为一款现象级中国游戏,其成功离不开多种先进计算机技术的支持。本文将深入解析该游戏背后的关键技术,包括虚幻引擎......
在游戏开发领域,Unity和Unreal Engine(虚幻引擎)都是备受推崇的游戏引擎,但它们各自拥有不同的特点和优势。
春节之后大量抢人!这6个行业是转行首选,进去1年顶3年!火星毕业就能进
春节后求职,哪些行业进去能立马涨薪?打破信息差很关键!
还没毕业,就去帮电视台拍活动,作品被主任说“非常好”!猜猜是哪个专业呀?
回想过去,电子游戏里的草其实并不是真正的草。开发者们只是简单地把草的纹理直接贴在游戏关卡的地板上
在火星的就业指导老师那里,经常收到同学们这样、那样的提问。其中有一些共性问题,就业老师会根据自己丰富的经验,为同学们给出合适的回答。