🌥もこも制作日記🌥

創作に関することを書いていきます。だいたいゲーム系

【UE4.20.3】ラスタースクロールマテリアルを作成/解説の回

はじめに

ラスタースクロールマテリアルの作り方を書きます。 テリーのワンダーランドでよく見ていた表現を試しに作ってみました。

結果

www.youtube.com

作り方

全体のノード

f:id:sim-mokomo:20181021220612p:plain

流れ

  1. 縦方向に波打つSin波を作成する。
  2. 1.の sin波を UV座標の横方向に対して加算してゆがみを作成する。
  3. sin波の調整パラメータを作成する。

1. 縦方向に波打つSin波を作成する。

f:id:sim-mokomo:20181021222122p:plain

縦方向に波打つ Sin波を作成したいので UV座標の縦方向成分を取り出してSin波のパラメータとして使用することで縦方向のSin波を実現させることができます。

これは後で画面をゆがませるために使用します。

2. 1のsin波を UV座標の横方向に対して加算してゆがみを作成する。

f:id:sim-mokomo:20181021222149p:plain

1で作成した縦方向のSin波を画面描画のUV座標の横方向に適用させることで描画を横に歪ませることができます。

3 sin波の調整パラメータを作成する。

f:id:sim-mokomo:20181021222122p:plain

Sin波は出力に乗算を用い、 -1~1 の値を変更させることで並みの振れ幅を大きくも小さくもできます。 調整パラメータ DestritionIntensity がこの役割を持っています。

またSin波は入力パラメータを増減させることで並みの周波数を変えることができます。つまり細かく揺らしたり大雑把に揺らすことができるということです。

これは DestritionIntensityに比例させて値を渡しています。 調整パラメータの数が1つのほうが個人的に使いやすいのでこうしましたが、周波数調整用のパラメータを用意してもいいと思います。

終わりに

前回の記事で質問があった場合には @sim_mokomo までと言いましたが記事内のコメントで質問していただいたほうが後に閲覧する人たちにとって見返しやすいとおもったので記事内のコメントで質問等はお願いします。

UnrealEngine4マテリアルデザイン入門 第2版

UnrealEngine4マテリアルデザイン入門 第2版