



Unity拥有丰富而复杂的动画系统(有时被称为“ Mecanim ”)。它提供:
- 简单的工作流程和Unity的所有元素的动画设置,包括对象,字符和属性。
- 支持在Unity中创建的导入动画片段和动画。
- 人形动画重定向 -将动画从一个角色模型应用到另一角色模型的能力。
- 简化了对齐动画片段的工作流程。
- 方便地预览动画剪辑,转换和它们之间的交互。这使得动画师能够更独立于程序员的工作,原型和预览他们的动画之前的游戏代码被吸引。
- 管理动画与可视化编程工具之间的复杂交互。
- 用不同的逻辑动画不同的身体部位。
- 分层和掩蔽功能。
动画工作流程
Unity的动画系统基于动画片段的概念,动画片段包含有关特定对象随着时间的推移如何改变其位置,旋转或其他属性的信息。每个剪辑可以被认为是一个单一的线性记录。来自外部源的动画剪辑是由艺术家或动画师使用第三方工具(如Max或Maya)创建的,或者来自动作捕捉工作室或其他来源。
动画剪辑然后被组织成一个称为动画控制器的结构化流程图的系统。动画师控制器充当一个“ 状态机器 ”,它跟踪当前正在播放的剪辑,以及何时动画应该改变或混合在一起。

1. 动画剪辑是从外部源导入的,或者是在Unity中创建的。在这个例子中,他们是导入动作捕捉的人形动画。
2. 动画剪辑放置在一个动画控制器中。这显示了Animator窗口中Animator控制器的视图。状态(可能表示动画或嵌套的子状态机)显示为由线连接的节点。该动画制作控制器作为资源存在于“项目”窗口中。
3. 操纵人物模型(在这种情况下,宇航员“Astrella”)具有映射到Unity的通用阿凡达格式的骨骼的特定配置。此映射作为导入的字符模型的一部分存储为“头像”资源,并且也会显示在“项目”窗口中,如图所示。
4. 动画人物模型时,它附有一个动画组件。在上面显示的Inspector视图中,您可以看到Animator组件同时拥有Animator控制器和分配的头像。动画师一起使用这些来动画模型。只有在动画人形角色时才需要头像参考。对于其他类型的动画,只需要一个动画控制器
1. Animation

找到我们导入的动画资源,选择Edit,则可以对动画进行剪切,比方说一个跳跃动作,包含起跳、落地两个动作,我们就可以将一个跳跃动画,剪切为两个动作供我们使用。编辑上图中Start、End时间,即可剪辑;点击上图中+-则增加或减少动作。

Animation Type
一定要注意Animation Type的设置,否则很容易出现错误的效果。
1.Legacy
是我目前使用最多的动画系统,在我看来他已经满足一个项目的绝大部分需求,而且因为最基础所以也最易扩展,需要一些额外功能时也方便修改追加。
2.Generic
与legacy相比,generic可以使用新系统自带的状态机,并且自带可编辑的动画融合系统,然而在我看来这都没什么用。如果generic不与humanoid配合使用,其功能与legacy并无二致,反而因为系统并不成熟更容易出现未知错误。当然,也可能是有其他功能我并未得知,如有遗漏还望指正。
3.Humanoid
字面上理解即为人型骨骼系统,其最显著的特点是可以将max的骨骼转化为unity的骨骼,并且会生成一份avatar,将avatar指定给不同的角色模型。即可无视高矮胖瘦的体型差异将同一个动画分配给每个角色,简单来说就是可以实现动画的通用。
2.Animator

添加Animator,来使用动画的状态机,我们只需考虑状态切换的条件,便于快速制作我们想要的效果。
脚本通过修改状态机中定义的变量,来控制动画

说了这么多,我们实际操作一下,接下来我们来实现下英雄联盟艾希的一个动画和技能的制作



话不多说
直接分享模型资料


步骤这里就不一一展示了,我已经做好了完整的录屏,需要的可以关注+转发,然后私信回复“01”,就可以获取艾希高清视频教程,留下你的评论,会在评论区随机抽取十位粉丝送出额外三款随机模型,想要赶紧私信找我领取哦
最后祝所有程序员都能够走上人生巅峰,让代码将梦想照进现实,非常适合新手学习,有不懂的问题可以随时问我,工作不忙的时候希望可以给大家解惑。