Avatar boby mask

unity可以通过身体遮罩(boby mask)来选择性的控制身体的某一部分是否受动画的影响,用户可以在Mesh import inspector的Animation选项卡及Animation layers面板中找到boby Mask控制选项,这样就可以控制动画的局部更新从而满足一些特殊需求

例如一个标准的走路动画即包含手臂运动又包含腿部运动,但如果希望该角色在走路时双手抱着一个大型的物体,即手臂不会来回摆动,这时用户仍可使用这个标准的动画,只需要在boby mask中禁止手臂运动即可

boby mask可以控制的身体部分包括,头部,左臂,右臂,左手,右手,左腿,右腿和根节点(以脚底下shadow来表示),此外,还可以通过boby mask为手和脚切换IK状态,从而决定在动画混合过程中是否引入IK曲线,可以单击Avatar的某一部分来开启或关闭其IK功能,或者双击空白区域来开启或关闭所有部分的IK功能

在Mesh import inspector的Animation选项卡中,会有一个标记识为Clips的列表,其中含有所有游戏对象的动画片段,当选中的列表中的某一项时,将会显示该项的所有控制选项,其中就包含了boby mask编辑器,用户也可以 通过依次打开菜单栏中的assets->create->avatar boby mask选项来创建boby mask资源,并保存为.mask 文件,当指定Animation layers时,这地boby mask资源可以在Animator controller中被复用,使用boby mask的一个好处是减少内存开销,这时因为不受动画影响的身体部分就不需要计算与其关联动画曲线,同时,在动画回放时也无需重启计算无用的动画曲线,进而减少动画的CPU开销

你可能感兴趣的:(Unity3D,内置)