原创作品

【原创教程】虚幻4引擎:超写实爆炸特效

474 发表于   2019-05-20 20:33:38
15922
37
178

                                                                             

640.gif

大家好啊~好久没更新了,这次文章分享的是我之前做的一个爆炸效果.本篇教程会以图文的形式,从特效的原理、设计思路到最终实现过程,分为上下两节讲解,希望会对你有所帮助 : )


                                                                      第一章

        说道爆炸,我们脑海中一般会浮现出几个关键词:火球、浓烟、碎片、火星、冲击波等等。这些元素,其实就是我们在开始设计特效时最初的灵感了。我们可以把这些关键词记录下来,下一步就是针对这些关键词去找大量的参考,把灵感连成线,形成更清晰和完整的思路过程。

                                                   QQ图片20190520192843.png

 在确定了大致的思路和方向后,我们就可以开始考虑具体细节的部分了。首先,对于一个特效来说,最基础的是形态。比如这个爆炸,他是球形?还是方形?(显然不可能是方形)是呈放射状,还是扩散形?是单一的几何形状?还是几个几何体的组合?以及在特效变化的过程中,是否有形变?怎么变?这些都是我们需要考虑的问题。


        经常在一些游戏或者影视作品中,我们一看它们的到爆炸效果就会觉得:辣眼睛、5毛啊!造成这种原因,除了环境以及背景和特效没什么关联以外,更重要的是爆炸的规律不正确。比如:

                                                                                           

                                                                                      

QQ图片20190520193531.png

                                                                                 


        由于年代久远、硬件性能或者引擎限制原因,之前的绝大部分游戏中(甚至包括很多3A级别的端游),对于爆炸的表现基本就是用粒子发射一大堆火焰or烟雾贴图糊在一团,有时候再配合一些屏幕后期效果来增强表现。然而随着硬件技术的进步和引擎的不断完善,越来越多的游戏开发者和玩家已经不能满足这种简单而抽象的做法,而是去追求增加真实、更偏写实效果的爆炸表现。

(当然也有往风格化发展的,这里我们先不讨论哈)


                                                      

QQ图片20190520193857.png

《正当防卫3》

                                                                                                       

                                                     

QQ图片20190520193912.png

   

《孤岛惊魂5》


                                                       

QQ图片20190520193925.png

《幽灵行动:荒野》




      从刚才的简单介绍里,我们已经对游戏里的爆炸有了一个初步的认知,接下来我们继续讨论爆炸的形态。在这之前,我们需要对其进行一下简单的分类。




       如果从爆炸的规模来分:


小规模爆炸(手雷,枪榴弹...)


中等爆炸(汽车,导弹,炮弹...)


大型爆炸(轰炸,飞船爆炸、建筑物爆炸...)


特殊爆炸(蘑菇云,恒星爆炸...)


...




        如果从爆炸方式来分:


地面爆炸


空中爆炸


水面爆炸


机器爆炸


...




       如果从爆炸类型来分:


炸弹爆炸(尘土,碎片)


燃料爆炸(火焰,黑烟)


科技爆炸(电浆,粒子)


...




       可以看到,不同类型不同方式下,爆炸的造型、元素和节奏也各不相同。当我们在接到一个需求,或者准备开始一个作品时,首先要确定的是:我需要做一个什么样的爆炸。从规模到方式再到类型以及你能想得到的一切,尽可能详描的在脑海中描述出你要的效果。确定了这些条件,有助于我们在接下来的设计制作过程中始终有一个明确的主题,而不会跑偏。


       回到开始,假设这次我们需要做一个:中等规模 在地面上的 汽车类物体被炸弹引爆的爆炸效果。从这些关键词中,我们可以大致确定特效的基本造型:




                            QQ图片20190520194249.png




        由于爆炸是在地面产生,因此它的形状会被地面所影响,从而出现图中的形态。同时由于温度差异,中央的火球一般会比烟雾温度高,呈现出炽热的红色,并向上翻滚升腾;周围烟雾则温度较低,像四周扩散。因此我们得结论,这种爆炸特效的主体,是中心的火球以及围绕在周围的浓烟。到这里,特效的基本造型也就确定下来了。


        有了主体,下一步就是补充辅助元素来丰富整体效果。我们经常在一些电影中看到,剧烈的爆炸带起来大量的尘土,显得冲击力十足。比如:




QQ图片20190520194334.png


电影《红海行动》




