読者です 読者をやめる 読者になる 読者になる

妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

BlenderからUE4にデータを持っていく実験

Blender DazStudio アセット

「ようやく本題に入るというか、DazStudioからBlenderにもってきたデータを、今度はBlenderからUE4にもっていくんだけど、これもやっぱり難しい」

妹「それは色んな人がやってるということだから、資料もいっぱいあるのでは?」

「難しかったという資料がたくさんある」

妹「……」

BlenderもUE4もバージョンごとに変わってるけど、特にFBX関連はよく変わる。そしれ何かが修正されると別のとこがおかしくなったりする」

妹「そのFBXとかいうのが呪われてるんでは?」

「そういう説もある。Blenderの開発チームの中でもFBX対応の作業はもう辞めたいって話が出てるぐらい。もっと安定した保存方式が出てるんだから、そっちに対応していくようにしたいって」

妹「それがいいのでは……」

「でもBlenderでそうやって新方式のデータを作ったところで、UE4がそれに対応してなかったら結局FBX使うわけで、Unityにしろ何にしろ同じことになってしまうから。先の話はともかく、今の時点ではFBXを使うしか方法がないので、どういう風にFBXを作って渡すかという話になる。それでいったんBlenderに読み込んだJosie7のデータを、UE4で読み込めるようなFBXしたいわけだけど、」


Blender2.76b と UnrealEngine4.10.2 の組み合わせでテスト

Blender で UE4 用 3D モデルを作って Import するまでに守るべきことまとめ | rarilog

DazStudioから普通にExportして、Bos FBX Importerで読み込むと最初から100倍サイズの状態になる。

今回はImportの時もExportの時も特にオプションは設定せずデフォルトのままで試したけど、向きなどは問題なかった。まだアニメーションを入れてないせいかもしれない。

①標準エクスポータ(FBX6.1 ASCII)の場合

f:id:una_unagi:20160215212801j:plain
そのままだとマテリアルがズレて、腕がまつ毛になったり、太ももが黒の中になったりする
FBX Reviewで確認してもこうなので、Blenderで出力した時点でズレてる

しかし目の表面の、透明になるべき部分をばっさり削除した後だと、上記の問題が発生しない

②標準エクスポータ(FBX7.4 バイナリ)の場合

サイズが100倍のままですごくデカくなる。
ボーン設定もおかしい様子。

③Bos FBX Exporter

表示そのものは正常。
マテリアルの名前が空になっているので、一度マテリアル全部に名前を付け直さないと保存出来ない。
それとボーンの一部にエラーメッセージが出る
f:id:una_unagi:20160215214605p:plain


「ということで、このバージョンだと標準のエクスポータで、FBX6.1 ASCIIでやるのが良さそう。ただマテリアルの出力にバグがあるっぽい。Josie7の場合マテリアルが17あって、そのうちの16個にテクスチャがあって、1
個だけテクスチャがないマテリアルがある。それが目の一番外側にある部分。これを削除すると正常になる」

Before
f:id:una_unagi:20160215223713j:plain


「元のままの状態だと、テクスチャ設定があべこべになる。FBX Reviewというソフトでも確認しているから、UE4ではなくBlenderのバグ。腕がまつ毛になって、足が口の中になって、その他諸々おかしなことになる」

妹「気持ち悪っ」

After
f:id:una_unagi:20160215223723j:plain

「なんでこんな風になっちゃうのか……テクスチャとマテリアルの数が揃ってないとおかしくなるのかも。どうしてもマテリアルがおかしくなる時は、Bos FBX Exporterを使った方がいいかも。ともあれ何とかUE4で表示することは出来た。ただ今回肝心なアニメーションに関しては一切やってないし、服や髪型も必要だから、調査を続けないといけないんだけど」

妹「妹にはさっぱりわかってないから、兄はちゃんとわかるようにしといて」