2019年11月15日お久しぶりです、3DCG背景担当の中村です。4(以下UE4)上の水表現に、波打ち際の泡の表現を簡単に加える方法をご紹介させていただきます。手法的には今回ご紹介する方法以外にもありますが、そちらは開発環境によってはそのまま使用できない場合もありますので、今回は汎用的に使用できる表現をご紹介します。この表現は、Waterマテリアルを割り当てたプレーンに干渉する、別アセットの周囲に疑似的に泡のようなものを出しています。作り方に進みましょう。マテリアルを作成します。そのマテリアルの詳細を下記のように設定します。Volumeこれがマテリアルの基本設定です。残念ながら後述の理由で半透明マテリアルでしか使えません......。続いて、下記画像のようにノードを加えていき、マテリアルのエミッシブカラーに接続します。Fade】ノードを使用するため、半透明でしか使えません......。Fade】ノードを使用することによって、水面用プレーンアセットに干渉した物の判定が取れるようになります。干渉物というのは今回で言えば、水面に突き刺さっているcubeアセットのようなものです。出来上がったマテリアルをプレーンに割り当てると、上記画像の右のような状態になります。Fade】ノードのFadeDistanceに固定値を接続するだけでも同様の状態が出来ます。今回は【Noise】ノードなどを加えています。これらを使用する理由は後述になります。これだけだと、黒いプレーンに謎の白い直線がリピートしているだけの物になってしまいますので、ベースカラーとノーマルを加えていきます。お好みでオパシティを入れても良いでしょう。ここでポイントですが、ノーマルはUVスクロールアニメーションをするように作成してください。出来上がった物を適用すると、上記画像の右のような状態が出来上がります。Fade】ノード以下に接続していました【Noise】ノードのおかげです。ノーマルを接続したことによって、【Noise】ノードが役割を果たして直線状だった泡がノーマルに合わせて崩れます。ノーマルをUVスクロールアニメーションさせることによって、複雑な崩れ方をしますので、より自然な表現になります。Fade】ノードを使用したりするとクオリティを上げられます。Surface】ノードを使用して表現する手法もあります。以上)”の物にしか対応していませんので、使えない場合もあります。Surface】ノードが使用できない環境でも使える可能性がありますので、そういった場合は是非お試しください。それでは、今回はこの辺りで失礼します。today)PREV【11月】ボードゲーム部定例会NEXT作業をなんとかして進める気合とテクニックコメント投稿は締め切りました。年末ポケモン大会が開かれた話。