こんにちは、Unityエンジニアのオオバです。
Unityでキャラクターをアニメーションさせる時、 同じAnimationClipを使いまわしたい って思ったことはありませんか?試しに他のキャラクターに同じAnimationClipを適用したら動かなくなった。。。という経験もあるかもしれません。
実はUnityにはAnimationClipを使い回すための仕組みが用意されています。
それが 「Humanoid Avatar」 です。
Humanoid Avatarを使うと 1つのAnimationClipを複数のキャラクターで再生させることが可能 になります。
そこで本記事ではHumanoid Avatarを使ってAnimationClipを使い回す方法を解説していきます。
1つのAnimationClipをいろんなキャラで使ってみたい方はぜひ最後まで読んでみてください。
HumanoidAvatarを使うとAnimationClipを使い回せる
はじめに結論を簡単にまとめます。
①Humanoid AvatarはUnityが用意したアバターシステム
②複数のキャラに対して同じAnimationClipを適用可能
③AnimationClipを使い回せて大幅なコストカットできる
④自然なアニメーションブレンドが可能
Humanoid Avatarを使うことでAnimationClipを使い回せます。
特に3Dキャラを使ったゲーム開発は 予算が問題 になります。クオリティを求めれば求めるほどお金のかかる世界です。アニメーションデータも例外ではありません。
しかしHumanoid Avatarを使うことで作成個数を減らし コストカット できるかもしれません。
ぜひ本記事を参考にHumanoid Avatarの使い方を覚えてみましょう。
👉DOTweenの教科書を読んでUnityアニメーションをプログラミングしてみよう!
GenericとHumanoidの違い
具体的なHumanoid Avatarの解説の前に、Unityが提供する「Generic」と「Humanoid」という2つのアニメーションシステムについて理解を深めておきましょう。
両者の違いは AnimationClipの再生ターゲット です。
Genericは一般的なアニメーションシステムで、GameObjectの階層と名前が再生ターゲットです。つまりGameObjectの階層構造通りのAnimationClipを用意する必要があるのです。
↑上図はGenericのAnimationClipです。ご覧の通りGameObjectの階層と名前がAnimationClipのターゲットになっています。
一方Humanoidの再生ターゲットはGameObject名ではありません。Unity側が定義するターゲットが再生ターゲットなのです。
↑上図はHumanoidのAnimationClipです。Genericと比べて階層が存在しません。またGameObject名も無視されていることがわかります。
このようにGenericとHumanoidは全くの別物です。GenericとHumanoidのAnimationClipは使い回すことはできないことに注意しましょう。
ゲーム開発を始める際にHumanoidを使うのかGenericを使うのか決めておくことをオススメします。
HumanoidAvatar(ヒューマノイドアバター)とは?
では本題のHumanoid Avatarとは何か解説していきます。Humanoid AvatarとはUnityが用意したアバターシステムです。アバターとはキャラクターのこと。つまりHumanoidAvatarは人型専用のシステムを指します。
アバターにはボーンが組み込まれていて、ボーンを動かすことでアバターはアニメーションする仕組みです。
そして 人型のボーン構造は基本的に同じ であるためUnityは人型キャラクターに対してHumanoid Avatarという特別な仕組みを提供しているのです。
例えばUnityが無償提供しているUnityちゃんを確認してみましょう。
UnityちゃんのFBXファイルの Inspector > Configureボタン
をクリックしてください。
するとこのような画面が表示されます。
ターゲット先とターゲット元を紐づけることができます。この仕組みによって、ボーン名が異なっていてもターゲットさえ設定できていれば同じAnimationClipが再生できるということです。
2つの別のアセットを比べてみました。ターゲット元(ボーン名)がそれぞれ異なっていますがHumanoid Avatar側のターゲットと紐づけています。
↑上の動画のように1つのアニメーションを両方のモデルで再生できていることがわかります。
Humanoid Avatarのメリット
Humanoid Avatarを使うメリットは多いです。
- 異なるキャラクターに同じアニメーションの適用
- アニメーションブレンドの利用
- IKが標準搭載
メリット1.異なるキャラクターに同じアニメーションの適用
HumanoidAvatarを使うと異なるキャラクターに対して同じアニメーション(AnimationClip)を適用できます。
同じアニメーションを適用することで ゲーム開発の大きなコストカット にも繋がります。
身長差があってもアニメーションを使い回せるのは大きなメリットです。また先のポスト内のサンプル動画では、それぞれ作成者の異なるキャラクターアセットを複数組み合わせて使用しています。
Humanoid Avatarを使うことで同じアニメーションを使い回せるため開発の幅が大きく広がりますね。
メリット2.アニメーションブレンドの利用
Humanoid Avatarのメリット2つ目はアニメーション同士のブレンドがより自然になることです。
例えば歩きから走り出す、走った後攻撃するなど、アバターは複数のアニメーションがつながることが多いです。
これらのアニメーションをブレンドすることで自然な動作に仕上げることができます。もちろんGenericでもアニメーションブレンドは可能ですが、Humanoid Avatarの方が より自然なアニメーションブレンド ができます。
メリット3.IKが標準搭載
Humanoid Avatarのメリット3つ目はIKが利用できることです。IK(アイケー)とはインバースキネマティクスの略でボーン制御方法の名称です。
IKは一言で表すと「先端を動かす」です。
例えば腕、肘、手の中で先端の「手」を動かすことで肘、肩の座標と角度が自動で計算されてアニメーションします。
Humanoid Avatarの使い方
具体的なHumanoid Avatarの使い方を解説していきます。Humanoidはインポートしたファイル設定で行います。
MayaやBlenderといった3D作成ツールから書き出されたFBXを用意してください。
FBXをUnityにインポートすると、Inspectorウィンドウ上でAnimationTypeを指定できます。
FBXファイルInspectorウィンドウ内の Rig タブをクリック。すると AnimationType プルダウンから「Humanoid」を選択可能です。
必ずここがHumanoidであることに注意してください。
Unity Asset Storeの人型アバターは基本的にHumanoid設定
せっかくUnity Asset Storeでキャラクターモデルのアセットを購入してもモーションが適用できないと意味がありません。
そこでオオバが過去にUnity Asset Store 購入してきた人型アバターが1つのモーションで動作するのか検証してみました。
結論、Unity Asset Storeで購入したアバターたちはHumanoidで作られており、1つのモーションを使い回すことができました。
とはいえ実際に見てみないとわからないと思うので、動画撮影したものを紹介していきます。

