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。 因为如果直接在默认层设置,会影响之前的动画。