妹でもわかるUnrealEngine4

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

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

2D的な波のマテリアル

f:id:una_unagi:20180319221859g:plain

f:id:una_unagi:20180319221916p:plain

妹「今日はこういったマテリアルを作ってみた。UE4のドキュメントを見ていたら、Panner……パナー? パンナー? わからんけど、そんなやつを使うと簡単に出来るみたいだなあと」

api.unrealengine.com

妹「これを見た」

「Panner……パナーかな。たぶんカメラをパンするというのと同じ意味合いの。確か前に3Dの波のマテリアルでもコレ使ってた気がする。このグレーのとこはどうなってるの?」

f:id:una_unagi:20180319222450p:plain

妹「波の形になるように、透明でくり抜いた絵を作った。Kritaを使って左右がつながるようにしてある。Kritaほんと便利」

「ふんふん。でもそういう方法で色変えるんだったらグレーじゃなくて白の方がいいのでは?」

妹「おや? グレーだとダメなのか……ダメな気がするな。色がちょっと変わってる?」

「グレーだとちょっと暗い分が色に影響しちゃうから。RGBが全部MAXになってる白がいい」

妹「模様を付ける時にグレースケールにするんだっけ?」

「白のとこはそのままの色になって、グレーのところはちょっと暗い色になるから、全体として模様がそのまま残ってるように見えるよ。明るい色じゃないと模様が見にくくなるけど」

妹「まあそのへんは後で直すとして、これが横から見た2Dゲームの水面に使えるんじゃないかと思ってるんだよ。スピードも調整できそうだし。ただちょっと問題があって」

f:id:una_unagi:20180319223936g:plain

妹「波に上下の動きをつけたいんだけど、それをPannerの設定でやると、うすうすこうなるだろうとは思ってたんだけど、下の方に水がなくなっちゃうし、1周回ってきちゃうから、非常識な水面になってしまった」

「なるほど。Pannerだけでは無理だけど、いくつか方法はあるような気がする。いい方法を思いついたら明日書く」

妹のパーティクル作成実験

f:id:una_unagi:20180315213822p:plain

妹「パーティクルが出来たような気がするからちょっと見て」

f:id:una_unagi:20180315214243p:plain

妹「まず、なんかマテリアルがないとダメみたいだったんだけど、なんかテクスチャのとこを右クリックしたら、それっぽいマテリアルが作れた」

f:id:una_unagi:20180315214253p:plain

妹「だけどこれだと透明じゃなかったので記憶を頼りにいろいろした。確か透明はTransrucentだったような気がして、あとオパシティってとこに接続して、そうすると透明になったらから、これでいいのかなあと」

「合ってると思う」

f:id:una_unagi:20180315214310p:plain

妹「あとはエミッタ? のとこにそのマテリアルを付けることで、思ったようなパーティクルを出すことに成功した」

「ハートを出したかったの?」

妹「いや本当は煙っぽいエフェクトが作りたいんだけど、煙の絵はかいてないから、とりあえずHPとかで使うハートで代用してみた。同じことを煙の絵でやれば、原理的に煙がモクモクするんじゃないかと」

「ちゃんと出来てるよ」

妹「問題はどういう煙の絵にするか……」

UE4.19.0のデバッグ機能追加

www.unrealengine.com

「今回はPreviewがたくさんでてたんだけど、ついに正式版の4.19がでた」

妹「もう出ちゃったんだ。18入れたばっかりなのに……」

「そんなに急ぐほどのことはないけど。でもいくつか気になる機能がある」

f:id:una_unagi:20180315022148p:plain

f:id:una_unagi:20180315022200p:plain

「まず確認したのがこれ。デバッグ機能の1つなんだけど、ブレークポイントを使って中断した時、そのノードがどこからどういう風に呼び出されているか、というのを確認する機能。Call Stack(コールスタック)というのは一般的なプログラムの用語」

妹「それは何の役にたつの?」

「色んなとこから呼び出す関数だと、どこから呼び出してるかっていうのがわからないことがあるんだよ。変なパラメータになってるのは確かだけど、それいつやったのかわからんという。わかってるつもりでも、確認したら実は違ってたりするし」

妹「ということは大事なやつなのでは?」

「むしろ今までコレなかったんだ……という感じのやつ。バグの発生状況がうまく特定できない時に役立つ」