👌

アンリアルエンジンにおけるライトと大気

2024/10/11に公開

ライトと大気について解説します。

現在、以下よりオープン価格500円でUE5(アンリアルエンジンン)の基礎を優しく極める本を発売中です。
https://zenn.dev/ryu_takatsukasa/books/d22a6992bce434
前半は無料でお読みいただけますので、よろしければご検討くださいませ。

アンリアルエンジンにおけるライトと大気の設定

それでは、アンリアルエンジンでのライトと大気について説明させていただきます。
まずは、設定を行いましょう。

マップの選択

「ALL」から「My_Content」に入り、
「MAP」フォルダ内の「TestMap」を開きます。

アクターの移動


このレベルにはライトと大気のみが存在していますが、そのアクタが下に位置しているため、
アイコンを左クリックして移動ツールを選択するか、
Wキーを押してそれぞれのアクタを上方に移動させます。

平面の作成

次に、配置メニューから「形状」→「プレーン」を選び、平面を作成します。

トランスフォームの設定

平面を選択した状態で、
アウトライナーの下部に表示されている「詳細」セクションの「一般」の中の「トランスフォーム」
を確認します。

この中の「可動性」については、以下の3つの設定があります

スタティック

ゲームやシーン内で動かないもの。

ステイショナリー

色合いや光をリアルタイムで変化させたいとき。

ムーバブル

自由に動かす必要があるもの。

地面に関しては動かないものですので、スタティックのままとしておきます。

次に、位置の設定を行います。X、Y、Zそれぞれに0と入力します。

これにより、アクターのピボッドを中心にこのレベルの座標の中央に平面が配置されます。

拡大縮小の設定

続いて、拡大縮小のカギのマークをクリックして、Xに1000と入力します。

単位はセンチメートルですので、1000センチ、つまり縦横10メートルの平面が作成されます。

シリンダーの追加

さらに、左上のメニューから「アクターを配置」→「形状」→「シリンダー」を選択し、
平面にドラッグアンドドロップします。

シリンダーを配置したら、「End」キーを押して平面にくっつくようにします。

ライトと大気の確認


右側のアウトライナーには、以下のライトと大気の要素が含まれています。

  1. ディレクショナルライト
  2. スカイライト
  3. スカイアトモスフェア
  4. エクスポーネンシャルハイトフォグ
  5. ボリュメトリッククラウド

レベルを編集していると、他のアクターが選択されてしまい、
ライトや大気を選択するのに苦労することがあります。

その際は、右側のアウトライナーからライトや大気を選択できます。

次に、各種ライトと大気の主要な機能について説明していきます。

アウトライナー上のライトの設定

アウトライナー上にあるライトは、レベルを何もない状態から作成した際に設定した環境光です。
この環境ライトは、レベル作成後に環境ライトミキサーを使用して設定されました。

さらに、アクタを配置する際には、ライトを追加することもできます。

Directional Lightの特徴

まず、このDirectional Lightは直訳すると「方向性のあるライト」を指します。
その名の通り、現実世界の太陽の光のように、方向性を持ったライトです。
オブジェクトに光が当たることで、裏側に影ができ、シーン全体が明るくリアルに表現されます。

これを移動させるには、「Ctrl」キーを押しながらキーボードの「L」を押し、
マウスをドラッグします。
これにより、シーンを朝、昼、夕方、夜と自由に変更できます。

シーンの影の変化

現在、左側からシーンが照らされているため、アクタの右側に影ができているのが分かります。
また、アウトライナーのディレクショナルライトの目のアイコンを左クリックして非表示にすると、
レベル全体が真っ暗になってしまいます。


もう一度アイコンをクリックして元に戻しておきます。
このディレクショナルライトの重要性が分かると思います。

ライトの可動性設定

アウトライナー下の詳細にある「一般」の中には、
ライトの可動性が「スタティック」「ステイショナリー」「ムーバブル」の3つに分かれています。

スタティック

