おっさんモデルをUnreal Engine 4に持って行く!

2019年3月3日

前回までの作業で、Sculptrisでおっさんモデルを作成し、Blenderで微調整とアニメーション作成を行ってきました。

今回はおっさんモデルをゲーム開発総合環境の一つであるUnreal Engine 4へ持って行きたいと思います!

これにより、Sculptris→Blender→UE4という一つの連携が完成します!

※追記 2018/05/14 今回の記事の内容でインポートした所、アニメーションがおかしくなりました。修正版の記事はこちらになります。

スポンサーリンク

何故、Unreal Engine 4なのか!

ここ最近で最もメジャーなゲーム開発環境といえば、UnityUnreal Engine 4ではないでしょうか。

昔はC++やらC#やらでコードをゴリゴリ書くのが常識で、立方体一つ動かすにもソース書き換えてコンパイルしないと確認もできませんでしたが、今ではエディタ上でマウスで動かせるんですもんね、とんでもない時代だ!

UnityもUnreal Engine 4もどっちも超高機能でしかも無料、ちょっと前までUnreal Engine 4は有料でしたが・・・・。

で、何故Unityで無くUnreal Engine 4を選んだかというと、やはりブループリントの存在でしょう!

ブループリントは凄い、おっさんが量産する分かりにくいコード(最悪自分すら理解できなくなる)を、今風でスタイリッシュなカッチョイイ見た目にしてくれる!

勿論他にも物凄い魅力がたっぷり詰まっていますが、ブループリントによるコーディングはUnreal Engine 4の大きな特徴の一つではないでしょうか。

一度使用すると、もう体がブループリントを手放せなくなってしまう魔力がある気がします!

ー Unreal Engine 4 のダウンロードページ ー

Unreal Engine 4を起動する!

Unreal Engine 4 をダウンロードして来て、起動します。この時のバージョンは4.19.2となっています。

バージョンの違いによって見た目が違ったり、下手したら使ってる関数が無くなってたり差異は結構ありますね・・・・。

起動したら、新規プロジェクト作成画面で、プロジェクトを作成して行きたいと思います。

作るゲームの内容に特化したテンプレートが幾つかありますが、やはりなるべくシンプルな状態から始めたいですね!

なので「空のプロジェクト」、「スターターコンテンツ無し」って感じでプロジェクトを作成したいと思います。

空と床だけの、シンプルが画面が作成されたと思います!

このシンプル空間におっさんモデルを配置できようにしたいと思います。

Blenderでおっさんモデルをエクスポートする!

早速Unreal Engine 4 から Blenderに戻って、おっさんモデルをエクスポートしたいと思います。
エクスポートする形式ですが、とりあえず一般的なFBX形式でおっさんモデルをエクスポートします。

オブジェクトモードにして、おっさんモデルに関係のあるオブジェクトと、rigがしっかりと選択された状態で「ファイル」→「エクスポート」でFbxを選択します。

エクスポートの設定ですが、結構注意する所がありました。

とりあえず、「メイン」タブの設定でBlenderのカメラとかライトとかがFbxに混入しないように「選択したオブジェクト」にチェックを入れます。

座標軸の設定は、Unreal Engine 4を確認したら「-Yが前方」と「Zが上」のようだったので、そのように設定しました。

次に、「ジオメトリ」タブの設定ですが、「スムージング:辺」に設定を変えました。デフォルトの「スムージング:法線」だとUnreal Engine 4の方で警告ログが出てました。

「アーマチュア」タブの設定では、「デフォームボーンのみ」にチェックを入れます。そして、「リーフボーン追加」はOFFにします。身に覚えのないボーンが増えると怖い気がしましたので。

「アニメーション」タブの設定に関してですが、Unreal Engine 4ではボーンの構成が同じであればアニメーションを使いまわせるという大変便利な作りとなっていますので、アニメーション情報を持ったrigだけを後で個別にエクスポートしようと思います。
そのため、今回は「ベイク済アニメーション」のチェックを外して、アニメーションが無い状態でエクスポートします。

早速エクスポートされたおっさんモデルのFbxをUnreal Engine 4に持っていきます。

コンテンツプラウザに適当にModelフォルダを作成し、その中にFbxをドラッグ&ドロップします。

するとFbxインポートオプションが出ますが、アニメーション無しなのでImport Animationsのチェックを外して後はインポートボタン押しました。

するとコンテンツプラウザにおっさんモデルやらスケルトンやらマテリアルやらが生成されました!

早速、ゲーム画面におっさんモデルを置いて見たいと思います!すると・・・・・。

で、でかい!!おっさんがでか過ぎる!

これはBlenderとUnreal Engine 4とでScale単位が違うために起きるようです。Blenderは1Unit=1mなのに対して、Unreal Engine 4では1Unit=1cmという単位の扱いらしいので、Unreal Engine 4では体感100倍されたモデルとなってしまうようです。

おっさんモデルを一旦消して、再インポートします(涙

FbxインポートオプションでScaleが指定できますので、良い感じに小さくなる値にしてみました。

「Import Uniform Scale」の値を0.2にしたら、それっぽい感じのサイズになったのでその値で行きます。さっきのScale単位の事を考えると、0.01じゃないかと思ってやったのですが、豆粒程にも見えないほど小さくなったのでやめました(汗

気軽に追加できるキューブオブジェクトと比較して、まぁこんなサイズかなぁと・・・・・。

とにかく!ついにUnreal Engine 4上に自作モデルを持っていく事ができました!

次回はアニメーションだけのインポートを行いたいと思います!

スポンサーリンク