QQ图片20190520194402.png

《叛乱:沙漠风暴》





QQ图片20190520194416.png

真实爆炸




             这种放射状的尘土有助于增加整体特效氛围的真实感与冲击力。因此在设计制作的过程中,同样也会考虑在火球周围加入了类似的元素。



                    QQ图片20190520194909.png



       接下来就是一些小的装饰性元素,比如火星啦,碎片之类的。我们在已有的基础上添加它们来丰富一下画面就好,切勿抢了主体。同时为了增加画面表现力,我们在爆炸一开始的时候加入一个扩散的冲击波,模拟空气被推开的感觉。

                       

                                                                           

QQ图片20190520194922.png

                                                                      冲击波和碎片



                                                                                          


       到这里,对爆炸特效造型和元素的分析这里就先告一段落了。接下来我们讨论几个关键点,有助于提升特效品质。我先罗列一下,然后逐个分析:


1.光影关系


2.环境影响


3.色彩变化


4.烟雾消散


...




一、光影关系


        经常有同学在做写实类特效时,会觉得做出来的东西不够真实,缺少体积感。其实光影关系在对塑造特效真实度和体积感中起到了非常大的作用。举个例子:在现实生活中,很浓的烟雾在强光的照射下,会对自身和环境产生阴影。



QQ图片20190520195221.png




                                我们再来看这两张图:   

                                      

                                                                               显然右图显得更真实,更接近现实世界里的烟雾。




         回到我们的特效上,对于这个爆炸来说,中央火球在燃烧的同时会发出强烈的光线,因此它对我们整个特效来说,就是一个大光源。烟雾在光的影响下,面向火球的一面会比较亮,背向火球的一面则会较暗,这样其自身阴影就产生了。



                                                     QQ图片20190520195617.png


因此,怎么去模拟这些光影明暗关系,就是我们表现特效体积感的重中之重。


(具体做法下一篇讲)




二、环境影响


        环境影响也可以说是特效对周围环境产生的交互,它包含两方面:


1.特效对环境的影响.


2.环境对特效的影响.


        我们在做一个效果时,首先要知道它并不是平白无故的出现在场景中,而是会对周围的环境产生交互。比如发生爆炸时,除了火球周围会产生大量的浓烟以外,猛烈的冲击波扫过地面时,也会带起大范围的烟尘:

640.gif  640.gif

                                                                                                        真实案例

QQ图片20190520200100.png

地面带起的烟尘




        同样,爆炸产生的火球也会照亮场景以及角色,这里就不细说了。


        除了特效影响环境,事实上环境也会反过来对特效造成影响。举几个很简单的例子:烟雾会受到风力的作用,会随风飘动的同时消散;火星和碎片会和地面以及环境发生碰撞。这些微小的动态细节组合在一起,极大程度增加了特效的真实度。

            至于色彩变化和烟雾消散,都属于实际制作时候的技巧,先放到下一节去聊,这里就不赘述啦~

QQ图片20190520200158.png





第二章




       继续之前的内容,这一篇我们来讨论制作中的具体实现方法。首先我们从特效主体开始。 

640.gif


主体火球



        在做这种非常写实的爆炸时,我们经常会用到一些高精度的特效序列图,比如针对这个火球,我就用到了一张这样的贴图。

QQ图片20190520200456.png



       我们可以在fumeFX或是Houdini等一些常见流体特效插件中模拟出火焰或烟雾的效果并导出序列图片,经过AE处理最终拼合成这样一张特效序列图。也可以从现有的素材库中找到一张合适的贴图。(具体贴图的渲染做法这里就不讲了,感兴趣的同学可以去网上收集一些资料,或者以后我也可以出一些相关的教程)


       单看这张贴图,和我们预想的效果还相差甚远,那么如何把一张图片在引擎中加工成为我们想要的效果?下一步我们开始着手准备制作shader。


        在开始shader制作之前,有一个好习惯是先大概罗列出想要的功能,这样可以帮助我们形成一个清晰的思路过程,比如针对这个爆炸,我们希望:


1.基础颜色:烟雾的固有颜色。


2.自发光:燃烧部分的高亮区域。


3.法线:特效受光时产生更多的明暗细节。


4.DepthFade:与地面接触时渐隐来消除切贴图的切边。


5.ParticleColor:粒子控制颜色。



根据这些功能需求,我们可以做出这样一个最简单也是最通用的材质。

QQ图片20190520200621.png