ゲームやシーンにおいて動かず、色や明るさも変更できません。

ステイショナリー

動かないが、色や明るさは変更可能です。

ムーバブル

動かすことができ、色や明るさなどの詳細も変更できます。

処理にかかる負荷は、スタティックが最も低く、ムーバブルが最も高くなります。

新しいライティングシステム「ルーメン」

アンリアルエンジン5からは新しいライティングシステムである「ルーメン」が実装されました。
このルーメンによって、ライトの色合いや反射がより現実世界に近い綺麗なシーンを表現できるようになっています。

ただし、ルーメンは可動性のスタティックには対応していないため、
基本的にステイショナリーかムーバブルに設定する必要があります。

ライトのインテンシティとカラー設定

続いて、ライトのインテンシティは光の強度を表します。
左クリックで左右に動かすことで光の強さを変更でき、
デフォルトに戻す際は右側の矢印を押すと元の設定に戻ります。


その下にあるライトカラーは、デフォルトで白に設定されていますが、
任意の色に変更することができます。

変更方法は、白い部分を左クリックしてカラーピッカーを出します。


カラーピッカーの色のホイールから任意の色を選択すると、照明にカラーが入ります。
このホイールの表示はアイコンで切り替え可能です。



また、スポイトツールを選択すると、カーソルを合わせた色に設定されます。

終了する場合は、エスケープキーを押します。

RGB調整による色表現

RGBを調整することで色を表現できます。
RGBとは三原色(R:赤、G:緑、B:青)で構成されており、
この3つの色を混ぜることで様々な色を作ることができます。

また、色は16進数カラーコードで表現されるため、
好みの色のコードを入力することで同じ色を再現できます。

ソースアングルとソースソフトアングル

続いて、ソースアングルとソースソフトアングルです。
値が高くなるほど影の角がソフトになります。
こちらはレイトレーシング技術を用いていますが、高性能のグラフィックカードでないと、
値を変更しても違いが分からないかもしれません。

今回の講座では初期設定でレイトレーシングを使用しないため、値を変更しても変化はありません。

光の温度「テンプチャー」

こちらは光の温度に関する項目です。温度によって光の色合いを表現します。

例えば、ガスコンロの火は青と赤の炎が入り混じっていますが、温度の高い方は青色です。

テンプチャーはこの原理を応用して、温度によって色合いを変化させます。
使用するには「ユーズ・テンプチャー」にチェックを入れ、温度を上げると青っぽく、
下げると赤みがかります。


ユーズ・テンプチャーのチェックを外してデフォルトに戻します。

ライトの有効・無効の切り替え

次に、アフェクトワールドではレベルのライトの有効・無効を切り替えます。
チェックを外すと、ライトがなくなります。

キャストシャドウの設定

次はキャストシャドウです。こちらのチェックを外すと、アクタにかかる影が消え、チェックすると影が有効になります。

影を映し出す際にはエンジンに負担がかかるため、処理を軽くしたい場合は、
一部のライトのキャストシャドウのチェックを外しても良いでしょう。

間接ライティングの強度設定

最後に、インダイレクトライティングインテンシティは間接的な明かりの強度を表します。
ボリュメトリックスキャタリングインテンシティは体積散乱の強度で、光が霧を通過した際の光が散乱する強度を表します。

両方とも、違いは分かりにくいですが、左右に動かすことで強弱を設定できます。

以上が、アウトライナー上のライトの設定に関する説明です。
これらの設定を活用して、よりリアルなシーン作りを目指しましょう。

Sky Lightの役割と特徴

Sky Lightは、シーン全体を均一に照らす光源です。
この光は空の色自体を変えることはありませんが、昼と夜の違いや天候の変化を表現することが可能です。

自然な照明の実現

リアルタイムキャプチャーを活用することで、空が青いときには青白い光を投影し、
暗くなった場合にはそれに応じた色合いをシーンに反映させることができます。

これにより、シーン全体を自然な光で照らし出すことが可能です。

スカイライトとディレクショナルライトの関係

