はじめに
当記事では「Send to Unreal」を用いて FBX ファイルを書き出し、それをUE4へインポートする方法をとっております。
アドオンが出た時点ではBlender側のシーンの単位を 0.01 に変更しなくてはなりませんでしたが、今回 1.0 のまま問題のない書き出しができましたので共有になればと記事を書きました。記事を書いている時点では書いている内容以上のものは把握できておりませんので、間違いなどありましたらご指摘いただけますと幸いです。
コメントや Twitter(@ Foltkaur) であれば反応ができると思います。
環境
| ツール | バージョン |
|:-:|:-:|:-:|
| Unreal Engine | 4.26.0 |
| Blender | 2.83.10 |
| Send to Unreal | 1.6.0 |
ダウンロードやインストール方法などは各自で調べてください。
当環境ではBlenderのUIを日本語に設定して使用しております。
したがって続く説明もその表記に従ったものになります。
設定の共有
設定の開き方
Blender画面左上の
「編集」メニューから歯車マークの「プリファレンス」を開いてアドオンから選択する。または
「Pipeline」メニュー(インストール済みで追加される)から「エクスポート」「Advanced Dialog」を選択する。
設定
今回は FBX ファイルをBlendファイルのある場所に書き出しますのでカレントディレクトリを指定しています。
Blendファイルとして保存されていないとエラーがでるようです。
ここの項目はいじった記憶がないですが確認をお願いします。
目的のためには一番上のチェックが重要だと思います。
上の画像の一番下の「FBX Settings」を開いたものです。
Blenderデフォルトの FBX エクスポートとほぼ同じに見えます。
ここではアーマチュアのプライマリボーン軸とセカンダリボーン軸を変更しています。
書き出しの方法
インストールが完了していると複数のコレクションが追加されていると思います。
名前の通り、それぞれのコレクションに対応するオブジェクトを入れていくことになります。
書き出しそのものはオブジェクトを選択して「Pipeline」メニューから「エクスポート」内の「Send to Unreal」を押すだけで完了します。
確認できた書き出し方法の違い
- 選択されているオブジェクトと同じもののコレクションが書き出しされる(Rigコレクション内のメッシュを選択しているとMeshコレクション内のものが書き出しされる)
- 非表示にしたオブジェクトは書き出しされない
- Meshコレクション内にアーマチュアがあっても書き出しされない(Rigコレクション内にメッシュがあっても書き出しされない)
- Meshコレクションにメッシュ(アーマチュアモディファイアで関連付けされている)Rigコレクションにアーマチュアの状態でメッシュを選択しているとスケルタルメッシュが書き出しされる(Rigコレクション以外にあるとスタティックメッシュになる)
- Rigコレクションのアーマチュアを選択しているとアニメーションが書き出しされる(設定のとおり通常BlenderのNLAやアクションの扱い?)
- Meshコレクション内にメッシュのみとアーマチュアモディファイアのあるメッシュがあっても同時に書き出しされる
UE4 にインポート
書き出しされた FBX ファイルを通常どおりのドラッグ・アンド・ドロップで問題ありません。
参考にさせていただいた資料と各種リンク
UE4とBlenderでランニングコストを抑えるモダンなワークフロー
https://www.slideshare.net/EpicGamesJapan/ue4-festeast2019-blenderworkflow
新しい Blender アドオンをダウンロードしましょう
https://www.unrealengine.com/ja/blog/download-our-new-blender-addons
UE4のためのBlenderアドオン
双方ともに使用させていただいております。ありがとうございます!
X4UE
https://github.com/Indie-us-Games/X4UE
Blender-For-UnrealEngine-Addons
https://github.com/xavier150/Blender-For-UnrealEngine-Addons
おわりに
ふと思い出して使ってみると苦しんでいた問題が解決されていて驚きました。
色々と難しそうなこともできるようなので多くの方の情報が集まることを期待しています。