Version: 2021.3
言語: 日本語
Unity にモデルをインポート
ヒューマノイドアニメーションを含むモデルのインポート

モデルのインポート

モデルファイルは、メッシュ、アニメーションのリグとクリップ、マテリアルやテクスチャなど、さまざまなデータを含むことができます。おそらく、ファイルにすべての要素が含まれているわけではありませんが、必要な部分のワークフローに従ってください。

  1. Project ビューでファイルを選択して Import Settings ウィンドウで表示
  2. モデルに特化された、または、一般的なインポーター向けのオプションを設定
  3. リグとアニメーションのインポートのためのオプション設定 (SpeedTree モデルには使用できません)
  4. マテリアルとテクスチャの処理
  5. ファイルを Unity にドラッグ

3D モデリングソフトウェアから ヒューマノイド アニメーションをエクスポートする方法のガイドラインについては、エクスポート用にヒューマノイドモデルを準備する を参照してください。

ノート: Unity のモデルファイルの主要サポートは FBX 形式です。ただし、一般的な 3D モデリングソフトウェアの 3D ファイルを、それぞれのネイティブの形式 (例えば、.max、.blend、.mb、.ma) で保存することができます。Unity はこれらのファイルタイプを Assets フォルダーで見つけると、3D モデリングソフトウェアの FBX エクスポートプラグインを呼び出し、ファイルをインポートします。3D モデリングソフトは、Unity と同じコンピュータにインストールされている必要があります。そのため、ほとんどの場合、アプリケーションから直接 FBX として Assets フォルダーにエクスポートするのが最良の実践方法です。

Import Settings ウィンドウへのアクセス

Model ファイルからどのような種類のデータを抽出するかにかかわらず、常に同じ方法です。

  1. Project ウィンドウと Inspector を開いて、両方を一度に見えるようにします。

  2. インポートする Model ファイルを Project ウィンドウの Asset フォルダーから選択します。

    InspectorImport Settings ウィンドウが開き、デフォルトで Model タブ が表示されます。

モデルに特化された、または、一般的なインポーター向けのオプションを設定

SpeedTree モデルと他のモデルで使用できるオプションはまったく異なります。例えば、SpeedTree の Model タブ では、主に LOD レベル間の遷移を設定するためのオプションを提供しています。

キャラクターとアニメーション化したモデルでは、Model タブ により多様なオプションがあり、以下のことが可能です。

  • Scale FactorConvert Units プロパティを使用し、Unity がユニットを解釈する方法を調整します。例えば、3ds Max の 1 ユニットは 10 センチメートルを表し、Unity の 1ユニットは 1 メートルを表します。
  • Mesh CompressionRead/Write EnabledOptimize MeshKeep QuadsIndex FormatWeld Vertices プロパティを使用して、リソースの負担を減らしメモリを節約します。
  • モデルファイルが Maya や 3ds Max、または、変形したターゲットアニメーションをサポートする他の 3D モデリングアプリケーションから作られた場合は、Import BlendShapes を有効にします。
  • 環境ジオメトリには Generate Colliders を有効にします。
  • 特定の FBX 設定 (Import VisibilityImport CamerasImport Lights など) を有効にできます。
  • アニメーションのみを含むモデルファイルの場合は、Preserve Hierarchy を有効にして、スケルトンの階層の不一致を防ぎます。
  • Lightmap を使用する場合は、Swap UVsGenerate Lightmap UVs を設定します。
  • NormalsNormals ModeTangentsSmoothing Angle を使用して、モデルの法線と接線を Unity がどのように処理するかを制御することができます。

リグとアニメーションのインポートのためのオプション設定

ファイルにアニメーションデータが含まれている場合は、Rig タブを使用したリグの設定のガイドラインに従い、次に、Animation タブ を使用してアニメーションクリップを抽出または定義します。ヒューマノイドとジェネリック (非ヒューマノイド) のアニメーションタイプでは、ワークフローは異なります。なぜなら、Unity はヒューマノイドのボーン構造をはっきり特定する必要があるからです。しかし、ジェネリックタイプでは、どのボーンがルートノードであるかを知る必要があるだけです。

ノート: SpeedTree モデルには RigAnimation のタブは両方ともありません。

マテリアルとテクスチャの処理

ファイルにマテリアルやテクスチャが含まれている場合は、その処理の方法を決めることができます。

  1. Import Settings ウィンドウで Materials タブ をクリックします。
  2. Material Creation Mode ドロップダウンメニューで、FBX ファイルからマテリアルをインポートする方法を選択します。None を選択しない限り、Materials タブにいくつかのオプションが表示されます。その中には、Location オプションがあり、その値によって他のオプションの内容が決まります。
  3. インポートしたアセット内にマテリアルを維持 するには、Use Embedded Materials を選択します。
  4. オプションの設定を終了したら、Import Settings ウィンドウの下部にある Apply ボタンをクリックして保存します。または、Revert ボタンをクリックするとキャンセルできます。

テクスチャを探す

Unity は特定の検索プランに従って、テクスチャをインポート時に自動的に検索します。まず、インポーターはそのメッシュと同じフォルダー内か、親フォルダー内で Textures という名のサブフォルダーを探します。これが失敗すると、Unity はプロジェクト内のすべてのテクスチャを徹底的に検索します。わずかに時間がかかりますが、徹底的な検索の主な欠点は、プロジェクト内に同じ名前のテクスチャが 2 つ以上あるということです。この場合、Unity が正しいものを見つけられる保証はありません。

アセットと同じ階層、あるいは親の階層にある Textures フォルダーにテクスチャを格納します
アセットと同じ階層、あるいは親の階層にある Textures フォルダーにテクスチャを格納します

(A) テクスチャを見つける可能性のある場所

(B) インポートされたメッシュ

法線マップ

多角形モデルから生成した法線マップを適用したキャラクターの場合、Smoothing Angle を 180 度に設定したゲーム品質のバージョンをインポートする必要があります。これは、接線が分割される事によって、継ぎ目のライトが不自然になることを防ぎます。これらの設定でもまだ継ぎ目が残っている場合は、Tangents ドロップダウンから Calculate Legacy With Split Tangents を選択します。グレースケール画像を法線マップに変換する場合は、この問題を心配する必要はありません。

ファイルを Unity にドラッグ

最後に、ファイルをシーンにインポートします。

  • メッシュが含まれている場合は、ファイルを Scene ビューにドラッグして ゲームオブジェクトプレハブ としてインスタンス化します。
  • アニメーションクリップが含まれている場合は、ファイルを Animator ウィンドウ にドラッグして ステートマシンAnimation トラック にドラッグします。 アニメーションをシーンビューのインスタンス化されたプレハブに直接ドラッグすることもできます。このようにすると、自動的にアニメーションコントローラーが作成され、アニメーションがモデルに接続されます。
Unity にモデルをインポート
ヒューマノイドアニメーションを含むモデルのインポート