layerIndex | @param layerIndex Индекс слоя, на котором решатель IK будет вызван. |
Обратный вызов (Callback) для установки IK анимации (инверсной кинематики).
OnAnimatorIK() вызывается компонентом Аниматора непосредственно перед обновлением внутренней системы IK. Этот обратный вызов может быть использован для установки позиции целей IK и их соответствующих весов.
var leftFootPositionWeight: float; var leftFootRotationWeight: float; var leftFootObj: Transform;
private var animator: Animator;
function Start() { animator = GetComponent.<Animator>(); }
function OnAnimatorIK(layerIndex: int) { animator.SetIKPositionWeight(AvatarIKGoal.LeftFoot,leftFootPositionWeight); animator.SetIKRotationWeight(AvatarIKGoal.LeftFoot,leftFootRotationWeight); animator.SetIKPosition(AvatarIKGoal.LeftFoot,leftFootObj.position); animator.SetIKRotation(AvatarIKGoal.LeftFoot,leftFootObj.rotation); }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public float leftFootPositionWeight; public float leftFootRotationWeight; public Transform leftFootObj; private Animator animator; void Start() { animator = GetComponent<Animator>(); } void OnAnimatorIK(int layerIndex) { animator.SetIKPositionWeight(AvatarIKGoal.LeftFoot, leftFootPositionWeight); animator.SetIKRotationWeight(AvatarIKGoal.LeftFoot, leftFootRotationWeight); animator.SetIKPosition(AvatarIKGoal.LeftFoot, leftFootObj.position); animator.SetIKRotation(AvatarIKGoal.LeftFoot, leftFootObj.rotation); } }