Let's Enjoy Unreal Engine

Unreal Engineを使って遊んでみましょう

UE4.26 Water Systemを使ってみる

UE4.26 Preview 4が絶賛公開中ですが、新機能を少しずつ触っています。詳しい情報はある程度フォーラムにまとまっています。完全なリリースノートは正式版が公開次第でてくるでしょう。

forums.unrealengine.com

Chaos標準化、Fullbody IK、Mobile Deferred Renderer、GPU Lightmassなどなど、多くの新機能が搭載されていますが、今回はその中でも色々と面白そうなWater Systemについて触れたいと思います。

Water Systemはフォートナイトで既に実用化されており、既にある程度実用性の高いものとなっています、現状ではまだExperimental(実験段階)となっているので注意が必要です。

Water Systemを有効化する

Water SystemはUE4の非破壊ランドスケープシステムである、Landmassプラグインの機能を使っているため、LandmassプラグインとWater Systemプラグインの両方をオンにする必要があります。

f:id:alwei:20201025114915p:plain

上記プラグインを探して2つ共オンにしてから再起動してください。

ランドスケープを作成し、レイヤーを有効化する

特別なことは必要ないので、まずはランドスケープを通常通り作成します。マテリアルはお好みで設定しましょう。

f:id:alwei:20201025115248p:plain

作成が完了したら、アウトライナーからLandscapeアクターが生成されているので選択します。Landscapeアクターの詳細にある"Enable Edit Layers(編集レイヤーを有効にする)"にチェックを入れておきます。これをオンにするとアンドゥ、リドゥ、バッファーが消去されますので、直背前の作業に戻したいことがある場合には注意しておきましょう。

これで非破壊ランドスケープ編集機能であるLandmassが使えるようになります。ビューポート上部の"スカルプト"タブにある"ブループリント"を選択することで、ブループリントブラシ機能が使えます。ここからカスタムブラシを選択することで、非破壊なランドスケープ編集ができるようになります。一部Water Systemのブラシも混ざっていますが、ここで使えるのはあくまでも"CustomBrush_XXX"という名前のブラシだけのようです。

f:id:alwei:20201025120013p:plain

これでLandmassとレイヤーが有効化されて利用可能になりました。

Water System用アクターの配置

ランドスケープ編集モードを抜け、配置モードへと戻します。アクター配置タブ検索一覧から、"Water"と入力することで様々なアクターが出てくることを確認しましょう。

f:id:alwei:20201025120226p:plain

現状配置することで利用可能なWater Systemアクターは以下の6つのようです。

・Water Body Custom
・Water Body Exclusion Volume
・Water Body Island
・Water Body Lake
・Water Body Ocean
・Water Body River

この中のWater Body Customは自作のカスタムWater Bodyを作るためのようです。更にWater Body Exclusion Volumeはボリューム範囲内にいるキャラクターの移動を水による摩擦を発生させて、別途制限させたりすることができるようです。

残りのアクターはランドスケープの上に配置するだけで効果がすぐ出るのでわかりやすいと思います。個別に解説してみましょう。

Water Body Ocean

名前の通り、海を作ります。配置した場所を中心に島を作り、その周辺を海にすることができます。

f:id:alwei:20201025121814g:plain

最初の状態だと少し島のサイズが小さいので、スプラインポイントを選択し、少し大きくしてみる方が使いやすいと思います。

f:id:alwei:20201025122048p:plain

Water Body Lake

次は名前の通り、池です。

f:id:alwei:20201025122530g:plain

少し高い位置に配置することで、こんな池を作ることも簡単に作ることが可能です。

f:id:alwei:20201025123011p:plain

Water Body River

今度は川です。こちらも配置するだけで利用が可能です。

f:id:alwei:20201025124118g:plain

スプラインポイントを移動させたり、増やすことでOceanやLakeと組み合わせることでこのような地形を簡単に作ることができます!

f:id:alwei:20201025124240p:plain

Water Body Island

最後にこちらは少し特殊な島を作ることができるアクターです。

f:id:alwei:20201025125122g:plain

海や池の上に配置することで簡単に別の島を作成することが可能です。これは池の上に小島を作ってみたところ。

f:id:alwei:20201025125207p:plain

まとめ

Water Systemは非破壊なランドスケープ編集により、簡単に編集が可能で後からでも自由に変更が可能な非常に柔軟なシステムとなっています。また水の中の動きを制限するWater Body Exclusion Volumeと連携させることで、ゲームプレイ中の変化も設定することが可能です。

Water Heightmap Settingsから更に細かな制御も可能で、Blurring、Curl Noise、Displacementなどのエフェクトを別途付与することも可能です。マテリアルは、Water Materialだけでなく、水中内に入った際に別のポストエフェクトを適用させる、"Underwater Post Process Material"まで設定することが可能となっているので、非常に柔軟なシステムになっているというのがわかります。

現状では実験段階なため、たまにクラッシュしたり、水面が非常に強く反射したりするなどの不具合もあるようですが、これらの問題は正式版ではもう少しよくなっていると思いますので、期待しましょう!