Version: 2018.3
他のアプリケーションからインポートするときの制限
ヒューマノイドアセットの準備

他のアプリケーションからのエクスポート

ノート ここでは、FBX 変換を使用する独自のファイル形式の制限について説明します。ただし、FBX を媒体として使用しない SketchUpSpeedTree の 2 つのファイル形式があります。これらのファイル形式の制限に関する詳細は、SketchUp の設定SpeedTree を参照してください。

Unity は多くの 3D モデリングアプリケーションからエクスポートする FBX ファイルをサポートしています。最良の結果を得るために、以下のガイドラインを参照してください。

  1. 3D モデリングアプリケーション内でエクスポートしたいものを 選択 します。
  2. 3D モデリングアプリケーションの中に加える必要があるものを 準備 します。
  3. エクスポートする前に FBX 設定 を確認します。
  4. FBX ファイルを 検証してインポート します。

3D モデリングアプリケーションからのエクスポートに関するこの生成ガイドラインに加えて、以下の 3D モデリングアプリケーションには、より詳しい情報があります。

エクスポートするものを選択

エクスポートしたいものを検討します。シーンオブジェクトの中には必須のものもあれば、不要なものもあります。 アプリケーションからは 選択したオブジェクトシーン全体 をエクスポートすることも可能です。 必要不可欠なオブジェクトのみにすることで、Unity のデータを最適化できます。

シーン内の特定のオブジェクトのみをエクスポートする場合、以下を行えます。

  • アプリケーションがサポートしている場合は、選択したオブジェクト のみをエクスポートします。
  • 不要なデータをシーンから削除し、シーン全体 をエクスポートします。
  • プリセットまたはカスタムのシーンエクスポーターを作成して、選択したもののエクスポート処理を自動化または簡素化します。

加える必要があるもの準備

以下の点を考慮して、アセットのエクスポートを準備します。

オブジェクト 準備
メッシュ すべての NURBS、NURMS、スプライン、パッチ、サブディビジョンサーフェスはすべてポリゴンに変換する必要があります (三角形分割または四角形分割)
アニメーション 正しいリグを選択します。フレームレートの確認、アニメーションの長さの確認をします。
ブレンドシェイプ または モーフィング ブレンドシェイプやモーフィングのターゲットが指定されていることを確認してください。エクスポートメッシュを適切に設定します。
デフォーマーのベイク FBX にエクスポートする前に、デフォーマーをモデルにベイクすることを確認してください。例えば、複雑なリグを Maya からエクスポートする場合、モデルを FBX にエクスポートする前に スキンウェイトにデフォーメーションしたものをベイク することができます。
テクスチャ テクスチャが Unity プロジェクトのものか、Unity プロジェクトの textures フォルダーにコピーされているもののいずれかであることを確認してください。

注意 FBX ファイルに Embed Media (メディアを埋め込む) オプションを使用してテクスチャを埋め込むことは推奨しません。テクスチャを使用する前に抽出する必要があります。そのため、テクスチャを埋め込むだけでプロジェクトが不必要に膨張し、インポート処理が遅くなります。
スムージング スムージンググループを確認し、メッシュ設定を滑らかにします。

重要 ブレンドシェイプの法線をインポートするには、FBX ファイルのグループをスムージングする必要があります。

FBX エクスポートオプションの設定

FBX エクスポート設定を確認します。

  • 3D モデリングアプリケーションのエクスポートダイアログで各設定を確認して、Unity で FBX のインポート設定をどのように合わせるかを確認します。
  • 必要に応じてアニメーション、デフォーメーション、スキン、モーフをエクスポートするかどうかを選択します。
  • ノード、マーカー、また、それらの変形したものが Unity にエクスポート可能です。
  • Unity にインポートしたいカメラ、ライト、可視性設定を選択します。
  • 可能な場合は FBX の最新バージョン を使用してください。Autodesk は定期的に FBX インストーラーを更新します。
  • Unity にファイルをインポートするときに、3D モデリングアプリケーションからエクスポートしたときと同じ FBX バージョンを使用することを確認してください。異なるバージョンのソフトウェアを使用すると、予期しない結果が発生することがあります。

