您的位置:首页 > 移动开发 > Unity3D

Unity使用Animator实现人物头部朝向鼠标

2015-08-25 17:05 1476 查看
using UnityEngine;
using System.Collections;

public class LookAtTest : MonoBehaviour {

private Animator _animator;
private Vector3 _pos ;

// Use this for initialization
void Start () {
_animator = GetComponent<Animator>();
}

void OnAnimatorIK(int layer){
if (layer == 1) {
Vector3 pos =  Camera.main.ScreenToWorldPoint (new Vector3(Input.mousePosition.x,Input.mousePosition.y,Camera.main.transform.position.z));
_pos = Vector3.Lerp (_pos, pos, 0.075f);

_animator.SetLookAtPosition (_pos);
_animator.SetLookAtWeight (0.25f,0.5f,1f,1f,0.6f);
}
}
}


说明:需要在动画的Layers上新建立一层,开启IK,这一层的Weight设置为1,Blending设置为Override。 因为如果直接在默认层设置,会影响之前的动画。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity