妹でもわかるUnrealEngine4

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

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

Sculptrisで作ったカエルをUE4に表示する マテリアル編

妹「読み込んだ時の色とかってどうなるの? Sculptrisの時と違う気がするんだけど」

「マテリアルは保存してないよ。Sculprtisにマテリアル保存機能がないみたい。もしマテリアルがあるならmtl形式のファイルが同時に作られるはず。objファイルにはどのmtlファイルを使うかっていう、名前の情報しかないから」

f:id:una_unagi:20151027222112p:plainf:id:una_unagi:20151027222117p:plain

「objファイルっていうのはこういう感じで、メモ帳とかで読めるようなデータなんだけど、usemtlってとこが(null)って書いてある。ブループリントでも出てくるけど、nullは何もないって意味でよく使われる単語」

妹「この数字の山は?」

「まずポリゴンの頂点を全部書きだしてある。XYZで。その後は何番目の点と何番目の点を繋いで面を作るってのが書いてある。こういう単純なところがobj形式のいいところ。これも元はといえばWaveFrontって会社が作った自社用データだけど、扱いやすいから色んなとこで使われるようになった。データにトラブルがあった時に調べやすいし。とはいっても大きいデータだと何万行にもなるから調べるって言っても大変だけど」

妹「このカエルそんなに大きなデータなの?」

「うーん、見た感じだと2万ポリゴンぐらいはあるんじゃないかな。ゲームキャラクターとしてはちょっと多すぎる。まあそれは後からポリゴン削減ツールとか使えばいいよ。昔は最初から少ないポリゴンで作るのが常識だったけど、今は後からポリゴン減らす方が綺麗に作れることが多い。特にこういう感じの生き物系のは」

妹「これでいいんだったらいいんだけど……とりあえずマテリアルを設定してみたい。Sculptrisからマテリアルを保存すればいいの?」

「マテリアルを保存する機能自体がなさそうな感じ。まあそれは適当にUE4のマテリアルをくっつければ問題ないよ」

f:id:una_unagi:20151027223221p:plain

「これは草のマテリアルを貼り付けた状態」

妹「やっぱりスムージングのとこは直らないね。あれ? 草のマテリアルってもっとモコモコしてるもんじゃなかったっけ?」

「それはテスクチャの問題だね。色と艶はちゃんと出るけど、模様は全然つかない。UVマップの設定がされてなさそうな感じ」

妹「その話、紫外線的なものと関係ある?」

「ない。元々模様のテクスチャは2次元の絵になってて、その絵をポリゴンに貼り付ける仕組みなんだけど、UVマップっていうのはどのポリゴンがテクスチャのどの位置から絵を持っていくかという設定のこと。3DとかCGとかの話でUVっていう単語が出たら100%この話。もし適当にでもUVマップが設定してあれば、歪んだりはしても柄が反映させるはずだから、全然柄がでないってことは設定がない。具体的にはテクスチャの左上の1点を引き伸ばして使ってる状態。だから全体的に同じ色になる」

妹「UVというのもなんか別のソフトで設定しないと駄目なのかな?」

「それでもいいけど、多分Sculptrisでも出来るはず。テクスチャ画像の書き出し機能はあるみたいだから、テクスチャがあってUVが無いのはありえない」

妹「テクスチャ……なんかSculptrisだと色が上手く塗れなくて、PhotoShopとか使えばもっと綺麗に塗れるって話をどこかで見たんだけど、その話と関係ある?」

「関係ある。いったんテクスチャ画像にすれば、それは画像だから、PhotoShopでもSaiでも好きなのが使えるから。ただ使えるからといって、それで綺麗なテクスチャ作るっていうとまた別問題なんだけど。テクスチャが綺麗じゃなくても、それ用のUVを設定すれば、マテリアルの質感も上手く出せるようになるはず」

(続く)