[Unity]Animation Rigging Chain IKを使う(非エンジニア)

Unity version 2021.3.4f1

参考元

1、Animation Riggingをインストール

Package Managerを開く

メニューからWindow >> Package Manager

Animation Riggingをインストール

  1. Packages:のプルダウンメニューからUnity Registryを選択

  2. Installボタンを押す

インストールするとSampleがImportできるようになる

2、Bone RendererをAdd Component

Bone Rendererはボーンを表示するためのコンポーネントなのでIKには関係がない
画面でボーンの動きを見やすくしたい場合にAdd Componentする
必要なければなくても良い

  1. IKを使いたいfbxファイルをHierarchyにドラッグ&ドロップする

  2. fbxオブジェクトを選択しInspectorウィンドウのAdd ComponentからBone Rendererを追加

  3. Transformsの+を押して項目を追加

  4. 追加した項目に表示したいボーンをドラッグ&ドロップする

Bone Sizeを少し大きくした方が見やすいかも

3、RigをAdd Component

fbxオブジェクトを選択しInspectorウィンドウのAdd ComponentからRigを追加

※ここでは同じオブジェクトにAdd Componentするので関係ないが
RigがAdd Componentされているオブジェクトは下記のRig BuilderがAdd Componentされているオブジェクト以下の階層になっている必要がある
実行中にオブジェクトの親子関係が変更されると階層に関係なくIKが効かなくなる

4、Rig BuilderをAdd Component

  1. fbxオブジェクトを選択しInspectorウィンドウのAdd ComponentからRig Builderを追加

  2. Rig LayersにRigをAdd Componentしたオブジェクトを指定

Animatorが一緒にAdd Componentされるがここでは使用しないのでそのままにしておく
Rig BuilderをRemoveしない限りAnimatorをRemoveできない

5、Chain IK ConstraintをAdd Component

  1. fbxオブジェクトを選択しInspectorウィンドウのAdd ComponentからChain IK Constraintを追加

  2. RootにIKの根本になるボーンオブジェクトを指定する

  3. TipにIKの先端になるボーンオブジェクトを指定する

  4. Targetに動かすボーンオブジェクトを指定する

※ここでは全てTestオブジェクトにAdd Componentしているので関係ないが
IKがAdd ComponentされているオブジェクトはRigがAdd Componentされているオブジェクト以下の階層になっている必要がある
実行中にオブジェクトの親子関係が変更されると階層に関係なくIKが効かなくなる

※指定するボーンはRigがAdd Componentされているオブジェクト以下の階層になっている必要がある

※右手に持ったオブジェクトのTargetを左手オブジェクトの子にしたくなるがTargetの親子関係が変更されてIKが効かなくなるので手の位置に合わせたい場合はtransform.positionで位置を合わせる
合わせてもズレる場合はLateUpdateでtransform.positionの代入を行ってみる

6、実行して確認

SceneウィンドウでTargetに指定したオブジェクトを動かして確認する
※GameウィンドウではなくSceneウィンドウ

勉強中ですので説明が間違っている可能性があります自分でも調べて確認してみてください

この記事が気に入ったらサポートをしてみませんか?