妹でもわかるUnrealEngine4

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

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

DazStudioから出力したFBXデータをBlenderで読み込む②マテリアル編

「一昨日Blenderに読み込むところまでやったけど、実は色々おかしい点がある」

f:id:una_unagi:20160214211514j:plain

「まつ毛が変なことになってて、かつ白目をむいている」

妹「ちゃんと読み込めてないんじゃん……」

「これは読み込めてないというか、マテリアルの設定の問題なんだけどね。FBX形式で上手く再現出来てないパラメータがあるみたい。まつ毛に関しては白黒画像のテクスチャで、まつ毛の形に切り抜いて表示されるのが正しい。目は3層ぐらいの構造になってて、一番外側は透明な球体で涙とか潤んだ目を表現する物みたいだけど、なんかそれが不透明になってる」

f:id:una_unagi:20160214212042j:plain

「↑が本来の状態。今回使ってるフィギュアデータはJosie7という物で、わりと新しいやつだけど、古いフィギュアだと構造は違うかもしれない。Daz製のフィギュアの中にはアニメ系のもあるし。まだ全部試すところまでいってないけど」

f:id:una_unagi:20160214212415p:plain

「まつ毛に関してDazStudioからExportする時の設定が重要。チェックを入れると透明度付き画像Blenderでまつ毛を出すならこの赤枠のところにチェックを入れる。でもUE4で使うことを考えるとチェックしない方が良さそうな感じだった。今回はBlenderで表示する場合のチェックを付けた前提の手順でやってみる」

f:id:una_unagi:20160214213012j:plain

「まず眉毛のマテリアルを探す。マテリアル17個もあるし、名前が適当すぎて探すのに苦労する。見つかったらディフューズとスペキューラを下げて、まつ毛が光を反射せず、常に黒くなるようにする」

f:id:una_unagi:20160214213018j:plain

「透過設定のところも適当に設定して、まつ毛部分だけ残してくり抜くようにする。このやり方はリアル系髪の毛でもよく使われてる。1本1本ポリゴンで作るより楽で高速に出来るから」

f:id:una_unagi:20160214214513j:plain

「そうするとまつ毛が正しく表示されるようになる」

妹「ふんふん。でもUE4で使うにはこれだと駄目なんだよね?」

「この方法だと何故かまつ毛のテクスチャがFBXに保存されないんだよ。それも変な話なんだけど。Blenderの方で白黒テクスチャを透過用に使う手もあるはずなんだけど、こっちは方法がよくわかってない。マテリアルに関してはソフトごとに設定方法が違いすぎて、FBXでは上手く受け渡せないことが多いらしい。その点最初から各ゲームエンジン用に調整済みのアセットだと使いやすいね」

妹「白目むいてるのは?」

「外側の層を透明にすればいいんだけど、容量削減にもなるから、演出用のポリゴンを消してしまう方がいいような気がする。一番外側のやつ、Josie7を読み込むとUntitled.014って名前になるけど、このマテリアルがついたポリゴンを消す。消す時の細かい操作はBlenderの入門書とかで」

f:id:una_unagi:20160214220312j:plain

「これでちょっとは目らしくなる。同じ要領で、白目の部分を覆ってるUntitled.008と、角膜っぽいUntitled.003も消しちゃう」

f:id:una_unagi:20160214220652j:plain

「これで本来の状態に近づいた」

妹「でも最初みた写真の方が綺麗に写ってる気が」

「あれはマテリアルを細かく設定して、数分かけてレンダリングした状態だからね。Blenderでもちゃんとやればもっと綺麗に出来るはずだし、UE4でマテリアルを調整してもいい。そのへんは用途や好みで」