言語: 日本語
  • C#
  • JS
  • Boo

スクリプト言語

お好みのスクリプト言語を選択すると、サンプルコードがその言語で表示されます。

Animator.SetIKRotationWeight

Switch to Manual
public function SetIKRotationWeight(goal: AvatarIKGoal, value: float): void;

Parameters

goal 設定したAvatarIKGoal
value 回転のウェイト

Description

IK ゴールの移転したウェイトをセットします(0 = IK 前の元のアニメーション位置、1 = ゴール位置)

IK ゴールは特定のボディパーツのターゲット位置および回転です。Unity により開始位置からパーツをターゲットに向けて移動する方法を計算できます(すなわちアニメーションから取得された現在の位置および回転)。 この関数によりスタートからゴールの間のどこを IK が目指すかを示す 0 から 1 の範囲のウェイト値をセットします。位置そのものは SetIKRotation を使用して別にセットされます。

var objToAimAt: Transform;

private var animator: Animator;


function Start() {
	animator = GetComponent.<Animator>();
}


function OnAnimatorIK(layerIndex: int) {
	var handRotation = Quaternion.LookRotation(objToAimAt.position - transform.position);
	animator.SetIKRotationWeight(AvatarIKGoal.RightHand, 1.0);
	animator.SetIKRotation(AvatarIKGoal.RightHand, handRotation);                    
}