検証と Unity へのインポート

FBX ファイルを Unity にインポートする前に以下を行います。

  1. エクスポートしたファイルのサイズを確認します。ファイルサイズのサニティチェックを行います (例えば >10kb か)。

  2. FBX ファイルを新しいシーンに再インポートし、生成した 3D モデリングソフトウェアに戻します。結果が期待どおりであることを確認します。

ファイルを Unity にインポートするには、インポート の手順に従います。ここでは、3D モデリングソフトウェアでエクスポートオプションを設定する方法に注意してください。

スケール係数

Unity の物理システムとライティングシステムは、インポートファイルにおいてゲーム世界の 1 メートルが 1 ユニットであると仮定します。

異なる 3D パッケージのデフォルトは以下の通りです。

  • .fbx, .max, .jas, .c4d = 0.01
  • .mb, .ma, .lxo, .dxf, .blend, .dae = 1
  • .3ds = 0.1

異なるスケール係数を持つ 3D モデリングアプリケーションから Unity にモデルファイルをインポートする場合、Convert Units オプションを有効 にすると、ファイルのユニットを Unity のスケールを使用するよう変換できます。

特定の 3D モデリングアプリケーションのエクスポート設定

Autodesk® Maya®

FBX エクスポートオプション を使用して、FBX ファイルにエクスポートするものを選択できます。

ブレンドシェイプのエクスポート (モーフィング)

Maya からブレンドシェイプ (モーフィング) をエクスポートする場合は、以下のガイドラインに従ってください。

  • ターゲットを含むエクスポートメッシュにブレンドシェイプを順番に適用します。 
  • Maya のアニメーションキーフレームが必要な場合は、ブレンドシェイプノードでキーフレームをアニメーションにすることができます。
  • メッシュをエクスポートする前に、Maya で Animation (アニメーション) > Deformed Models (デフォーマの作成) > Blend Shapes (ブレンドシェイプ) の順に移動し、FBX Export (FBX 書き出し) オプションを選択します。
  • スキンの変形もエクスポートする場合は、メッシュをエクスポートする前に、Maya で Animation > Deformed Models > Skins の順に移動し、FBX Export オプションを選択します。

ファイルを Unity にインポートする場合は、Project ウィンドウを選択し モデルインポーターの Animations タブBake Animations を有効にします。

複雑なデフォーメーションのエクスポート

非常に複雑なキャラクターリグを Maya で作成できます。パフォーマンス上の理由から、Unity は頂点ごとに 4 つのインフルエンスを持つリニアブレンドスキニングのみをサポートします。キャラクターが 4 つ以上のインフルエンスを使用する場合、Unity にモデルをインポートすると、アニメーションが不安定になったり歪んで表示されることがあります。また、クラスター以外のデフォーメーションを使用すると、アニメーションが完全に欠ける場合があります。