ディレクショナルライトと同様に、Sky Lightも遠方からの光の反射を表現する役割を持っています。

ここで触れられている
「スカイライト位置からスカイディスタンススレッシヨルド値よりも遠方にある」
という部分は少し難解ですが、要するに、
スカイライトがどのように地面に光を投影するかを説明しています。

スカイディスタンススレッシヨルドの理解

スカイディスタンススレッシヨルドの値が高いほど、空の色が地面に反映されることを意味します。
これにより、光が地面に届くことで、よりリアルな表現が可能になります。

光の強度と色合いの調整

強度スケーリングでは、Sky Lightの光の強さを調整することができます。
この設定を変更することで、シーンの雰囲気を大きく変えることができるでしょう。

さらに、Light Colorの設定では、光の色合いを変えることができます。
この設定を実際に変更してみると、先ほどのディレクショナルライトとは異なり、
空の色は変わらないことが分かります。

Sky Atmosphereの基本

Sky Atmosphereは、直訳すると「空の雰囲気」となり、
空気中の光の散乱などをリアルに表現する機能です。
具体的には、昼間の青空から夕方のオレンジ色の空、そして夜の星空までを表現できます。
これらの変化は、ディレクショナルライトの向きによって大きく影響を受けます。

右側のアウトライナーの目のマークをクリックして非表示にすると、
Sky Atmosphereの重要性が一層理解できるでしょう。

この機能を使うことで、リアルに近い美しい空を表現することができます。

Atmosphere Heightの設定

まず、Atmosphere Heightについてですが、これは地上から宇宙空間までの距離を表しています。
1単位あたり1 kmとなるため、60キロの設定が可能です。
実際にこの大気の効果を体験してみましょう。

その後、Atmosphere Heightを5に設定しましょう。
これにより、地面から宇宙空間までの距離が5キロになります。
右上のカメラスピードを最大に設定しておきましょう。

右クリックを押しながらEキーを押しっぱなしにすると、
上空へとどんどん上がっていき、大気を突き抜け、宇宙空間を眺めることができます。

宇宙空間の表現

アンリアルエンジンで宇宙空間を表現する際には、このSky Atmosphere機能が非常に役立ちます。

元の位置に戻るには、1を押してください。
もし設定を忘れてこの画面に戻れなくても、右側のアウトライナーからシリンダーを選択し、
キーボードのFを押せば視点を戻すことができます。

最後に、Atmosphere Heightの矢印をクリックしてデフォルトに戻しておきましょう。

MultiScatteringの理解

次に、MultiScatteringについてですが、これは多重散乱、つまり太陽光が大気中で散乱し、
跳ね返って見える度合いを表しています。
この数値を小さく設定すると、効果が小さくなり、値が0になると完全にオフになります。

プラネットのカテゴリ

プラネットのカテゴリでは、惑星の設定を詳細に調整することができます。
ここでは、Transform ModeやGround Radiusなど、主要な設定について解説します。

Transform Modeの設定

Transform Modeは、惑星がゲーム内のどこに位置し、
どの方向を向いているかを決定します。以下の3つの選択肢があります。

Planet Top Absolute World Origin

このオプションは、惑星を宇宙の特定の位置に固定し、シーン全体で一貫した大気の視覚効果を実現します。特に大規模なシーンやオープンワールド環境の作成に適しています。

Planet Top at Component Transform

このオプションは、惑星の上部を特定のオブジェクトに合わせるもので、
プレイヤーが飛行機や宇宙船を操作して高度を上げるようなゲームに向いています。

Planet Center at Component Transform

こちらは、惑星の中心を特定のオブジェクトに合わせるもので、
プレイヤーが惑星間を移動するゲームの作成に適しています。

Ground Radiusの設定

Ground Radiusは、惑星の大きさを表します。
これは、惑星の中心から地表までの距離、つまり半径を示しており、単位はキロメートルです。
デフォルトの値である6360は、惑星の半径が6360キロであることを意味し、
地球の半径(6371キロ)に非常に近い大きさです。