↑今回使用するモーションは過去Unity Asset Storeで購入したKAWAII ANIMATIONS 100の中に収録されている歩行モーションです。
この歩行モーションを複数のアバターアセットに対して適用してみたいと思います。
まずはHumanoid 3D Charactor_P07_ver.3.0_Cocoのアバターを使ってモーションを再生させてみます。
次にAnime Girls Packを使ってみます。

次にハイパーカジュアルゲームで使われてそうなキャラアセットUltimate Hypercasual Characters (43 BodyTypes)を使ってみます。

ローポリキャラのPOLYGON Fantasy Characters - Low Poly 3D Art by Syntyです。
等身の高いUnityちゃん、3等身のSD Unityちゃん、身長差があっても同じアニメーションを再生できてしまいます。
このようにUnity Asset Storeで購入したアバターはHumanoid Avatarであるため、モーションはさまざまなキャラクターで使いまわせそうです。
みなさんもぜひ手持ちのアバターとモーションを組み合わせて動かしてみましょう。
また今回使用した再生モーションKAWAII ANIMATIONS 100には大量の女の子の仕草アニメーションが大量に格納されていてオススメです。オオバもよく使っています。
Humanoidが適用できない条件
ここでHumanoidが使用できない条件について解説しておきます。人型だからHumanoidを使えるということで、千手観音でもHumanoidが使える?と思われがちですが使用できません。
あくまで手足が2本ずつの人型モデルにしか提供できない点に注意してください。
もちろん魚や4足歩行の動物(上図の象など)もGenericを使用する必要があります。
Animancerを使ってAnimationClip確認を効率化
AnimationClipを使い回せて便利だけど、AnimationClipを確認するまでに以下の手順を踏む必要があり面倒くさいですよね。
- AnimatorControllerの作成
- ステート作成
- ステートにAnimationClipをセット
- AnimatorControllerをAnimatorにセット
そこで便利なのがAnimancerです。

Animancerは数行のコードでAnimationClipを簡単に再生できるアセットです。その他に旧来のAnimatorの課題を解決しています。
Animancerを使うと次の2ステップでサクッとAnimationClipの再生確認ができます。
- AnimancerComponentをセット
- AnimationClipをセット
Animancerは以下の数行のコードでAnimatorと連携してAnimationClipを再生できます。
public class PlayAnimationOnEnable : MonoBehaviour
{
[SerializeField] private AnimancerComponent _Animancer;
[SerializeField] private AnimationClip _Animation;
protected virtual void OnEnable()
{
_Animancer.Play(_Animation);
}
}
すると以下のようにHumanoid AvatarでAnimationClipを簡単に確認できます。
Animancerはお試し用のLite版もあるため興味ある方は触ってみてください。
※ただしビルドしたアプリ上では使用できないため注意
Animancerは内部実装にPlayableAPIを使用していてAnimatorControllerを使わずAnimationClipを再生できます。
またPlayable APIはアニメーションに限らずはさまざまな場面で活用可能で便利です。ぜひ一度自分で簡単な処理をPlayable APIで作ってみることをオススメします。ゲーム開発の幅が広がるでしょう。
初心者向けのPlayable API入門記事を執筆しているので、ぜひ読んでみてください。
まとめ
本記事ではUnityが提供する人型アニメーションの仕組みHumanoid Avatarについて解説してきました。Humanoid Avatarを使うと 1つのAnimationClipを複数のモデルで使い回せてとても便利 だということがわかりました。
人型から外れたモデルには適用できないため、従来のGenericを選択する必要があります。しかし人型モデルを使用する場合は積極的にHumanoid Avatarを採用した方が良いことが多いです。
もしこれから3Dキャラを使ったゲームを作る場合、 人型ならHumanoid Avatarを選択することをオススメ します。
この記事があなたのゲーム開発の役に立ったら嬉しいです。
ちなみに今回背景として使用したのはJapanese School Gymnasiumです。

Japanese School Gymnasiumは日本の学校の体育館を精密に再現した3Dモデルアセットです。
Unityエディタから懐かしさが漂ってくる味わいのあるアセットです。興味ある方はチェックしてみてください。

筆者のXをフォローしよう
- Humanoid 3D Charactor_P07_ver.3.0_Coco
- KAWAII ANIMATIONS 100
- Anime Girls Pack
- Ultimate Hypercasual Characters (43 BodyTypes)
- POLYGON Fantasy Characters - Low Poly 3D Art by Synty
- Animancer Lite v8
- Japanese School Gymnasium
- Unity6000.0.32f1