エクスポートの方法と設定
に書いたが、用途によって書き出し方はケースバイケースで様々だ。
なお、大規模建築では、Blenderでのデフォルト設定でのエクスポートでは、
Blenderからの3Dモデルインポートの結果と互換性
のような結果となった。
要はいっぺんには書き出しが困難だ。
ここでは、大規模建築などの大きな3Dデータの適したエクスポート方法と、UE連携について書いていく。
まず、
アセットの作成手順
にて、エクスポートの準備をしておく。
FBX
「fbm」フォルダとテクスチャ画像について
画像テクスチャ - プリンシプルBSDF
一番定番であるFBXだが、パスモードを「コピー」にすれば、画像テクスチャは「fbm」フォルダに格納されてエクスポートされる。
ただ、マテリアルノードで
画像テクスチャ - プリンシプルBSDF
間に何か別のノードがあった場合、画像テクスチャが書き出されなくなり、fbmフォルダもできないということだ。
むろん、すべてのマテリアルノードはUEに対応しているわけではないので、複雑なマテリアル構築はUEなどの他ソフトでは再現できない。
そういった場合、UEで確実に再現するならベイクをするしかない。
しかし、UEでも細かい編集をするには、出来ればベイクを避けたい。
よって、Blenderでは最小限の基本的なデザインにしておき、UEに持って行ったときに細かい描写をする手段を取るのがよいのかもしれない。
そもそも他ソフトと連携するなら、それを見据えた構築方法が必要ということを感じた。
画像テクスチャの前のノード
以下参考。| Blender | UEでの対応 | 備考 |
|---|---|---|
| Principled BSDF | Material / Substrate系 | 基本的な材質情報 |
| Image Texture | Texture Sample | 最も確実 |
| UV Map | Texture Coordinate / UV | UV座標として利用 |
| Normal Map | Normal | ノーマルマップとして利用可能 |
| RGB / 色 | Constant / Vector Parameter等 | 単純な色なら可能 |
| Value | Scalar Parameter等 | 単純な数値として扱える場合あり |
| Mapping Texture | Coordinate+変換系 | 自動変換は期待しない方がいい |
| Bump | Normal系 | BlenderのBumpノードそのものが移植されるわけではない |
| Mix系 | Lerp / Multiply等 | FBXでは基本的に自動移植されない |
| ColorRamp | Lerp等 | 自動移植されない |
| Noise Texture | Noise | UE側にもNoiseはあるが、同じノードを移植するわけではない |
| Hue/Saturation | 色調整ノード | 自動移植されない |
よくBlenderの画像テクスチャの前に
「テクスチャ情報 - マッピング - 画像テクスチャ」
のようにして設定する方法があるが、これをしてしまうとインポートした際に適用されないので、テクスチャのサイズが合わなくなる。
画像テクスチャの前には何も繋がず、テクスチャの調整は全て基本はUVの調整でする。
コレクションの分け方とパッチモード
大規模建築などをエクスポートして、UEなどの他ソフトにインポートする際、一気に全体を連携すると重くて固まったり落ちたりする。なので、普段からコレクションに分けておいて、インポート時に切り分けが出来るようにするとよい。
例えば、建物であれば、最上位の階層「House」の下に
- Vertical
- Horizontal
- Gable
- Interior
などに分け、その中で更にコレクション分けする。
これは、後述、のパッチモードの「「シーンコレクション」」に関係してくる。
エクスポートの設定
エクスポートの設定に関しては、以下がおすすめだ。ファイルの設定
- ファイルパスを選択
- ファイル名を変更
パスモード
パスモードは「コピー」にして、テクスチャ画像がある場合はfbmフォルダを作成するようにする。パッチモード
パッチモードは「シーンコレクション」を選択する。コレクション毎にまとめてくれるので、UEにインポートする際に、コレクション毎になるが、重くはなくなる。
「コレクション」との違いは、「コレクション」はその子コレクションは含まないのと、そのコレクション内にコレクションのみしかない場合はそのコレクションは書き出されない。
そのため、一番良いのが、「シーンコレクション」にしておき、インポート時に一番階層が上のコレクション「House」のみインポートすればいいということだ。
そして、上記例の「House」のFBXがインポートできない場合、その下の階層のコレクションのFBXを順に切り分けしていく。
なので、Blenderでのモデリング時のコレクション整理の時点から、最上位の一つ下のコレクションがあまり多くならないようにまとめていくことが重要となる。
オブジェクトタイプ
オブジェクトタイプは、それによって選択する(メッシュのみ)など。トランスフォーム
トランスフォームは、前方をXかYにする。これをしないと回転してしまう。
スムージング
ジオメトリ→スムージングを面に変更。
モディファイアを適用
ジオメトリ→モディファイアを適用は、場合によって。軽量化などでUEで再構築する際はチェック無し、再構築しない場合はチェックを入れるが重くなる。