【unity】【VR】如何给Character添加自由的手臂动作

【背景】

导入了带骨架的Character后,如何让手臂等做出一些动作来呢?
在这里插入图片描述

【实现方法】

按照传统的Animation方法的话,就是要找到Rig的各个关节,通过对关节进行旋转等方法,静态地实现不同姿势,但是如何动态地去让Character活动起来了,我们可以给Rig加约束Constrains。
在这里插入图片描述

【添加Constrains】

先追加一个Package:Animation Rigging,安装导入项目。
在这里插入图片描述

在Character对象根目录下新建一个空对象,命名为VR Constrains,追加一个组件Rig:

在这里插入图片描述
在VR Constrains下追加一个Empty Object,命名为Right Arm IK,用来容纳手臂动作对象并挂载脚本。
在Right Arm IK下再新建两个Empty Object,分别命名为Target和Hint,Target用来放右手的同步标记,而Hint则是用来作为右臂关节的活动范围提示。
用Animation Rigging菜单下的Align Transform讲手和手肘的位置与骨架Rig中手和手肘关节的位置对齐。注意,手肘标记的目的是给出手肘活动的建议范围,所以对齐后,还需要往后稍稍挪动。
在这里插入图片描述

简单来说,就是给手和手肘两个位移标记,标记移动,手和手肘就根据约束随之移动到合适的位置。
在这里插入图片描述
Right Arm IK下追加Two Bone IK Constraint组件。手臂骨架由根部,中部,端部三个部分组成,分别拖入相应位置。Target和hint拖入source objects。
在这里插入图片描述
运行游戏,移动Target,发现整个右臂骨架都会很自然地根据Target位置摆出Pose。

左臂可以用同样方法实现骨架自然移动功能。

猜你喜欢

转载自blog.csdn.net/weixin_41697242/article/details/125624919
今日推荐