🐡

BlenderからUE5へfbxインポートする時のメモ

2024/02/01に公開

blenderで好き勝手に作った3DモデルをUEで使えるようにローポリ・ベイク、fbxインポートした時の忘備録です。リグやアニメーションのついたキャラモデルではなくスタティックなモデルに関しての話になります。
試行錯誤の記録、また間違っている・もっと効率の良いやり方もあると思います。
その場合はコメント等でご指摘くださると幸いです

環境
Unreal Engine 5.3
Blender 2.9

過去にblenderで作ったポンデリングをゲーム用にしたい。

準備したのはポンデリング。何も考えずに作ったので頂点がめちゃくちゃ多いです
とりあえず外部ソフトでローポリ化したみようということに

https://github.com/wjakob/instant-meshes

適切なポリゴンの数がわからなくてポリポリしています。とりあえずまたblenderに戻してマテリアル設定をします

TexToolsでベイク

blenderの便利アドオン。ベイクって何?ぐらいの理解度でしたが元のハイポリとローポリを両方ともUV展開し、画像テクスチャを用意することでなんとか成功しました。

fbx形式でエクスポート

オプションで選択したもののみチェックしてfbxエクスポート。ごちゃごちゃ警告が出たけど処理の仕方は後で処理。とりあえずゲーム空間に出すことができました。

うーん、ちょっとローポリすぎるしなめらかじゃない。
リトポロジーはまだやった事がないけど外部ソフトじゃなくてblender内部で頂点削減した方がいい気がする。

改めてポンデショコラをfbxにする(複数マテリアルからなるモデル)

blenderも大概初心者なので、ポンデリングは単体モデル・同一マテリアルなので比較的楽だったけど、ポンデショコラのような「本体+チョコがけ(マテリアル別)」の書き出し方がずっと謎でした。この状態のまま「統合」するとアプリが落ちるし。

以下、正しいかわかりませんがやってみた方法です。
・モディファイアは全部適用する
・ポンデ本体とチョコが別々のオブジェクトのままUV展開する(ハイポリ版で)
・ベースカラーのみなのでベイクした画像テクスチャに差し替え

こんな感じで差し替え。ノーマルマップは今回設定してないけど、粗さやスペキュラなんかの数値設定はそのままプリンシブルBSDFが反映されるみたい?

ベースもチョコもUV展開・画像テクスチャした状態だと問題なく「統合」できて、一つのメッシュとして描き出せます。
ちなみに二つ選択して書き出そうとしても位置関係は全く考慮されず別々のメッシュとして扱われるので注意してください

一旦エクスポートしてみます。

統合すると新しいマテリアルができて問題なくfbxインポートできるのですが日本語名がついてても警告なしでインポートされるので半角英数にするのは忘れずに。

UEに問題なくインポートされたけど、日本語があるとpakできないって情報があるので気をつけましょう
元々ビルドに失敗してるので確かめるのが億劫なんですけどビルド(pak)できないならその時点で外して欲しいものです…blenderも英語でやった方がいいのかなあ

一見、綺麗にできてるようです。ローポリ化をやってみます。

モディファイアのデシメートでローポリ化

特にキャラや人物の顔ではないので難しいリトポロジーは使わず
デシメートでやってみることにします。

だいぶ削減できました。それっぽく見えるのはこれが限度かな〜とも。

早速UEに入れてみたら、あれ、ポンデ部分が裏返ってない?

blenderで確認するとやはり裏返ってたのでポンデ部分のみ反転させます

これで良し!改めてエクスポート・インポートしました

めでたしめでたし。この要領でblenderの自作モデルをどんどん入れられますね!

エクスポート・インポート時に困ったことと対策まとめ

スムージング情報がないと言われる(モデル自体は使える)


このエラーをなくすには、fbxエクスポート時に
ジオメトリ>スムージング>法線のみ
から
ジオメトリ>スムージング>面
に変更するといいという情報を得ました。辺でもいいらしい?


とにかくこれでエラーが出なくなります

不要なスケルトンが入ってる

アニメの情報をベイクのチェックを外す。

アニメ情報がないなら外しておく。

モデルやマテリアルに日本語使わない

エラーが出ない時もありますがビルド等で後々大変になりそうなので全て半角英数を心がけましょう!

取り込んじゃったけど害はないのだろうか…後で消そう

まとめ

UEで使いたいblenderモデルを選択したら

  • とりあえず全部モディファイア適用
  • UV展開してベイク、画像テクスチャに差し替え
  • 必要があれば統合、リトポやデシメートでローポリ化
  • fbxエクスポート時にスムージング>面に変更
  • アニメーションはベイクしない
  • モデルやマテリアルに日本語使わない

で大体fbxエクスポート・インポートできると思います。リトポロジーやリグ、アニメーションはまたの機会に。

Discussion