Unity动画丨六、Humanoid和Generic的区别、导入方式(骨骼映射、Avatar创建)

一、区别:

Generic:

1、无法使用动画重定向功能,即一个人物的动画,只能自己使用

2、只能通过动画和代码共同控制人物运动

 

Humanoid:    

Humanoid通过骨骼映射,去识别别的动画,应用到自己身上

1、可以使用动画重定向功能,即一个人物的动画,多个共同骨骼的模型可共同使用

2、只通过动画便可控制人物运动,运动距离是在设计动画模型时便已经设计好的,动画会更加协调

 

选择Generic或者Humanoid后,系统都自动为Perfab模型生成Avatar,这个Avatar可以提供给其他同Humanoid的骨骼用来共用Avator(动画重定向),这个例子就是FBX_Female_Hero共用了FBX_Biker的Avatar,记得取消勾选导入FBX_Female_Hero的动画:Animations—Inport Animation取消勾选,不导入动画

Unity动画丨六、Humanoid和Generic的区别、导入方式(骨骼映射、Avatar创建)

 

二、Humanoid导入方式

1、Inspector—Rig—Humanoid—Create From This Model/(Copy from Other Avatar)—Apply—Configure

Unity动画丨六、Humanoid和Generic的区别、导入方式(骨骼映射、Avatar创建)

2、绿色、白色都是Unity内置骨骼,会跟人物的骨骼节点映射,白色为未映射正确的

实线为必须映射骨骼,虚线为非必须的

更改映射方法:点击Model里的白色骨骼,在Hierarchy里选择正确的骨骼节点,拖到它的Mapping(映射)对话框中

注意:Model里末端骨骼为上一级骨骼子节点,Hierarchy里面同理

Unity动画丨六、Humanoid和Generic的区别、导入方式(骨骼映射、Avatar创建)

3、可在Preview里设置运动范围

Unity动画丨六、Humanoid和Generic的区别、导入方式(骨骼映射、Avatar创建)

4、Apply—Done

 

三、骨骼映射

是将模型里的骨骼节点映射到Unity自带的骨骼模型上

Scene里白色、绿色骨骼为我们创建的骨骼,Mapping(映射)里面为Unity自带骨骼,我们创建的骨骼要映射到Unity自带的骨骼上

Hierarchy里面每个节点都与Scene模型一一对应,我们做的骨骼可能做得比Unity自带的多,也可能少,我们只需要将Unity必须要映射的骨骼映射过去就好了,保证逻辑关系

Unity动画丨六、Humanoid和Generic的区别、导入方式(骨骼映射、Avatar创建)

Scene里面有两块骨骼,左侧Hierarchy节点为长骨骼,它的父节点为短骨骼,他们两个都可以填入右侧Mapping,因为小骨骼带动大骨骼运动,两种方式都可以控制小臂运动