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

游戏原型系列 vol.18 如何制作一个格斗过场动画

2021-01-12 15:03 作者:NXL2  | 我要投稿

摘要

    本系列将使用不同的Unity功能来制作小型项目,在本节中,我将大致介绍如何制作许多格斗游戏中的绝招过场动画。我们将分几步讨论开发流程包括制作项目所需的资源,使用Unity Timeline功能制作过场动画及如何提升场景整体外观。那开始吧。视频教程请参考官方。


教程

        在制作本原型时,首先下载资源,我们在场景中加MegaCity的道具和两位忍者。

Cinemachine 

   为了让两位忍者一直处于摄像机框架内,我们使用了Cinemachine虚拟摄像机,跟随、瞄准目标群组(Target Group)的功能,可接收两位人物的位置。

    找出两者间的中点,接着,在虚拟摄像机的Aim属性中

    选择群组构图(Group Composer)选项,让摄像机能根据两者间的距离自动地调整景深。

Timeline

    接着就能着手制作过场了,为此我们用到了Timeline功能,Timeline功能可用于制作易于编辑的线性场序。

右击创建Cinemachine Track

    创建Cinemachine Track后,我们就能在摄像机间形成平滑的过渡效果。

    制作任意角度的镜头,在释放绝招时 ,我们希望让人物的动画有一种力量聚集起来的感觉。

Animation Rigging

    为此,我们用到了Animation Rigging包,用现成的动画约束,为人物制作动画,覆盖闲置动画。

    在本示例中,我们在双臂上使用了两个IK约束,来制作期望的姿势,需要注意的是运行时的骨架(Rig)有一个权重(Weight)属性,确定了约束对人物动画的影响力。

    我们将在Timeline中修改权重值,为此,需要用到动画的Override Track

打开动画编辑器在不同关键帧设置权重值

    在轨道中记录、添加数值制作新动画。在本动画中,我们用了多个关键帧来修改骨架权重值。

    Timeline中也能用Control Track来启用特定对象。

Particle System

    我们使用该轨道来启用粒子系统,而使用轨道时我们能前后看拖动

拖动滑杆可以预览粒子效果

    预览粒子的放射效果

将Radial设置为-0.64

    为了让粒子系统有充能的感觉,我们调整了生命周期矢量(Volocity over Lifetime)模块的半径(Radial)矢量值,使用粒子飞行到放射的中心

将Orbital x设置为2,y设置为3

    我们还调整了环绕(Orbital)属性,如名字所示,调整粒子在x、y和z轴环绕轨道上的矢量属性,还启用了轨迹(Trail)模块让效果更加美观。

    在Override Track上,我们还修改了部分属性,其中包含虚拟摄像机噪声的强度,让摄像机的抖动随能量 聚集而增强。

Post-Processing Volume

    我们还制作了专门的Post-Processing Volume(后理处理体积)

    在充能完毕时激活,在释放绝招的第二部分,我们用另一个摄像机来拍摄另一个姿势,还添加了命中另一位玩家的逻辑

    我们利用Override Track,修改了双手的IK目标方向

    再用Control Track启用额外的粒子效果,其中一个效果很好地营造起绝招的效果

    使用伸展后的Billboard渲染模式,生成了周围的线性光线

 

   为了触发Timeline中的代码,我们新建了一个 Signal Track在特定时间点,激活人物脚本中的特定函数

    脚本使用SphereCast来在Timeline播放时,检测位于玩家面前的目标

    我们还添加了UI来反映大招伤害。在本次实验最后,我们找到了一种在游戏中灵活编辑、微调过场动画的方法,Cinemachine和Timeline的组合使用,让我们成功制作出了一个好看的绝招动画。项目下载请参照官方视频链接。


游戏原型系列 vol.18 如何制作一个格斗过场动画的评论 (共 条)

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