UE4でナイトシーンを作ってみようと思い、以下の動画を参考にしました。
今回はその内容の理解を深めるために記事にしてみました。
エンジンバージョンとソース
バージョンはUE4.26を使用します。
月に使用するメッシュやテクスチャは動画の概要欄からダウンロードできるようになっています。
以下のソースを使用します。
※動画ではColorLUTを使用しますが私は使用しません。

ソースが揃ったら実際に作っていきます。
開発開始はサードパーソンでプロジェクトを作りたてのところから始めます。
明るい空から夜に変える
まずはSykSphereを選択してSunHightの値を-1にします。
この時点で太陽が-1の位置に移動するので空が暗くなります。
この時、Directional Light ActorをNoneにしておくことに気おつけましょう。
Stars Brightnessで星の明るさを好みで調整します。

現在の状態では、まだレベル全体が明るいのでPostProcessを選択してExposure内のMin BrightnessとMax Brightnessを以下のように調整します。

これでナイトシーンの基本的な設定は完了です。
現在レベルは、以下のように感じになっていると思います。

月を作る
ここから月を作っていきます。
ブループリントのActorクラスを選択してBP_Moonを作ります。

BP_Moonを作ったら、開いてスタティックメッシュを2つ追加してMoonとGlowに名前を変更します。
使用するメッシュは冒頭で準備したmesh_SphereをMoonに、mesh_PlaneをGlowに設定します。

メッシュと名前を設定したら、 mesh_Planeを mesh_Sphere より約一回り大きいくらい拡大して回転させて位置も変更します。
mesh_Planeの数値は画像のようになっています。

ビューポートで確認

月のマテリアルを作る
今回は月のマテリアルと月の側面に配置したプレーンの2つのメッシュにマテリアルを適応していきます。
まずは月として使用するmesh_Sphere用のマテリアルをM_MoonMATとして作り、月の側面(後方)でボヤっと光るmesh_PlaneをM_GlowMATとして作ります。

最初にM_MoonMATを開いて以下のようにノードを組みます。
尚ルートマテリアルはBlend ModeをTranslucentにしてShading ModelをUnlitにします。
※マテリアル内のノードの説明は割愛させていただきます。

続いて、 M_GlowMATも ルートマテリアルはBlend ModeをTranslucentにしてShading ModelをUnlitにします。
ノードは以下のようになります。

これで2つマテリアルが完成しました。
早速、この2つのマテリアルインスタンスを作成してBP_Moonに設定します。
マテリアルインスタンス

BP_MoonのMoonとGlowにそれぞれマテリアルの項目にマテリアルインスタンスを割り当てます。

これでBP_Moonが月っぽくなりました。
Part1は、これで終わりです。
次回は、この月をカメラのどの角度から見ても月後方にmesh_Planeのぼんやりとした光が来るように設定していきます。
No responses yet