LoginSignup
16
18

More than 5 years have passed since last update.

FinalIKのAim IKのデモシーンを見てみる。

Last updated at Posted at 2016-09-29

Final IKとは

Final IKはUnityでIK(Inverse kinematics:逆運動学)を行うための有料Aseetです。

image

デモシーンを勉強したのでメモをまとめました。

Aim IK デモシーンでお勉強

Aim IKコンポーネント

今回は、AimIKのAim Weaponシーンで勉強。実行すると、こういう感じです。銃の先がボールを向きます。

FinalIK1.gif

このシーンのAimIKのコンポーネントは以下の通り

image

TargetとAim Transform

Aim IKコンポーネントでは、まずTargetとAim Transformを設定します。

"Target"は向けさせたい目標。このシーンではボールです。

"Aim Transform" は、目標に向けさせたいもののTransformです。このシーンでは銃です。銃そのもののTransformが的に向けるときの軸の上に来ない時もあるので、その際は空の子オブジェクトを配置し、それを適切な位置に移動させる。この際、たとえば下図のようにAim Transformの-Y軸を的に向けさせたいなら、Axisの設定を(0,-1,0)にします。

image

なお、この軸は、Aim TransformのLocalの軸を基準にするので注意しましょう。

image

表示設定が上記のようにLocalなっていることを確認してください。

実行すると、下のように見えます。

image

紫色の矢印がAim Transformの方向で、それが的へ向かっています。

ボーンの設定

Bonesで、Aim IKを使って動かしたいボーンを指定します。このシーンでは、腕は固定で体幹の湾曲や回転で銃を目標へ向けます。そのため、ボーンはSpine1-3,Neckを指定します。

image

ボーンは、ヒエラルキーの上から下の順番に合わせて指定します。

image

動かしたいボーンだけ指定しましょう。

Pole Axis

Pole axisは方向の微調整、例えば銃の握りに捻りを加えるのに使います。そのため、Axisの方向とは別の軸に設定する必要があります。

例えば、最初の図では-YをAxisにしたが、ZをPole axisにすれば、Aim Transformの-Y軸を回転軸に、Z軸(青色)をPole Target(コンポーネントで設定できる。何も指定しないと勝手に作られるみたい)に向かうようにひねろうとします。Pole Weightを調整してみましょう。

こちらはAim Transformの軸
image

こちらは、Aim TransformのZ軸をPole Targetに向けようとしている様子。
image

Pole Axisは(0,0,1)

image

このように、姿勢の微調整に便利です。

最後に

とりあえず、Aim IKがわかれば、たとえばユニティちゃんの腕を動かして対象の方向に向ける、といった動作もできるでしょう。皆さんもいろいろ試してください。

16
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
18