接下来,我们用它生成材质实例,方便之后的引用和修改。


QQ图片20190520200632.png




其中的Normal贴图可以从流体插件中一起导出,也可以用Crazybump一类的贴图处理软件生成。自发光贴图部分则需要我们在ps里处理一下,把火焰燃烧的部分提取出来做成黑白通道图。在调试参数之后,我们会得到这样的效果。


QQ图片20190520200645.png




至此,材质部分告一段落。接下来我们新建一个粒子发射器,把刚才做好的材质导入进来。开始制作动态效果。

QQ图片20190520200700.png


在调试动态时,有几个点是需要我们注意的。首先是为了模拟火球翻滚的效果,我们需要同时发射2-3个粒子,每个粒子有一点微小的随机旋转角度。为了让随机模拟出来的效果达到我们的要求,这里我使用了seed去固定旋转角度。

QQ图片20190520200712.png

火球贴图的朝向


另外为了避免出现贴图和角色穿插从而穿帮的情况,这里我也给了一个camera offset吗,让贴图朝着摄像机的方向移动了一小段距离。


QQ图片20190520200728.png


有一点需要注意的是,因为爆炸的火球实际上是燃料不充分燃烧造型的,橘红色的火焰产生后会转化成大量的黑烟。因此我们在调色的过程中,应该保证整体色彩变化符合这样的规律:

QQ图片20190520200808.png




而不是:

QQ图片20190520200823.png






最后别忘了给火球加入粒子灯光,模拟光源效果。


QQ图片20190520200836.png


完成火球之后,继续制作周围的烟尘部分。材质依旧使用我们刚才做好的通用烟雾shader,重新制作一个材质实例,这次我们换一张贴图:

QQ图片20190520200850.png

烟雾贴图



QQ图片20190520200900.png

材质实例




之后我们建立一个圆形范围粒子发射器,在火球周围产生烟雾。同时为了体现场景互动中的风力作用,给它一个X或Y方向的速度,模拟烟雾被风吹散的效果。


640.gif



有一点非常重要的是,为了表现出特效的光影关系,我们的烟雾贴图需要受光照影响并产生明暗面。因此需要将材质里的混合模式改为Trasnslucent,并且材质类型改为Default Lit,同时在Translucency下将光照模式改为如下所示:



这个时候我们打开之前做好的火球,让粒子灯光影响到烟雾,贴图的明暗关系就产生了:


QQ图片20190520201730.png






通过刚才的步骤,我们对流程应该已经相对熟悉了。有了之前的理论作为铺垫,知道需要做什么,那么接下来速度就很快了。我们加入周围放射状的尘土以及火星粒子和爆炸产生的碎片。


QQ图片20190520201918.png

同样是刚才的材质



QQ图片20190520201929.png

明暗和虚实上可以做出很多细节



640.gif

放烟花啦


QQ图片20190520201948.png

继承父粒子的位置进行繁殖


QQ图片20190520201959.png

碎片有大小两种形态,注意区分重力和速度



QQ图片20190520202012.png

把这些元素整合在一起



QQ图片20190520202022.png

最后,我们再加入冲击波还有地面大范围扬起的烟尘:




QQ图片20190520202031.png


实际上是个半球模型+折射材质



这个要是不会你可以来打我


完成所有的元素后,我们还要对整体的造型、节奏、元素和色彩进行调整,直到效果满意为止。最后再配合屏幕后期效果比如震屏啦、径向模糊之类的增加下整体氛围,这样一个写实爆炸特效就算是完成了。

QQ图片20190520202057.png

QQ图片20190520202107.png


由于文字的限制,一些具体的参数调整过程和细节演示在这里就略过了,不太清基础地方的童鞋可以留言问我~或者等什么时候我再出一些视频教程(可能是猴年马月了哈哈哈)感兴趣的朋友可以在这个基础上继续扩展,做出一个完整的特效作品,比如加入一些导弹飞行动画,或者做个飞机投炸弹之类的表演,相信你一定能比我做的出色!


QQ图片20190520202117.png

同样的知识去扩展



QQ图片20190520202914.png


最后的最后,祝大家越来越牛逼!


我的A站链接:https://www.artstation.com/vfx_474


花瓣主页:https://huaban.com/cross-357-/


邮箱:547370337@qq.com


公众号名称:  一个加班狗的自救手册


没有标签
确定
评论(37)
还没有人评论,快来抢沙发吧!