ヒューマノイドモデル は非常に特殊な構造であり、実際の人間の骨格 (スケルトン) に緩く従う最低 15 個のボーンで編成 されています。それ以外で Unity Animation System を使用するものはすべて 非ヒューマノイド、つまり Generic (ジェネリック) カテゴリになります。要するに、ジェネリックモデルは、やかんからドラゴンまで何にでもなる可能性があるため、非ヒューマノイドのスケルトンのボーンの構造は膨大な範囲に及びます。
この複雑さに対処するための解決策として、ルートノード であるボーンだけが決定されていれば良いという方法です。ジェネリックキャラクター関して、ヒューマノイドキャラクターの重心を近似するために、この方法は最良の方法です。Unity が最も忠実にアニメーションを描画する方法を決定するのに役立ちます。マップするボーンは 1 つだけなので、ジェネリックの設定では Humanoid Avatar ウィンドウ を使用しません。結果として、非ヒューマノイドモデルのファイルをインポートする準備に必要なステップは、ヒューマノイドモデルの場合よりも少なくなります。
Inspector ウインドウの Rig タブ で、Animation Type を Generic (汎用) に設定します。デフォルトでは、Avatar Definition プロパティは Create From This Model に設定され、Root node は None に設定されています。
場合によっては、Avatar Definition を Copy From Other Avatar に変更して、すでに別のモデルファイル用に定義したアバターを使用することができます。例えば、3D モデリングアプリケーションで複数の異なるアニメーションを使用してメッシュ (スキン) を作成する場合、メッシュを 1 つの FBX ファイルにエクスポートし、各アニメーションをそれぞれの FBX ファイルにエクスポートすることができます。これらのファイルを Unity にインポートするときは、インポートする最初のファイル (通常はメッシュ) に 1 つのアバターを作成するだけです。すべてのファイルが同じボーン構造を使用する限り、ファイルの残りの部分 (例えば、すべてのアニメーション) にそのアバターを再使用することができます。
Create From This Model に設定する場合は、Root node プロパティからボーンを選択する必要があります。
Avatar Definition オプションを Copy From Other Avatar に変更する場合は、Source プロパティを設定して、使用したいアバターを指定する必要があります。
また、Skin Weights プロパティを使って、指定した頂点に影響を与えることができるボーンの最大数を変更することもできます。デフォルトでは、このプロパティの影響は 4 つのボーンに制限されていますが、より多く、またはより少なく指定することもできます。
When you click the Apply button, Unity creates a Generic Avatar and adds an Avatar sub-Asset under the Model Asset, which you can find in the Project view.
ノート 汎用アバターはヒューマノイドアバターと同じではありませんが、Project ビューに表示され、ルートノードマッピングを保持します。ただし、Project ビューでアバターのアイコンをクリックして Inspector にプロパティを表示すると、その名前だけが表示され、Configure Avatar ボタンは表示されません。
マスキングは、インポート時かランタイムのいずれかにアニメーションクリップに適用することができます。アニメーションデータを削除して、ビルドから除くことができ、ファイルサイズやメモリ使用量を小さくできるため、インポート時にマスキングすることが好ましいと言えます。アニメーションデータがランタイムにブレンドされるより少なくなるので、より高速な処理ができます。インポート時のマスキングは目的に適さない場合があります。その場合には、アバターマスク アセットを作成してランタイムにマスクを適用し、アニメーターコントローラー の レイヤー設定 でこれを使用します。
空のアバターマスクアセットを作成するには、以下のいずれかを行います。
新しいアセットが Project ビューに表示されます。
Transform 階層 に含む/除外するボーンを選択し、次に、マスクを アニメーションレイヤー に加えるか、または、マスクへの参照を Animation タブ の Mask セクションに加えます。