Ground Albedoの調整

Ground Albedoを使うことで、大気全体の色を変更できます。
夕暮れ時など、太陽が沈んでいる時には色の変化がわかりにくいですが、
太陽が上にある状態でカラーピッカーを操作すると、雲を含む大気全体の色が変わるのが分かります。

アトモスフィア設定の理解

次に、アトモスフィアに関する設定を見ていきましょう。

アトモスフィア・レイリー

アトモスフィア・レイリーでは、レイリー散乱に関する項目を扱っています。
レイリー散乱は、空気中の小さな粒子(酸素や窒素など)が光に当たり、四方八方に反射する現象です。この現象により、宇宙が真っ黒なのに対し、地上から見る空は青く見えます。

Rayleigh Scattering Scaleは、数値が低いほど光の散乱が少なくなり、
高いほど光の散乱が多くなります。これにより、シーン全体の光の当たり方が変化します。

Rayleigh Scatteringのカラーは、デフォルトで現実世界と同等の空の青に設定されています。
カラーピッカーを使用してデフォルトの色合いを変えることで、幻想的な空を表現できます。

Rayleigh Exponential Distributionの調整

Rayleigh Exponential Distributionでは、レイリー散乱がどの高さで40%減少するかを設定します。これにより、地上からどれくらいの高さで空の色が薄くなるかを調整できます。

アトモスフィア・ミー

次に、アトモスフィア・ミーについて説明します。
ミー散乱は、光が水蒸気などの大きな粒子に当たり、反射する現象です。
ミー散乱では、すべての光が一様に散乱されるため、霧がかったように白く見えます。

Mie Scattering Scaleを上げると、大気がかすんで霧がかったように見えます。
雲の色合いの調整も可能です。

Mie Absorption Scaleでは、大気中の粒子が光を吸収する度合いを表します。
このスケールを調整することで、光の吸収度を変更できます。

Mie Anisotropyの調整

Mie Anisotropyは、0に近づくほど光が一様に反射され、
1に近づくと光源(太陽)に光の輪ができます。

アトモスフィア吸収の設定

この設定では、レイリー散乱やミー散乱と同様に、Absorption Scaleで吸収されやすさを設定します。この値が高いほど、Absorptionで設定した色が吸収され、色相関上の反対の色が反映されます。

空気遠近の設定

最後に、アートディレクションでは、空気遠近の設定を行います。
空気遠近とは、遠くの風景が青みがかり、輪郭が不明瞭になる現象です。

スカイルミネンス・ファクターで空の色を変えることができます。
雲の色合いは変化せず、雲の上にある空の色を変更できます。

エアリアル・パースペクティブ・ビューディスタンス・スケールでは、空気遠近の強さを調整します。
数値を高めると、遠くにある景色がぼやけ、逆に数値を低くすると遠くの景色がはっきりします。

ハイトフォグ・コントリビューションの設定

ハイトフォグ・コントリビューションは、
大気や霧が空気遠近に与える影響を調整する重要な項目です。
この数値を低く設定すると、大気や霧の影響が軽減され、光の反射が少なくなり、
全体的に暗く見えます。一方、数値を高くすると、大気や霧が強調され、
シーンが白っぽくなることがわかります。

トランスミッテンス・ミン・ライトエレベーション・アングルの調整

次に、トランスミッテンス・ミン・ライトエレベーション・アングルについて説明します。
この設定は、太陽から放射される光の進行方向を調整する機能です。
例えば、視覚的な理解を深めるために、
Ctrl + Lキーを使用して太陽の位置を地平線近くに設定します。

ここからトランスミッテンス・ミン・ライトエレベーション・アングルの値を上げると、
白い光が増加し、地面に届く光が強まります。

エアリアル・パースペクティブ・スタートデプスの設定

