什么是Avatar
模型中的人物都具有结构相似的骨架,如果建立一个模型骨架结构的映射,就能将同一个动画应用于不同的模型中,这就是Avatar,实现了一种动画重定向的功能。一般使用3DMax、Maya制作并导出为.fbx的人物模型,在导入Unity时会自动产生这个Avatar。
并且一旦建立动画的控制机Animator时,也会让你选择相对应的Avatar:
应用1:使用Avatar更换人物模型
1. 下载一个成熟完整的场景,比如AssetStore中的第三人控制器Third Person Character Controller,它包含了完整的动画及场景,可以以此为模板:
2. 准备一个自己想要的主角模型,也放在Assets中,用它来替换1.中Third Person的主角,比如下面这个:
3. 找到Third Person场景中的主角节点,将它与预制体分离开,以便于后面的编辑:
分离以后,它的图标就不再是预制体的图标了:
4. 把新的主角模型,那个高中生小姑娘拖入主角的节点下面,当然也要让它解除与预制体的关联:
5. 这里我们只要新主角的模型mesh即可,其他的节点都可以删除(需要观察一下,不同的模型内部的节点不同)。顺便把原来主角的Mesh也删除,只保留根节点。删完以后主角节点变成图2:
6. 把新主角的Avatar替换到人物的根节点——PlayerArmature (1)节点上
7. 这样,新主角就替代成功了:
应用2:Avatar遮罩
在动画中,有时人物会手拿一件东西走路,这时候拿东西的手是不应该摆动的,因此需要使用遮罩,使得手在播放走路动画时静止不动