Unreal Engine 5.6なら初心者でも品質の高い川が簡単に作れます。
エンジンバージョンとプラグインと必要素材
- エンジン: Unreal Engine 5.6.1
- プラグイン: Water
UE5.6に最初から入っていますが、手動で有効化する必要があります。 - プラグイン: Water Advanced
UE5.6に最初から入っていますが、手動で有効化する必要があります。 - ランドスケープのLevel
ランドスケープのLevelが必要です。ここではランドスケープの解説はしていません。
プラグインの有効化
上メニューの 編集 > プラグイン からWaterとWater Advancedを有効化して再起動してください。
再起動するとエラーが出ます。
エラー文末尾の「DeaultEngine.ini? にエントリを追加しますか?」をクリックした後、右下の「クリア」をクリックして再起動。
再起動後はエラーは出ません。
ランドスケープのLevelを開く
何でもいいので、ランドスケープのLevelを開いてください。
Water Body Riverの追加
上メニューの■+アイコンをクリックして、検索欄に「水」と入力してから水塊川を選択。
※英語では水塊川はWater Body Riverです。
「新しいランドスケープ編集レイヤーを挿入」は、「Water」で構いません。
スプラインポイントを選択し、位置を変更できます。
注意点として、この後の作業でシミュレートした時に「最初のスプライン ポイント」から水が発生して川が流れます。「最初のスプライン ポイント」が下流になってしまうと、川に水が流れず下流に水が溜まるようになってしまいます。
WaterBodyRiverを選択し、詳細の Selected Point > スプライン ポイントを選択 の左端のアイコンをクリックすれば「最初のスプライン ポイント」が選択されます。
必ず「最初のスプライン ポイント」を上流にしましょう。
深さや川幅の設定
Level上のスプラインポイントを選択し、詳細の 水 を見ます。
深さ、川幅、流速、オーディオの強さの変更が可能です。
詳細の スプラインポイントを選択 の欄の中央のアイコンをクリックすると、全スプラインポイントを選択して一括変更が可能です。
川の輪郭を自然にする
スプラインポイントの選択を外してから、WaterBodyRiverを選択。
詳細の テレイン > 水の高さマップの設定 > エフェクト > カールノイズ を見ます。
カール1量に0.2くらいの値を入力すると川の輪郭が自然に曲がって良い具合になります。
Shallow Water Riverの追加
上メニューの■+アイコンをクリックして、検索欄に「water」と入力してからShallow Water Riverを選択。
Shallow Water Riverは、浅い水の流れの川です。
浅瀬と水流に関する設定になります。
Water Body RiverとShallow Water Riverの接続
ShallowWaterRiverが選択されている状態で、詳細の 水 > Source River Water Bodies を見ます。
このIndex[0]にWater Body Riverを指定。
これでWater Body RiverとShallow Water Riverが接続されました。
シミュレート
ShallowWaterRiverが選択されている状態で、詳細の ユーティリティ を見ます。
「リセット」をクリックすると川の水の流れがシミュレートされます。
シミュレートする時は、詳細の レンダリング > Render State が「Live Sim」になっているのを確認しておきましょう。「リセット」すると自動で「Live Sim」になりますけどね。
「ベイク」した後、この項目を手動で変更する必要があります。
水が溢れた場合の調整
ShallowWaterRiverを選択した状態で詳細を見て、
シミュレーション > Remove Outside Spline Amount の値を200にすると溢れにくくなります。
WaterBodyRiverを選択した状態で詳細を見て、
水の高さマップの設定 > フォールオフ設定 > ZOffset の値を100~200にすると、川の両岸が高くなって、水が溢れにくくなります。
両岸が高くなることで形状が不自然になるのは注意が必要です。
ベイク
言うまでもなく、リアルタイムシミュレートは非常に負荷が大きいです。
ベイクして負荷を下げる必要があります。
Shallow Water Riverが選択されている状態で、詳細の ユーティリティ を見ます。
「ベイク」をクリックするとベイクされます。
ベイクした後、詳細の レンダリング > Render State を「Water Component with Baked Sim」にするとベイク状態でのレンダリングになり、負荷が軽くなります。
水流の確認だけなら「Baked Sim」でも良いのですが、「Water Component」状態でないとテストプレイをした時に水の波紋が出ないです。
追加したスタティックメッシュに水の影響を与える
Shallow Water Riverが選択されている状態で、詳細の コリジョン > Bottom Contour Tags を見ます。
ここにTagを入力します。今回はRockとします。
このTagがあるアクターは水の影響を受けるわけです。
何でもいいのでスタティックメッシュ(コリジョン有効)をLevelに配置します。
今回は、形状 > キューブ を配置しました。
水の影響をテストしたいので、川の中に配置します。
配置したスタティックメッシュを選択し、詳細の アクタ > 詳細設定 > Tags にRockというタグを追加します。
今現在はスタティックメッシュを配置する前のベイク状態であり、シミュレーションしていませんから、スタティックメッシュを無視して水が流れます。
この状態でShallowWaterRiverの詳細の「リセット」をクリックしてシミュレーションすると、スタティックメッシュのコリジョンに水が影響を受けています。
問題なさそうなら「ベイク」をクリックしてベイク。
ベイク後はRender State を「Water Component with Baked Sim」に戻す。
シミュレーションした時に水が溢れる問題も、部分的ならスタティックメッシュを岸に追加して岸を高くすれば解決できます。
プレイヤーキャラクターに水の影響を与える
上メニューの 編集 > プロジェクト設定 を選択。
検索欄に「Shallow Water」と入力。
「デフォルトの浅瀬サブシステム」を使用にチェックを入れる。
ShallowWaterRiverが選択されている状態で、詳細の レンダリング > Render State が「Water Component with Baked Sim」になっているのを確認。
波紋の確認だけなら「Water Component」でも確認できますが、水は動かず溜まったまま停止状態です。
この状態でプレイヤーキャラクターが水に入ると、波紋が広がるようになります。
読み込みが終わってから波紋が出ますから、テストプレイを開始してから少し待つ必要があるかと思います。
それでも波紋が出ない場合は、プレイヤーキャラクターのコリジョンに問題がある可能性があります。
ちなみにプレイヤーキャラクターの場合はTagsにRockは不要です。
水の色を変える
ShallowWaterRiverが選択されている状態で、詳細の レンダリング > Baked Sim Materialを見ます。
デフォルトでセットされているSW_Water_Material_Riverを開いて各種値を変更すれば、水の色が変わります。
SW_Water_Material_Riverを開き、Global Vector Parameter Valuesを開きます。
Absorption(吸収)は水全体に影響を与えます。
右のカラーピッカーを開き、青っぽくすると川の水全体が青っぽくなります。
Aは色の透明度です。0にすると濃くなり、100にすると薄まった色になります。
Scattering(散乱)は部分的に影響を与えます。
右のカラーピッカーを開き、赤っぽくすると血が混ざって濁ったような川になります。
※Absorption(吸収)のカラーピッカーはデフォルト値に戻しています。
参考元
↑Aziel Artsチャンネルでは、動画の詳細欄に無料のランドスケープマテリアルのリンクがあります。そこでメールアドレスを入力してダウンロードするシステムです。
高品質のランドスケープマテリアルプロジェクトが入手できます。これを今回のチュートリアルで使用しています。
プロジェクトファイルですが、ランドスケープマテリアルは「移行」で自分のプロジェクトファイルに移行できます。
非常に優れたチュートリアルを多数公開しており、オススメのチャンネルです。
コメント