教育事業部の事業内容 演劇、音楽のタレント並びに作詞家、作曲家、編曲家等アーティストの育成及びマネージメント、コンピュータ教室の経営等を行っています。
ゲームエンジン Unity オンラインマニュアル
教育事業 パルテア

〜Unity Graphics Model 非ヒューマノイド(汎用)アニメーションを備えたモデルのインポート〜 #ゲームプログラミング #ゲーム制作 #unity3d

このページには、Unity のアニメーション システムで使用するモデルをインポートするためのガイダンスが含まれています。アニメーション システムで使用するモデルの作成については、「アニメーション用モデルの作成」を参照してください。

アニメーション システムは、2 種類のモデルで動作します。

ヒューマノイド モデルは、実際の人間の骨格に大まかに準拠するように編成された、少なくとも 15 個の骨を含む特定の構造です。この種類のモデルのインポートについては、「ヒューマノイド アニメーションを含むモデルのインポート」を参照してください。

汎用モデルは、それ以外のすべてです。これは、やかんからドラゴンまで、あらゆるものになる可能性があります。このページには、この種類のモデルのインポートに関するガイダンスが含まれています。

すべての種類のモデルに適用できる一般的なインポート ガイダンスについては、「モデルのインポート」を参照してください。

概要

Unity が汎用モデルをインポートする場合、どのボーンがルート ノードであるかを Unity に伝える必要があります。これにより、モデルの質量の中心が効果的に定義されます。質量の中心は、物理計算の目的で、リジッドボディ内のすべての質量の平均位置を表します。デフォルトでは、リジッドボディに属するすべてのコライダーから計算されますが、スクリプトを使用して変更できます。詳細については、用語集を参照してください。

マッピングするボーンは 1 つだけなので、汎用セットアップではヒューマノイド アバター ウィンドウを使用しません。その結果、ヒューマノイド以外のモデル ファイルを Unity にインポートする準備に必要な手順は、ヒューマノイド モデルの場合よりも少なくなります。

リグを汎用としてセットアップします。

アバター マスクを定義することで、特定のボーンにインポートされるアニメーションをオプションで制限できます。
[アニメーション] タブで、[アニメーションのインポート] オプションを有効にし、その他のアセット固有のプロパティを設定します。
ファイルが複数のアニメーションまたはアクションで構成されている場合は、特定のフレーム範囲をアニメーション クリップとして定義できます。
ファイルで定義されているアニメーション クリップごとに、次の操作を実行できます。
ポーズとルート変換を設定する
ループを最適化する
他のアイテムのタイミングをアニメーション化するためにクリップにカーブを追加する
アニメーションに合わせて特定のアクションをトリガーするためにクリップにイベントを追加する
ランタイム アバター マスクを使用するのと同様に、インポート時に適用されるアニメーションの一部を破棄する
アクションを駆動する別のルート モーション ノードを選択する
クリップのインポートに関する Unity からのメッセージを読む
アニメーション クリップのプレビューを見る
変更を保存するには、[インポート設定] ウィンドウの下部にある [適用] ボタンをクリックするか、[元に戻す] をクリックして変更を破棄します。

リグの設定

[インスペクター] ウィンドウの [リグ] タブで、アバター (アニメーション) タイプを [汎用] に設定します。デフォルトでは、[アバター定義] プロパティは [このモデルから作成] に設定され、[ルート ノード] オプションは [なし] に設定されています。

場合によっては、[アバター定義] オプションを [他のアバターからコピー] に変更して、別のモデル ファイルで既に定義したアバターを使用することができます。たとえば、3D モデリング アプリケーションで複数の異なるアニメーションを持つメッシュ (スキン) を作成する場合、メッシュを 1 つの FBX ファイルにエクスポートし、各アニメーションを独自の FBX ファイルにエクスポートできます。これらのファイルを Unity にインポートするときには、インポートする最初のファイル (通常はメッシュ) に対して 1 つのアバターを作成するだけで済みます。すべてのファイルが同じボーン構造を使用している限り、そのアバターを残りのファイル (たとえば、すべてのアニメーション) に再利用できます。

汎用リグ

[このモデルから作成] オプションをそのままにしておくと、ルート ノード プロパティからボーンを選択する必要があります。

[アバター定義] オプションを [他のアバターからコピー] に変更する場合は、[ソース] プロパティを設定して、使用するアバターを指定する必要があります。

[スキン ウェイト] プロパティを使用して、特定の頂点に影響を与えることができるボーンの最大数を変更することもできます。デフォルトでは、このプロパティは 4 つのボーンに影響を制限しますが、それより多くまたは少なく指定できます。

[適用] ボタンをクリックすると、Unity は汎用アバターを作成し、モデル アセットの下にアバター サブアセットを追加します。これは、プロジェクト ビューで見つけることができます。

アバターは、インポートされたモデルのサブアセットとして表示されます

注: 汎用アバターはヒューマノイド アバターと同じものではありませんが、プロジェクト ビューに表示され、ルート ノード マッピングを保持します。ただし、プロジェクト ビューでアバター アイコンをクリックしてインスペクターにプロパティを表示すると、名前のみが表示され、[アバターを構成] ボタンは表示されません。

アバター マスクの作成

アニメーション クリップにマスクを適用するのは、インポート時または実行時です。インポート時のマスクは、破棄されたアニメーション データをビルドから省略できるため、ファイル サイズが小さくなり、メモリ使用量が少なくなるため、望ましい方法です。また、実行時にブレンドするアニメーション データが少なくなるため、処理が高速化されます。場合によっては、インポート マスクが目的に適さないことがあります。その場合は、アバター マスク アセットを作成し、それを Animator Controller のレイヤー設定で使用することで、実行時にマスクを適用できます。

空のアバター マスク アセットを作成するには、次のいずれかを実行します。

[アセット] メニューから [作成] / [アバター マスク] を選択します。

[プロジェクト] ビューで、マスクを定義するモデル オブジェクトをクリックし、右クリックして [作成] / [アバター マスク] を選択します。

新しいアセットがプロジェクト ビューに表示されます。

アバター マスク ウィンドウ

トランスフォーム階層に含めるまたは除外するボーンを選択し、マスクをアニメーション レイヤーに追加するか、アニメーション タブのマスク セクションで参照を追加できるようになりました。

    unity

  • 日時:// ~ //
  • 名称:
  • 場所:
  • 料金:¥0 (消費税込)