Animation Riggingは、再生中のアニメーションの上から、骨の向きや位置を計算で上書きする仕組みである。
手を特定の場所に届かせたり、首を対象に向けたりするのに使う。
ここでは、動く最小の構成と、その後で増やしていける制約の種類を整理する。
内容は2026年9月20日にUnityの公開マニュアルを確認したもので、実機での再現は含まない。
何をするものか
公式マニュアルでは、アニメーションされたオブジェクトに手続き的な動きを足すための制約のまとまりを作る、と説明されている。
挙げられている使いどころは2つある。
- キャラクターの装備・小道具・装飾品の二次的な動きを制御する
- IKやAimの制約で、対話的な調整やアニメーションの圧縮による誤差を補う
アニメーションを作り直すのではなく、再生した結果に手を入れる形になる。
そのため、同じアニメーションのまま、対象に合わせて動きを変えられる。
動く最小の構成
公式マニュアルに書かれている組み立ての流れは次のとおりである。
- ルートのGameObjectにAnimatorを付ける
- 同じルートにRig Builderを付ける
- ルートの直下に子のGameObjectを作る
- その子にRigを付ける
- Rig BuilderのRig Layersに、作ったRigを割り当てる
- Rigの子として、制約のコンポーネントを付けたGameObjectを置く
- TargetやHintになるGameObjectを、その制約の下に置く
Rig Builderについては、既存のAnimatorのステートマシンに追記されるPlayable Graphを作る、と説明されている。
つまり、Animatorの再生結果の後ろに処理が足される形になる。
そのため、Animatorが無いと動かない。
Rigは1つの階層に1つ
公式マニュアルには、1つのコントロールリグの階層にRigコンポーネントは1つだけにする、という注意がある。
制約をいくつも足したくなっても、Rigを増やすのではなく、Rigの下に制約を並べる。
切り替えたい単位が別にあるときだけ、Rig Layersに別のRigを足す。
メニューから雛形を作る
上の手順のうち、最初のあたりはメニューから作れる。
| メニュー項目 | 何をするか |
|---|---|
| Rig Setup | 選択したGameObjectにRigBuilderを作り、Rigを付けた「Rig 1」という子を作る |
| Bone Renderer Setup | 子のSkinned Mesh Rendererから骨を取り出して、BoneRendererを作る |
| Restore Bind Pose | 読み込んだときのバインドポーズに戻す |
| Align Transform | 選んだものの位置と回転を、別のGameObjectに合わせる |
| Align Position | 位置だけを合わせる |
| Align Rotation | 回転だけを合わせる |
Bone Renderer Setupを先に実行しておくと、シーン上で骨が見えるようになる。
どの骨を掴んでいるのかが分からなくなるのは、これを入れていないときが多い。
Targetを骨の位置に合わせるときは、Align Transformを使うとずれない。
腕を届かせる制約
手を狙った場所へ持っていくには、Two Bone IK Constraintを使う。
公式マニュアルでは、2つのGameObjectの単純な階層の制御を反転させ、手足の先が目標の位置に届くようにする、と説明されている。
| 項目 | 入れるもの |
|---|---|
| Root | 手足の階層のいちばん根元 |
| Mid | その間。Rootの子である必要がある |
| Tip | 先端。Midの子である必要がある |
| Target | Tipに来てほしい位置を示すGameObject |
| Hint | 曲がるときにどちら向きになるかを示すGameObject(任意) |
腕なら、Rootが肩、Midが肘、Tipが手首にあたる。
Hintを置かないと、肘がどちらへ曲がるかが決まらない。
肘を後ろに置いたGameObjectを作り、Hintに入れる。
効き具合を決める
| 項目 | 何を決めるか |
|---|---|
| Weight | 制約全体の効き。0なら手足に影響しない |
| Target Position Weight | 目標に届かせるときの位置の計算への効き |
| Target Rotation Weight | Tipに掛ける回転の効き |
| Hint Weight | Hintが階層の形に与える効き |
| Maintain Target Offset | TipとTargetの最初のずれを保つかどうか |
Weightを0から1へ動かせるため、必要な場面だけ効かせられる。
たとえば、物を掴む瞬間だけ1にして、離したら0に戻す。
急に1にすると手が飛ぶため、時間をかけて変える。
制約は12種類ある
公式マニュアルに並んでいる制約は次のとおりである。
- Blend Constraint
- Chain IK Constraint
- Damped Transform
- Multi-Aim Constraint
- Multi-Parent Constraint
- Multi-Position Constraint
- Multi-Referential Constraint
- Multi-Rotation Constraint
- Override Transform
- Twist Chain Constraint
- Twist Correction
- Two Bone IK Constraint
名前から役割が読めるものが多く、Aimは向ける、Parentは追従、IKは届かせる、になる。
まずTwo Bone IKで1つ動かしてから、必要なものを足していくと迷いにくい。
動かないときに見るところ
- ルートにAnimatorとRig Builderの両方が付いているか
- Rig BuilderのRig Layersに、作ったRigが入っているか
- 制約を付けたGameObjectが、Rigの子になっているか
- RootとMidとTipが、親子の順になっているか
- Weightが0のままになっていないか
この5つで、動かない場面のほとんどが当てはまる。
階層の置き場所を間違えていても、エラーは出ずにただ効かない。
まとめ
- Animation Riggingは、再生したアニメーションの上から骨を計算で動かす
- ルートにAnimatorとRig Builder、その子にRigを置くのが最小の形
- Rigは1つのコントロールリグの階層に1つだけにする
- Two Bone IKでは、Root・Mid・Tipを親子の順に入れる
- Hintを置かないと、肘や膝の曲がる向きが決まらない
- Weightを0から1へ動かして、必要な場面だけ効かせる
この記事は2026年9月20日時点の公開マニュアルの記載に基づいている。
組み立ての流れはUnity公式のRigging Workflowにある。
制約の一覧はConstraint Componentsにまとまっている。
各項目の意味はTwo Bone IK Constraintに載っている。
Unityの操作はUnityの使い方まとめにも置いている。