最後に、エアリアル・パースペクティブ・スタートデプスについて触れます。
この項目は、空気遠近の計算を開始するためのカメラの位置を設定する役割を持っています。
適切な設定を行うことで、シーン全体の遠近感を調整することが可能です。

Exponential Height Fogの設定方法

次に紹介するのは、Exponential Height Fog(指数関数的高さフォグ)です。
この機能は、マップの低い位置でフォグをかけるための重要な設定です。

フォグの可視性と影響

カメラを少し上に移動させ、右側のアウトライナーの可視性をオフにすると、
以下のようにレベルの低い位置ではフォグがオフになり、シーンが暗くなります。

可視性を再びオンにすると、指数関数的高さフォグコンポーネントのフォグ密度を調整することで、
霧の濃さを変えることができます。
数値を低くするとシーンが濃くなり、高くすると霞んだように見えます。

フォグの高さとフォールオフ

フォグ高さフォールオフは、高さが下がるにつれてフォグを濃くする設定です。
この数値を低くすると全体にフォグがかかりすぎて景色が見えなくなり、
高くするとフォグが薄くなり、遠くの景色がはっきりと見えるようになります。

セカンドフォグデータの設定

セカンドフォグデータでは、△のマークを押すことでフォグの密度や高さに応じたフォグの濃度を調整できます。
デフォルトでは特に調整する必要はないため、あまりいじる機会はないでしょう。

フォグの色合いを調整する

フォグ・インスキャタリング・カラーでは、
カラーピッカーを使ってフォグの色合いを変更することができます。

黒のままで問題ありませんが、
例えば黒を白に設定して太陽の位置を変えた場合、以下のようになります。

この場合、太陽が沈んでもシーンが暗くならず、違和感のある印象を与えます。
デフォルトの黒に戻すには、右側の矢印を押してください。

スカイアトモスフェア・アンビエント・コントリビューション・カラースケール

この設定は、低い位置にあるフォグの色合いをカラーピッカーで変更する機能です。

フォグの不透明度の調整

フォグ・マックス・オパシティでは、フォグが濃い部分の不透明度を調整できます。
値を下げると透明になり、値を上げると不透明になります。

値を下げるとフォグが薄くなり、最終的には完全に透明になります。
透明状態ではフォグが存在しないのと同じため、低い位置が暗くなります。
デフォルト設定に戻すには矢印を押してください。

フォグのスタートディスタンス

スタートディスタンスでは、カメラの位置からどれくらい離れるとフォグが発生するかを調整します。

ボリュメトリック・フォグの有効化

次に、ボリュメトリック・フォグは、空気中のフォグを表現する機能です。
この機能にチェックを入れると、空気中にフォグがかかり、
有効にしていないときと比較すると全体が白っぽくなります。

光の散乱と色合いの調整

スキャタリング・ディストリビューションでは、フォグによって散乱する光の分布を調整します。
値を0にすると光が全方位に散乱しますが、見た目に違いはほとんどわからないでしょう。

アルベドではフォグの色を変化させることができ、
次のエミッシブではフォグの高さに応じて色合いを調整します。

最後に、エクスティンクト・スケールは、
フォグによって効果が弱まる光の強度を調整する機能です。この値を高めると、光が強くなります。

Volumetric Cloudの使い方と効果

次に紹介するのは、Volumetric Cloud(ボリューメトリッククラウド)です。

この機能は、シーンに本物のような雲を作成することができます。

Volumetric Cloudの可視性

まず、アウトライナーのVolumetric Cloudの可視性をオフにすると、雲が完全に消えます。

このように、シーンをリアルに表現するためには、
Volumetric Cloudが欠かせない機能であることが分かります。
再度、可視性をオンにしておきます。

その他のライト設定:ポイントライトの活用法

ここまで、主要なライトと大気について説明してきましたが、
今回はディレクショナル・ライトとスカイライト以外の3つのライトについて詳しく説明します。
まず最初に取り上げるのはポイントライトです。

ポイントライトの設置

ポイントライト(PointLight)を使用するには、
左上のアクタを配置から「ライト」→「ポイントライト」を選択し、

