このページでは、Unity の アニメーションシステム で使用するモデルのインポートについて説明します。アニメーションシステムに使用するモデルの作成については、アニメーション 用モデルの作成 を参照してください。
アニメーションシステムは、2 種類のモデルに対応しています。
すべての種類のモデルに適用される一般的なインポートの説明は、モデルのインポート を参照してください。
Unity が 汎用 モデルをインポートする際には、どのボーンが Root node (ルートノード) であるかを指示しなければなりません。これにより、モデルの重心が効果的に定義されます。
マッピングするボーンは 1 つだけなので、汎用設定では、Humanoid Avatar ウィンドウ を使用しません。その結果、ヒューマノイド以外のモデルのファイルを Unity にインポートする準備は、ヒューマノイドモデルの場合よりも少ないステップで済みます。
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 つのボーンに制限されていますが、より多く、またはより少なく指定することもできます。
Apply ボタンをクリックします。Unity は 汎用アバター を作成し、アバターのサブアセットをモデルアセットに加えます。これは Project ビューに表示されます。
ノート 汎用アバターはヒューマノイドアバターと同じではありませんが、Project ビューに表示され、ルートノードマッピングを保持します。ただし、Project ビューでアバターのアイコンをクリックして Inspector にプロパティを表示すると、その名前だけが表示され、Configure Avatar ボタンは表示されません。
マスキングは、インポート時かランタイムのいずれかにアニメーションクリップに適用することができます。アニメーションデータを削除して、ビルドから除くことができ、ファイルサイズやメモリ使用量を小さくできるため、インポート時にマスキングすることが好ましいと言えます。アニメーションデータがランタイムにブレンドされるより少なくなるので、より高速な処理ができます。インポート時のマスキングは目的に適さない場合があります。その場合には、アバターマスク アセットを作成してランタイムにマスクを適用し、アニメーターコントローラー の レイヤー設定 でこれを使用します。
空のアバターマスクアセットを作成するには、以下のいずれかを行います。
新しいアセットが Project ビューに表示されます。
Transform 階層 に含む/除外するボーンを選択し、次に、マスクを アニメーションレイヤー に加えるか、または、マスクへの参照を Animation タブ の Mask セクションに加えます。