春日部つむぎ no ゲーム作ってみよう!【UE5/UE4】 - 空(太陽と雲と星)-クイックスタート【UE5】


https://youtu.be/U3urKrOA798?si=g6LwCw-Tx1InkFjV

00:00 オープニング
00:27 1.新規レベルの作成
01:25 2.DirectionalLightプロパティの編集
01:41 2-1.DirectionalLightの動的変化
05:34   DirectionalLightの動的変化(検証)
06:57 3.夜空(BP_Sky_Sphere)
07:55 4.BP_Sky_Sphereのデフォルトカテゴリー
07:58 4-1.SunBrightness
08:16   SunBrightnessの動的変化(検証)
09:45 4-2.CloudSpeed
10:02   CloudSpeedの動的変化(検証)
11:52 4-3.CloudOpacity
12:08   CloudOpacityの動的変化(検証)
13:05 4-4.StarsBrightness
13:21   StarsBrightnessの動的変化(検証)
19:23 4-5.DirectionalLight(BP_Sky_Sphere)の動的変化(検証)
20:51 設定ファイルまとめ
20:56 エンディング
21:00 空の景色が変化することでのメリット


1.新規レベルの作成 00:27

新規レベルを作成します。

ファイル > 新規レベル > 空のレベルを選択します。
Empty Level はアセットが入っていない完全に空のレベルです。

アクタを配置パネル > Geometryタブより、Boxをドラッグアンドドロップします。

LocationとRotationをリセットします。
Scale を「8 x 8 x 0.1」にします。

まだ、真っ暗ですね。

アクタを配置 > ライトタブより、Directional Lightをドラッグアンドドロップします。



Locationをリセットします。
位置をZ:500にします。

フロアはビューポートに表示されましたが、周りはまだ暗いままです。

アクタを配置パネル> ビジュアル エフェクトタブより、SkyAtmosphereをドラッグアンドドロップします。



青い空と太陽が表示されましたね。

2.DirectionalLightプロパティの編集 01:25

太陽が小さいので大きくします。

Directional Lightを選択します。

詳細パネル > ライトカテゴリ > Source Angleを最大5.0にします。

太陽が見やすくなりました。


2-1.DirectionalLightの動的変化 01:41

詳細パネル > 大気と雲カテゴリ > Atmosphere Sun Lightが有効になっていることを確認します。



RotationのYを値を変化させると、空の色が夜、日の出、日中、日没と変化します。

RotationのZを値を変化させると横に移動します。

180°:日の出


180°〜360°:日中


360°と0°:日没


0°〜180°:夜


Directional Lightをブループリントを使って周回させてみようと思います。

Directional Lightを選択します。

詳細パネル>トランスフォーム>可動性をムーバブルにします。

ムーバブルは、ゲーム内で移動および変更ができます。



レベルブループリントを開きます。

右クリックで「Create a Reference to DirectionalLight」を選択します。



DirectionalLightより、Set World Rotationノードを配置します。

LightComponentと一緒に配置されます。



Event Tickノードを配置します。

変数の「+」をクリックして
変数SunRotation Float型を追加します。
変数SunRotation Float型・・・DirectionalLightのRotation

一度コンパイルします。
日の出からスタートしたいので
デフォルト値を「180」にします。

変数SunRotation Setノードを配置します。
Event Tickノードにつなぎます。

変数SunRotation Getノードを配置します。
Addノードをつなぎます。
下のピンに「1.0」を記載します。
Addノードを変数SunRotation Setノードにつなぎます。

1.0°づつ増やしていきます。



検証用にPrint Stringノードをつなぎます。
In Stringピンと変数SunRotation Setノードをつなぎます。

Set World Rotationノードをつなぎます。



New Rotationピンに Make Rotatorノードをつなぎます。
Y(Pitch)ピンに変数SunRotation Setノードをつなぎます。



360°まで来たら0°に戻します。

Branchノードをつなぎます。
変数SunRotation Getノードを配置します。
Equalノードをつなぎます。
下のピンに「360」を記載します。
Conditionピンにつなぎます。
Trueに
変数SunRotation Setノードをつなぎます。
下のピンに「0.0」を記載します。
Falseには何もつなぎません。



切り替えスイッチを作成します。

Num1ノードを配置します。
Branchノードをつなぎます。
Conditonを右クリックで「変数へ昇格」します。
変数名「Num1」にします。
一度コンパイルします。
デフォルト値を「無効」にします。
Trueに変数Num1 Setノードをつなぎます。
Falseに変数Num1 Setノードをつなぎます。
こちらはチェックを付けます。



Event Tickノードの後ろに
Branchノードをつなぎます。
Conditionに変数Num1 Getノードをつなぎます。
Trueに後ろの処理をつなぎます。



起動してみましょう。
DirectionalLightの動的変化(検証) 05:34

3.夜空(BP_Sky_Sphere) 06:57

夜空が真っ暗なので、夜空に星を表示したいです。

DirectionalLightを選択します。
トランスフォーム>回転で、
Y:90にします。



コンテンツブラウザの「設定」をクリックします。
「エンジンのコンテンツを表示」を有効にします。



コンテンツブラウザにエンジンフォルダが追加されます。

「BP_Sky_Sphere」を検索します。
BP_Sky_Sphereをレベル内にドラッグアンドドロップします。



BP_Sky_Sphereを選択します。

詳細パネル>デフォルト>Directional Light Actorで
メニューを開きます。
DirectionalLightを指定します。



これで、BP_Sky_SphereとDirectionalLightが関連づけられます。

星空になりましたね。



もし、星空が表示されなければ

「BP_Sky_Sphere」の「Refresh Material」のチェックボックスをクリックして、
MaterialをRefreshします。

4.BP_Sky_Sphereのデフォルトカテゴリー 07:55

4-1.SunBrightness 07:58

SunBrightnessは、太陽の見た目の光の強さです。
Shadowには影響はありません。

デフォルト値:50
非表示:0.0

値を増やすと光が強なります。


SunBrightnessの動的変化(検証) 08:16

4-2.CloudSpeed 09:45

CloudSpeedは、雲が移動するスピードです。

デフォルト値:1.0
静止:0.0

値を増やすと移動スピードが速くなり嵐のようになります。


CloudSpeedの動的変化(検証) 10:02

4-3.CloudOpacity 11:52

CloudOpacityは、雲の濃さです。

デフォルト値:0.7
非表示:0.0

値を増やすと雲が濃くなり増えていくように見えます。


CloudOpacityの動的変化(検証) 12:08

4-4.StarsBrightness 13:05

StarsBrightnessは、星の光の強さです。

デフォルト値:0.1
非表示:0.0

値を増やすと星の光が強くなり星が増えていくように感じます。


StarsBrightnessの動的変化(検証) 13:21

4-5.DirectionalLight(BP_Sky_Sphere)の動的変化(検証) 19:23

設定ファイルまとめ 20:51

空の景色が変化することでのメリット 21:00

▼没入感の向上:

空の色や雲の動きが変化することで、プレイヤーはゲーム世界により深く没入できます。
美しい夕焼けや星空など、リアルな空の表現はプレイヤーの感情を引き立てます。

▼戦略的要素の追加:

空の変化は、天候や時間帯の変化を反映することがあります。
天候や時間帯の変化により、プレイヤーは戦略的な判断を下す必要が生じます。
たとえば、夜間は視界が制限されるため、敵の接近を避ける必要があるかもしれません。

▼美的な楽しみ:

空のグラフィックスが美しく描かれている場合、プレイヤーは景色を楽しむことができます。
美しい日の出や雲海、オーロラなどは、プレイヤーに視覚的な喜びをもたらします。