Unity动画丨六Humanoid和Generic的区别导入方式(骨骼映射Avatar创建)
Posted 橙子SKODE
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity动画丨六Humanoid和Generic的区别导入方式(骨骼映射Avatar创建)相关的知识,希望对你有一定的参考价值。
大家好,我是SKODE。
小提示:选中左侧目录,可快速找到所需内容
本系列博客地址:传送门
一、概念介绍
动画:
本章所讲的动画,是美术同学给fbx模型绑定的骨骼动画。
这个动画呢,导入Unity后需要进行设置。在Unity中可设置为三种模式:
None:不导入动画。
我们可以看到下图,将Boulder 1 骨骼设置为None模式,Project下,Boulder 1下仅有一个网格PolyBoulder01
Legacy:老版本动画系统
Generic:通用模式
Humanoid:人形动画
二、Generic与Humanoid动画的区别
Generic:
它是新的动画系统,支持非人形(怪物)动画,也支持人形动画。
但它无法使用Humanoid动画重定向功能。即美术给一个模型做的动画,这些做的动画只能给这个模型使用,不能给其他模型使用。而Humanoid的动画重定向功能,可以实现一个模型的动画,给其他模型使用。
Humanoid:
Humanoid是人形动画,不支持非人形动画。并可使用动画重定向功能。
拓展:
基础知识讲解:
动画,是模型的动作。不是视频“动画片”。
模型动画,是美术同事给模型骨骼绑定动作。骨骼驱动着模型进行运动。
动画重定向功能实现的逻辑:Unity自带一套unity骨骼系统。美术给人物模型做的动画也有一套美术骨骼系统。当设置为Humanoid时,Unity自带的骨骼会自动识别美术给模型做的骨骼,并一一对应起来。
再有新人物模型时,新模型的骨骼也会和Unity骨骼对应起来。
这样用原模型的动画,就可驱动着原模型的骨骼,驱动unity内置骨骼,继而驱动与unity内置骨骼对应的新模型的骨骼,使新模型做出运动。
选择Generic或者Humanoid后,系统都自动为Perfab模型生成Avatar。这个Avatar可以提供给其他同Humanoid的骨骼用来共用Avator(动画重定向),这个例子就是FBX_Female_Hero共用了FBX_Biker的Avatar,记得取消勾选导入FBX_Female_Hero的动画:Animations—Inport Animation取消勾选,不导入动画
二、Humanoid导入方式
1、将模型转化为Humanoid格式。
选中FBX模型,Inspector—Rig—Humanoid—Create From This Model/(Copy from Other Avatar)—Apply—Configure
2、Humanoid属性讲解
绿色、白色都是Unity内置骨骼,会跟人物的骨骼节点映射,白色为未映射正确的。
实线为必须映射骨骼,虚线为非必须的
更改映射方法:点击Model里的白色骨骼,在Hierarchy里选择正确的骨骼节点,拖到它的Mapping(映射)对话框中
注意:Model里末端骨骼为上一级骨骼子节点,Hierarchy里面同理
3、可在Preview里设置运动范围
4、应用你做的设置
Apply—Done
三、骨骼映射
是将模型里的骨骼节点映射到Unity自带的骨骼模型上
Scene里白色、绿色骨骼为我们(美术)创建的骨骼,Mapping(映射)里面为Unity自带骨骼,我们创建的骨骼要映射到Unity自带的骨骼上
Hierarchy里面每个节点都与Scene模型一一对应,我们做的骨骼可能做得比Unity自带的多,也可能少,我们只需要将Unity必须要映射的骨骼映射过去就好了,保证逻辑关系
Scene里面有两块骨骼,左侧Hierarchy节点为长骨骼,它的父节点为短骨骼,他们两个都可以填入右侧Mapping,因为小骨骼带动大骨骼运动,两种方式都可以控制小臂运动。
一起进步
我是SKODE
以上是关于Unity动画丨六Humanoid和Generic的区别导入方式(骨骼映射Avatar创建)的主要内容,如果未能解决你的问题,请参考以下文章
使用AdvancedSkeleton给Unity制作动画的一些经验技巧
humanoid ik unity 配件 animation的问题