码迷,mamicode.com
首页 > 编程语言 > 详细

Unity ---- 运行动画时修改局部骨骼的rotation

时间:2016-01-22 21:23:39      阅读:379      评论:0      收藏:0      [点我收藏+]

标签:

这几天一直被一个问题困扰着。因为要做一个射击的小demo,涉及到地面上的人射击空中的飞机。

但是动画中的人物的头部要看向飞机才会更真实,可是我人物里的头用Transfor根本找不到啊!!!

苦恼了好久,今天想着去Animator里找找有木有可用的函数,妈蛋 一找就有收获!!!

技术分享

 

原先是酱紫。头部是正常的角度。

加上以下代码便会有改变~~Surprise~~~!!!

    private void OnAnimatorIK(int layerIndex)
    {
        float angle_Z = Vector3.Angle(player.position - transform.position, transform.forward);
        Debug.Log(angle_Z);
        animator.SetBoneLocalRotation(HumanBodyBones.Head, Quaternion.Euler(0, 0, angle_Z));
    }

现在运行!!!

技术分享

 

Unity ---- 运行动画时修改局部骨骼的rotation

标签:

原文地址:http://www.cnblogs.com/wangsaiws/p/5152008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!