この問題を解決するには、Bake Deformer (ベイクデフォーマ) ツール (Maya のトップメニューから Skin (スキン) > Bake Deformers to Skin Weights (デフォメーションをスキン ウェイトにベイク処理) を使用して、モデルを Maya からエクスポートする前にデフォーメーションジョイントをベイクします。

詳細は、Autodesk ドキュメントの キャラクタにデフォーマをベイク処理する を参照してください。

Cinema 4D

IK を使用したアニメーション化されたキャラクター

IK を使って Cinema 4D のキャラクターをアニメーション化する場合は、エクスポートする前に Cinema 4D の Plugins > Mocca > Cappucino メニュー を使って IK をベイクする必要があります。 Unity にインポートする前に IK をベイクしないと、アニメーション化されたロケーターだけが取得され、アニメーション化されたボーンは取得されません。

インポートの最速化

エクスポートする前に Cinema 4D の Embed Textures 設定をオフにして、Unity へのファイルインポートを高速化できます。詳しくは、Cinema 4D ドキュメント を参照してください。

Autodesk® 3ds Max®

FBX 書き出しオプション を使用して、FBXファイルでエクスポートするものを選択することができます。

3ds Max からエクスポートする場合は、以下の点に注意する必要があります。

クアッドのエクスポート

3ds Max の編集可能なメッシュは常に三角形をエクスポートします。編集可能ポリゴンはインポート時にクアッドと N 角形を保持します。Unity にクアッドをインポートしたい場合は、3ds Max の編集可能ポリゴンを使う必要があります。

ボーンベースのアニメーション

3ds Maxでボーンベースのアニメーションをエクスポートする場合は、以下のガイドラインに従ってください。

  • ボーン構造とアニメーション (FK か IK を使用) を設定した後に、すべてのボーンや IK ソルバーを選択します。
  • Motion (モーション) > Motion Paths (モーションパス) > Collapse (集約) の順に選択します。Unity はキーフィルターを作成するので、エクスポートするキーの量は関係ありません。
  • FBX 書き出しウィンドウの OK ボタンをクリックします。
  • FBX ファイルを Assets フォルダーにコピーします。
  • Unity を開き、ルートボーンのマテリアルにテクスチャを再割り当てします。

メッシュとアニメーションを持つボーンの階層を 3ds Max から Unity へエクスポートする場合、エクスポートされたゲームオブジェクトの階層は 3ds Max のスケマティクビューで表示される階層に対応しています。ただし、Unity はゲームオブジェクトを新しいルートとして使用し、アニメーションを含み、ルートボーンにメッシュとマテリアルの情報を与えます。

アニメーションとメッシュ情報を同じ Unity のゲームオブジェクトに保持したい場合は、エクスポートする前に 3ds Max のボーン階層のボーンに対してメッシュノードを親に設定します。

モーフィングターゲット (ブレンドシェイプ)

3ds Max のモーフターゲットをエクスポートしたい場合は、以下のガイドラインに従ってください。

  • チャネルリストで適切なモーフターゲットを設定して、書き出しメッシュにモーフモディファイヤを適用します。
  • 3ds Max のアニメーションキーフレームが必要な場合は、メッシュ/モディファイヤでキーフレームをアニメーション化できます。
  • メッシュをエクスポートする前に、3ds Max の Animation (アニメーション) > Deformed Models (デフォーマの作成) > Blend Shapes (ブレンドシェイプ) の順に移動し、FBX 書き出しオプションを設定します。
  • スキンの変形もエクスポートしたい場合は、Animation > Deformed Models > Skins FBX Exportオプションを3ds Maxで実行してからメッシュをエクスポートします。

ライトマッピングの UV 設定

Unity にはビルトインの ライトマッパー がありますが、3ds Max のテクスチャベイク機能 (レンダリングメニューの テクスチャレンダリング) と 自動アンラッピング機能を使用して、ライトマップを作成することもできます。

通常、1 つの UV セットはメインテクスチャおよび/または法線マップに使用され、別の UV 設定はライトマップテクスチャに使用されます。両方の UV 設定を適切に処理するには、マテリアルを 3ds Max で標準に設定し、拡散反射光 (メインテクスチャの場合) と自己照明 (ライトマップの場合) の両方のマップスロットを設定します。

3ds Max のライトマップ用のマテリアルの設定。自己照明 (Self-illumination) マップを使用
3ds Max のライトマップ用のマテリアルの設定。自己照明 (Self-illumination) マップを使用

注意 オブジェクトが Shell タイプのマテリアルを使用する場合、Autodesk の FBX エクスポーターは UV を正しくエクスポートしません

また、以下のように、Multi/Sub Object マテリアルタイプを使用し、メインテクスチャとライトマップを拡散マップスロットで使用して、2 つのサブマテリアルを設定することができます。ただし、モデルの面が異なるサブマテリアル ID を使用する場合は、複数のマテリアルがインポートされるため、パフォーマンスにとって最適ではありません。

3ds Max での Lightmapping に設定された別のマテリアル設定。Multi/Sub オブジェクトマテリアルを使用
3ds Max での Lightmapping に設定された別のマテリアル設定。Multi/Sub オブジェクトマテリアルを使用

LightWave

LightWave Layout の File ツールバーから Save > Export > Export FBX の順に選択し、FBX エクスポート設定にアクセスします。

LightWave Layout の FBX Export オプションへのアクセス
LightWave Layout の FBX Export オプションへのアクセス

Export FBX ウィンドウが表示されます。

LightWave FBX Export 設定
LightWave FBX Export 設定
プロパティー 機能
FBX Filename FBX ファイルの名前と場所を設定します。Unity Assets フォルダー下の場所を使用します。
Anim Layer 使用するアニメーションレイヤーの名前
Type Binary を使用すると、テキスト編集可能な FBX ファイルのファイルサイズや ASCII を減らすことができます。
FBX Version リストから最新の FBX バージョンを選択します。Unity で使用しているバージョンと一致することを確認してください。
Export
Models シーン内のすべてのモデルをエクスポートします。
Morphs (Blend Shapes) シーン内のすべてのブレンドシェイプをエクスポートします。
Mesh Type
Cage (Subdivision Off) Subdivision が適用されていないオブジェクトをエクスポートします。
Subdivision メッシュをエクスポートするときに細分化します。
Re-parent bone hierarchy ボーン階層の新しい親として機能するための null を作成します。

メッシュが親で、レイアウトにボーン階層を持つリグをエクスポートすると、デフォームされたメッシュの実際の動きは、そうあるべき動きの 2 倍になります。この新しい親を有効にすると、メッシュは所定の位置に保たれます。
Materials LightWave の標準のサーフェスチャンネルと画像マップを変換します。これにはプロシージャルテクスチャとノードは含まれません。
Embedded Textures 埋め込まれたテクスチャを別の画像ディレクトリではなく FBX ファイルに直接含まれる画像マップとして保存します。これにより、はるかに大きい、自立した FBX ファイルが作成されます。
Smoothing Groups LightWave の法線をスムージンググループに変換します。
Collapse Materials 同じマテリアル名のサーフェスを折りたたみ、マテリアルを別々にエクスポートします。ただし、両方のマテリアル名とすべてのサーフェスパラメーターが一致する場合、2 つのマテリアルは設定にかかわらず常にマージされます。
Merge UVs 複数の UV マップを、オブジェクトごとに 1 つのマップに折りたたみます。
Unity 3D Mode LightWave、FBX、Unity 間の座標系間の変換によって発生する回転誤差を修正します。

LightWave と Unity はどちらも 左手 座標系を使用しますが、FBX は 右手 です。LightWave が FBX にエクスポートすると、Z 軸に沿った右手座標系に変換されます。Unity が FBX ファイルをインポートすると、X 軸に沿って左手座標系に戻ります。その結果、シーンが 180 度回転して見えます。この設定を使用すると、Unity に移動し Z 軸を見ると、インポートされた FBX は LightWave 内で表示されているのとまったく同じように見えます。
Cameras シーン内のすべてのカメラをエクスポートします。
Lights シーンのすべてのライトをエクスポートします。
Animations 簡単なアニメーションをベイクせずに、動き、回転、スケールに基づいてエクスポートします。IK やダイナミックスを使用したキャラクターアニメーションやその他のアニメーションは、まだ Bake Motion Envelopes を使用してベイクする必要があります。
Bake Motion Envelopes キャプチャしたくない設定フレームがある場合に、ベイクの任意の開始点と終了点を設定します。Animations にチェックが入っている場合にのみ使用可能です。
Start Frame and End Frame このタイムフレーム内にのみデータをエクスポートします。
Scale Scene シーンのスケールを Unity のファイルスケール の値と一致するように設定します。

他のアプリケーションからインポートするときの制限
ヒューマノイドアセットの準備