レベルにドラッグアンドドロップします。

ポイントライトは、電球の光や火などの球体状に照らす光です。

環境光の影響を確認

現在、シーンにはすでに環境光が設定されているため、全体が明るくなっています。
このため、ポイントライトを設置しても変化が感じられません。
そこで、右側の環境光の可視性をオフにし、ディレクショナルライトをオフにしておきましょう。

これにより、ポイントライトの有効範囲がはっきりと分かりますね。
ポイントライトを移動させると、光が当たっていないアクタは見えなくなることが確認できます。

ライトの調整

インテンシティ

ポイントライトのアクターを選択している状態で、右側アウトライナー下の詳細を見ていきます。

ライトの強さを調整することができます。
値を高くすることで光が強くなることが分かります。

ライトカラー

このポイントライトの色合いについては、ライトカラーをクリックして変更することができます。

クリックするとカラーホイールが表示されるので色合いを自由に変更可能です。

アテニュエーション・ラディウス

光の照らされる範囲を調整する項目です。値を大きくすると、光に照らされる範囲が広がります。

Source Radius

電球のサイズを変更する項目です。

以上がポイントライトの説明となります。
適切に設定することで、シーンにリアリティを加えることができます。

スポットライトの設定方法と特徴

ここでは、スポットライトについて詳しく説明します。
スポットライトは特定の場所を照らすための重要なライティングツールです。

スポットライトの設置

まず、アクタを配置から「ライト」を選択し、スポットライトをドラッグアンドドロップします。
※ 先ほどドラッグしたポイントライトは、可視性をオフにしておきましょう。

スポットライトは、一点からコーン(円錐)形状に光を放射するライトで、
スポットライトといえば、演劇などで使用されることが多いですね。

スポットライトの特徴

スポットライトは特定の場所を明るく照らすため、
回転ツールで方向を簡単に切り替えることができます。

ライトの調整

インテンシティ:スポットライトの強さを調整できます。

ライトカラー:スポットライトの色合いを変更することができます。

アテニュエーション・ラディウス:ライトが影響を与える範囲を設定します。
値を小さくすると、影響範囲も小さくなります。

コーンアングルの設定

インナーコーンアングル

スポットライトの内側のコーンの角度を設定します。
この範囲内で最大輝度を放ちます。

アウターコーンアングル

スポットライトの外側のコーンの角度を設定します。外側にいくにつれて光が弱くなるのが特徴です。

スポットライトの光を鮮明にする方法

スポットライトの光をはっきりとさせたい場合は、
インナーコーンアングルをアウターコーンアングルにピッタリ合わせることで、
綺麗な光の表現が可能になります。

以上でスポットライトの説明は終了です。
スポットライトをうまく活用することで、シーンの魅力を引き出すことができます。

矩形ライト(レクトライト)の使い方と特徴

ここでは、矩形ライト(レクトライト)について詳しく見ていきます。
矩形ライトは、特に特定のシーンでの照明表現に非常に役立つツールです。

矩形ライトの設置

まず、アクタを配置から「ライト」を選択し、レクトライトをドラッグアンドドロップします。

「レクト」は直訳すると「長方形」を意味し、矩形ライトとも呼ばれます。
先ほどドラッグしたスポットライトは可視性をオフにしておきましょう。

矩形ライトの特性

矩形ライトは、テレビや暗がりの部屋に窓から差し込む光などを表現するのに非常に効果的です。
回転ツールに切り替えることで、光の方向を簡単に変えることもできます。

ライトの調整

矩形ライトの設定項目について、以下のように調整できます。

インテンシティ

光の強さを調整します。

ライトカラー

ライトの色合いを変更することができます。

アテニュエーション・ラディウス

ライトが影響を与える範囲を設定します。

矩形ライトの幅と高さの調整

ソースワイド

長方形の幅を調整します。

ソースハイト

長方形の高さを調整します。

以上が、環境光以外の主なライトとなります。

Discussion