Unity Mecanim动画系统 之 模型动画的复用(动画重定向)功能的简单实现
Unity Mecanim动画系统 之 模型动画的复用(动画重定向)功能的简单实现
目录
一、简单介绍
Unity中的一些基础知识点。便于后期开发使用。
Unity动画系统,也称为“Mecanim”,提供了以下功能:
简单的工作流程,设置动画的所有元素,包括对象,角色和属性。
支持导入外部创建的动画片段和使用内置动画编辑器制作的动画片段。
人型动画重新定位,动画角色的运动控制可以被所有的角色模型共享,即角色的外观(SkinedMesh)和运动(Animator)是分离的,它们互相组合之后形成最终的动画。
用于编辑动画状态的的简化工作流程,即动画控制器。
方便预览动画片段,以及片段之间的插值过渡。 这使得动画师可以独立于程序员工作,在不运行游戏的情况下,可以对原型和预览动画进行预览。
管理动画与可视化编程工具之间的复杂交互。
不同的身体部位可以使用不同的动画逻辑控制。
动画的分层和掩蔽功能。
动画重定向,即Animation Retargeting,是一种动画复用的技术。简单来说,重定向技术就是一种在将动画数据从一个骨架拷贝到另外一个骨架的过程,只是这个所谓的“拷贝”过程,没有Ctrl+C、Ctrl+V这么简单,其实现的方式,也会影响到动画应用到另外一个骨架之后的效果。
本节介绍,一个模型的动画给另一个模型使用的的简单方法。
二、实现原理
1、导入模型,把 Animation Type 设置为 Humanoid
2、必要的时候调整下模型 Avatar 的骨骼映射是否符合要求(一般只看看就好,不需要修改)
3、就可把其他同样 Animation Type 为Humanoid 的动画赋给使用了
三、效果预览
四、实现步骤
1、导入模型,设置模型 Animation Type 为 Humanoid
2、点击 Configure... 就可以查看 骨骼配置信息
3、就可以产看模型的 Avatar 的 Mapping 和 Muscles & Settings 了
4、点击面板的 Done 退出面板,回到 Unity 场景
5、新建一个 Animator Controller,把动画拖入控制器中
6、把两个模型的 Animator 都设置为 同一个 动画控制器
7、运行场景,动画此时就被复用到另一个模型上了