欢迎光临散文网 会员登陆 & 注册

Unity学习笔记 Vol.79 实时动画叙事教程part4

2020-12-17 15:50 作者:NXL2  | 我要投稿

摘要     

    使用Unity创建实时动画的具体流程第一部分。内容如下

流程

    后处理的动态模糊我们可以在Volume添加Motion Blur。

下面我们准备制作迷雾的粒子效果。在层级面板中右击我们选择添加粒子系统。这个粒子特效可以根据我们的需求进行调节。但是必须要有Renderer这个选项。

我们可以在这里控制它的启动和停止。

我们在Inspector中对粒子系统进行设置,Start Lifetime为生命周期,Start Speed是开始的速度,Start Size为初始的大小,我们还可以调节粒子的颜色和透明度。Play On Awake是场景在运行时自动播放。如果我们希望用代码来控制就不要勾选这个选项。Max Particles为场景中最多粒子可以达到的数量。

我们勾选Shape这个选项,Shape可以控制粒子喷射的形状,以Cone为例,Angle和Radius可以控制粒子喷射的大小范围,Radius Thickness可以控制粒子喷射的内圈大小,Arc可以设置喷射的弧度大小,360就是整个圆形都可以喷射,而180就是半圈。

我们再勾选Color over Lifetime,这个选项是控制生命周期中粒子颜色的变化。我们可以将粒子的初始透明度设置较低,再中期拉高,在最后再让透明度为0。这样可以产生迷雾的效果。

我们在Renderer中对粒子进行最后的设置。我们可以自己选择想要Material赋予给粒子。

我们在层级面板中,创建一个空的GameObject,将粒子系统拖到它的下面,并将它命名为VFX。


Visual Effect Graph

    首先在PackageManager中下载并安装Visual Effect Graph,在Asset文件夹下创建一个新的 文件夹,命名为VFX,然后再它里面右击新建Visual Effect Graph。

将它命名为Spark。并将它拖到场景中。

双击可以打开VFX的窗口,Spawn这个Context我们可以设置Rate,每秒可以产生粒子的数量,设置完成后我们点左上角 Compile可以看到编译的结果。

接着初始Context

Capacity为粒子的最大数量

Set Velocity Random可以设置粒子随机的移动方向

Set Lifetime Random可以设置粒子的随机生命周期

我们可以在Context中右击,创建新的模块。

比如我们想让它以盒子的形状进行发射,可以添加上面的模块。

Update Particle是每帧粒子产生的变化。

OutputParticle则是最终粒子输出的效果。

VFX给我们提供了很多模板效果。我们可以将当前这个模版的模块删除。

右击选择System中Simple Swarm Particle System。

马上可以看到效果。

前面我们使用过后处理效果,可能让场景过亮。我们可以先关闭后处理效果。我们可以查看Update和Output中的模块内容,可以尝试改变以达到自己需要的效果。

这里我们再换另一个模版。Simple Heads & Sparks

在这个模版的Update中我们可以看到它输出的Evt连接到另一个GPU事件Context。

我们要制作一个广告牌蹦出火花的效果。在Initialize Particle进行设置。

我们在输出时将颜色修改为红色。

具体VEG我们可参考官方文档,还可以在下载VEG同时下载官方样本案例。


背景音乐

    下面我们来添加背景音乐。在场景中创建一个空的GameObject,命名为Background Music。

我们给这空的物体添加Audio  Source组件。

正常情况下,在主相机的组件中会有Audio Listener这个组件可以让我们听到声音。

Audio Mixer可以把我们声音调整到不同的轨道,有点类似调音台的功能。打开的快捷键是Ctrl+8。

在播放场景的同时,我们还可以对音源进行各种设置。

我们可以在Spatial Blend中将声音设置2D或3D的相似程度,设置3D后我们可以展开3D Sound Settings选项卡,对更多3D声音内容进行设置。

我们还可以添加回响组件,Audio Source Filter。

回响组件可以模拟声音在各种场景下产生的不同变化。默认是用户自定义。我们使用下面的参数可以进行各种试验。另外Unity还给了我们很多模版,来模拟声音在不同场景的拟真效果,比如密室,森林,洞穴等等。

比如我们这个案例中使用在巷子中,我们可以选择Alley。

我们还要将声音表现得更加丰富有层次感,有淡入淡出的效果。将背景音乐拖到Timeline中。

我们找开曲线编辑,在显示的地方添加关键帧。

拖出一个淡出的效果。那么它就会有缓缓退出的效果。

我们将小狗和小猫的声音拖到Timeline中。

在轨道上右击选择Add From Audio Clip,选择我们需要的音源。


TextMesh Pro

    在Package Manager中找到TextMesh Pro下载并安装。

下载完成后还可以需要下载基本资源和样本扩展资源。

在扩展包中我们只需要上面这些内容,可以选择后导入。

在层级中我们添加TextMesh Pro。我们在Inspector中找到Canvas Scaler。

在Canvas Scaler中选择Scale With Screen Size。这样字体会自动适应当前屏幕。

分辨率使用1920x1080,Match设置为0.5。

我们如果想要使用TextMesh Pro字体,需要有对应字体的Asset文件。

我们将需要的字体放入Unity,在该字体上右击选择Font Asset,如上图。

完成后

然后我们就可以进行各种字体的设置。

我们还可以设置颜色渐变的Asset。以便可以随时调用它。

我们再给字体添加一个淡入淡出的动画。在Timeline中右击创建Animaiton Track。

再将字体拖入其中。

我们在轨道中创建关键帧,思路是在第0帧将字体的Alpha设置为0,过5帧后再将它设置为255,再过几帧后再将它设置为0,这样就产生了淡入淡出的效果。

同样道理,我们还可以创建一个Image组件,把它拖入Timeline中制作出由黑屏转为场景的效果。

调整关键帧还有一个小窍门,正常在编辑关键帧可能会不太精确,我们可以在关键帧上右击,调整time的值就可以精确调节关键帧数。另外还可框选关键帧来调节曲线的宽度。

Unity学习笔记 Vol.79 实时动画叙事教程part4的评论 (共 条)

分享到微博请遵守国家法律