直進し、反射し、屈折する、この世で最も速いもの。本記事は、Unreal Engine 5(以降、Unreal EngineはUEと表記)における光――「ライティング」に関する機能を解説します。ライティングの基本やUE 5.1の新機能を押さえ、空間の見え方を操ってみましょう。
環境アセット『Opera House Kit』を使ってライティングのコツをつかもう!ライティングの基本概念や5種類あるライトのほか、UE 5.1からの新機能「ライトミキサー」についても解説!
TEXT / wvigler
EDIT / 神谷 優斗、酒井 理恵
目次
今回使用するアセットを紹介
『Opera House Kit』はフォトリアルスタイルのオペラハウスの環境アセットです。巨大な天井画や美麗な彫刻からシャンデリア・椅子・ピアノ・マイク・舞台裏の様子まで、きらびやかなオペラハウスの内装が再現されています。
『Opera House Kit』ダウンロードページいくつかのプロップはモジュール式になっており、高いカスタマイズ性も持ち合わせています。
今回はこのアセットを使って、UE 5におけるライティングの基礎を解説します。
加えて、今回はフォトリアルスタイルの二階建て住宅の環境アセット『Modern House』を併せて使用します。
『Modern House』ダウンロードページアセットを使う前の事前準備
今回使用するアセットは、2つともプロジェクトに追加するタイプです。
まずは追加先となるのプロジェクトを作成しましょう。テンプレートを使用せずに、空のプロジェクトを作成します。
次に『Opera House Kit』と『Modern House』のマーケットプレイスページに移動し、購入手続き(※)を済ませた上で「プロジェクトに追加」ボタンからプロジェクトにアセットをインストールします。
※ 2023年3月の無料マーケットプレイスコンテンツ適用期間中は無料でダウンロードできます
インストールが終わると、コンテンツドロワー上で「コンテンツ」フォルダの下に「OperaHouse」「ModernHouse」という2つのフォルダがあることが確認できます。
これでアセットを利用する準備が終わりました。
コンテンツ\OperaHouse\Mapsの「Demonstration」が『Opera House Kit』のデモマップとなっています。まずはこのマップを開きましょう。
このマップはかなり暗め(※)に作られています。
※この記事では、「エンジンの拡張機能設定」のすべての品質が、初期設定の「Epic」であることを前提としています。それ以外に設定している場合は、記事中の画像と見た目が異なります
ムービーに使用するなど、雰囲気を重視する場合はこの暗さでも構いませんが、今回は操作のしやすさを重視して明るさを上げましょう。
暗さの原因となっているのは、ポストプロセスの自動露出機能です。マップ上のポストプロセスボリュームを選択しましょう。
wvigler
ポストプロセスボリュームの基本的な扱い方に関しては、過去の記事で紹介しています。
詳細パネルを見ると、Exposureカテゴリの「Min EV100」が「0.1」になっています。これはシーンの明るさに制限をかけるためのパラメータです。これを「-3.0」程度に調節すると、適切な明るさになります。
豆知識:レンズフレアについて
なお、このマップでシャンデリアなどの光源に近づくと、キラキラとした6角形のエフェクトが確認できます。
これは、レンズフレアというポストプロセスエフェクトで、カメラレンズに光が当たった時の屈折現象を再現しています。かなり派手なエフェクトなので、見た目の確認などの時にはわずらわしく感じるかもしれません。
レンズフレア効果を切る場合は、ポストプロセスボリュームの詳細パネルから、Lens Flares→「強度」の数値を「0.0」にしましょう。
「ライティング」について知ろう
「ライティング」とは、光の位置や方向、強さ、色などを調整することにより空間の見え方を変えることです。
UE 5のライティング機能に触れる前に、ライティングの重要な概念をいくつか把握しておきましょう。
ライト(光源)から直接物体に届く光を「直接光」と呼びます。直接光の当たらない部分は「シェード(陰)」、物体によって光が遮られた部分は「シャドウ(影)」と呼ばれます。
また、物体から反射して届く光など、直接光以外の光は「環境光(間接光)」と呼ばれます。シェードやシャドウとなった部分も、環境光があればぼんやりと照らされます。
「光源」「直接光」「環境光」「シェード(陰)」「シャドウ(影)」それぞれの要素について把握できたら、次は「Demonstration」のマップ上で、UE 5のライト機能をひとつずつ紹介していきます。
5つの基本ライトを使ってみよう
ライティングの重要な概念を押さえられたところで「Demonstration」のマップの話に戻ります。マップにUE 5の各種ライトを設置して、それぞれがどのような特徴を持つのか確認していきましょう。
Point Light
最初は「Point Light」を試してみます。左上のコンテンツ追加ボタンを押し、ドロップダウンメニューの「ライト」カテゴリにカーソルを合わせます。上から2番目の「Point Light」をドラッグ&ドロップして舞台上に設置しましょう。
Point Lightは日本語で「点光源」と呼ばれる光源で、中心から放射状に光を発します。
設置したPoint Lightを選択すると、詳細パネルから光源に関するパラメータを調整することができます。以下のパラメータを操作してみましょう。
「Source Radius」を変更した際の影響が分かりにくいかもしれません。光源を大きくすると、ある場所に対してより多くの方向から光が当たるようになるため、シャドウの縁がぼやけ、全体的に柔らかい印象のライトになります。
Spot Light
続いて「Spot Light」です。Point Lightを消して、コンテンツ追加ボタンからSpot Lightをドラッグ&ドロップします。Spot Lightはデフォルトで下側を照らしているため、確認しやすいよう少し地面から離して設置しましょう。
Spot Lightは文字通りスポットライトのような形状の光で、Point Lightと同様、使用頻度の高いライトです。ライティングの影響範囲を狭くできるのを生かし、他のライティングになるべく影響を与えずに特定の場所を目立たせるためなどに使用します。
Spot Lightは、Point Lightの紹介時に取り上げたパラメータに加え、「Inner Cone Angle」と「Outer Cone Angle」によって光の最も強い範囲と光の影響範囲を設定できます。
Rect Light
「Rect Light(矩形ライト)」は窓ガラスや蛍光灯のような、四角い光源を表現するライトです。同様に舞台上へ設置しましょう。
このライトには、光源となる四角の大きさや光の方向性などがパラメータとして用意されています。
Directional Light
「Directional Light」は基本的に太陽光の表現に使います。光源が地上から非常に離れていることが太陽光の特殊な点です。点光源であっても、光源があまりにも遠く巨大である場合、どこにいても平行に降り注ぐものとして扱えます。
同様にDirectional Lightは光源となる1点を持たず、無限の彼方から降り注ぐ1方向の光として処理されます。マップ上の位置にはライティング的な意味はなく、方向によってのみ光が変化します。
通常のライトと異なり、太陽光が2つあることは基本的に考えられないため、Directional Lightを複数置くのはあまり好ましくありません。このマップにはDirectional Lightがすでに存在しているため、それを編集しましょう。
編集による変化を確認しやすくするため、Directional Lightがホール内に降り注ぐようにします。ホールの天井を突き抜けて更に上に向かい、太陽光を遮る木製の蓋のようなメッシュ(SM_FloorTile98)を取り払います。
その後、Directional Lightの方向を変えると、陽光の入る角度が変わるのが確認できます。
また、このライトは「Light Shaft Bloom」などのパラメータを操作することで、「ライトシャフト」という視覚効果を比較的簡単に使うことができます。
確認が終わったら、再び蓋をして元に戻しておきましょう。
なお、Directional Lightは屋外の環境では非常に重要なライトですが、密閉した室内では後述する「スカイライト漏れ」に関する機能以外ほとんど影響しません。
Sky Light
最後にSky Lightです。これは今まで紹介したライトのように「直接光」を扱うのではなく「環境光」を扱うライトです。
Directional Light同様、Sky Lightもすでにマップに配置されており、2つ存在する意味があまりないため既存のものを編集します。
Sky LightはDirectional Lightに対する環境光を表現するため、光の入らない密閉された空間では基本的に機能しません。とはいえ、この豪華な天井を外してしまってはホール全体の雰囲気が台無しです。
「密閉空間は維持したい」かつ「Sky Lightを機能させたい」という、2つのジレンマを解決するには、UE 5.1から追加された「スカイライト漏れ」という機能を使用します。ポストプロセスボリュームを選択して、詳細パネルから「スカイライト漏れ」の項目を探し、チェックを入れてから数値を入力しましょう。
これだけでSky Lightが働き始め、画面の暗くなっている部分が明るく持ち上がります。
以上で、UE 5のライティング機能の基本となる5つのライトを紹介しました。
UE 5ではこれらに「Lumen」によるグローバルイルミネーションの効果も加わります。詳しい解説は、ドキュメントをご覧ください。
wvigler
Lumenのグローバルイルミネーションを無効化するには、ポストプロセスボリュームのグローバルイルミネーション→メソッドの部分を「Lumen」から「None」に変更します。すぐにもとに戻せるので、試しにどんな感じになるか見てみましょう。
豆知識:UE 5.1からの新機能「ライトミキサー」を使ってみよう
UE 5.1から、ライティングの調整を効率よく行える機能「ライトミキサー」が加わりました。
ライトミキサーウィンドウは右上の「ウィンドウ」ドロップダウンメニューから「ライトミキサー」をクリックすることで出すことができます。
ライトミキサーウィンドウには、マップ上に存在するすべてのライトが一覧表示されます。マップやアウトライナーからわざわざ選択せずとも、まとめて「Attenuation Radius」「Intensity」「Light Color」「Lighting Channels」といったパラメータを変更可能です。
5つのライトを自在に操作できるようになると、UE 5でライティングを作り出す基礎は揃ったといえます。
以前記事で取り上げたポストプロセスなどを組み合わせ、より魅力的な画作りに挑戦してみましょう。
発展編:UE 4用のライティングをUE 5用に修正しよう
ここからは発展編です。もう一つのアセット「Modern House」のデモマップを開きましょう。コンテンツ\ModernHouse\Mapsにある「DemoMap」をダブルクリックします。
ライティングがのっぺりしており、左上にも警告が出ていることからもわかるように、このマップはライティングにいくつか問題を抱えています。
このアセットはUE 4用に制作された環境アセットであり、ライティングがUE 5用に調整されていません。
この章では、UE 5用のライティングではない環境アセットを、UE 5用に調整し直す方法を紹介します。
平面反射機能を有効にする
まずは、左上に出ている警告に対処しましょう。
この警告は、マップで反射のリアリティを増す機能「平面反射」を使っているにもかかわらず、プロジェクト設定で平面反射が有効になっていないことを示しています。プロジェクト設定からエンジン→レンダリング→反射→「平面反射のグローバルクリッププレーンをサポート」にチェックを入れ、エンジンを再起動しましょう。
再び「DemoMap」を開くと、警告が消えます。
全てのライトの「可動性」を「ムーバブル」に設定する
このアセットにおいて、室内が暗すぎでライティングがのっぺりしている主な原因は、マップにあるほとんどのライトの「可動性」という項目が「スタティック」になっている点にあります。
Lumenでは基本的に「ムーバブル」のライトを想定しており、「スタティック」はサポートしていません。このマップにある、すべてのDirectional Light、Rect Light、Sky Lightを「ムーバブル」に変更しましょう。
変更前に比べ、くっきりとした陰影が表示されています。室内にも自然な形で光が射すようになり、見やすくなりました。
さらにLumenの力を引き出すためには、メッシュ形状を単純な形に分割して最適化するなどの手法がありますが、メッシュ自体を変更する必要があるため今回は行いません。
Lumenが有効になっている場合、基本的にライトは「ムーバブル」に設定しておいて問題ない、ということを覚えておきましょう。
設置されている「BP_SkySphere」を消し、UE 5の新しい空を作る
屋外では空や雲のほか、霧や「もや」といったフォグなども大きくライティングに影響する要素です。このマップでは空を表現するための天球として「BP_SkySphere」が使われています。これはUE 4のテンプレートで使われていた標準的な天球です。
UE 5でもBP_SkySphereはまだ現役であり、手軽に空を表現する目的においては決して悪い選択肢ではありません。しかし、UE 5のテンプレートプロジェクトでは、空を表現するのに別の方法が使われています。この章ではBP_SkySphereの代わりに、UE 5で使用される空の表現方法を紹介します。
まずは空をクリックしてBP_SkySphereを選択し、Deleteキーで削除します。
代わりにコンテンツ追加ボタンから3つのアクタを追加します。大気や空を表現する「Sky Atmosphere」、雲を表現する「Volumetric Cloud」、そしてフォグを表現する「Exponential Height Fog」をマップの任意の場所に置きましょう。
以上の手順で、ほぼ違和感のない空が表現できます。
この方法の利点は、描写リアリティが高く、変更できるパラメータが多い点にあります。空・雲・フォグの3つの項目について、描写の詳細さ、空の色、雲の量や高さなどを細かく調整可能です。
フォグは、前述した「ライトシャフト」効果にも関係します。「Volumetric Fog」という機能により、Directional Lightのライトシャフトを強化するとともに、Directional Light以外のライトにもライトシャフト効果を適用することができます。詳しくは、Volumetric Fogに関するドキュメントをご確認ください。
これで、UE 5のライティング機能を使った、基本的な表現が扱えるようになりました。手軽に追加でき、デフォルトでもかなり綺麗なライティングが実現できるアンリアルエンジンのライトは大きな魅力の1つです。「光」の魔術を自由自在に操り、さまざまな表現に活用してみましょう。
アンリアルエンジンにハマり、ぷちコンでゲーム作ってた男。映像編で2連覇したことも。
昔はよくアーケードゲームとかやってました。
一番やり込んだのは「ケツイ ~絆地獄たち~」「戦国BASARAX」あたり。ローグライトゲームとかも好きです。
関連記事
注目記事ランキング
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
連載・特集ピックアップ
西川善司が語る“ゲームの仕組み”の記事をまとめました。
Blenderを初めて使う人に向けたチュートリアル記事。モデル制作からUE5へのインポートまで幅広く解説。
アークライトの野澤 邦仁(のざわ くにひと)氏が、ボードゲームの企画から制作・出展方法まで解説。
ゲーム制作の定番ツールやイベント情報をまとめました。
東京ゲームショウ2024で展示された作品のプレイレポートやインタビューをまとめました。
CEDEC2024で行われた講演レポートをまとめました。
BitSummitで展示された作品のプレイレポートをまとめました。
ゲームメーカーズ スクランブル2024で行われた講演のアーカイブ動画・スライドをまとめました。
CEDEC2023で行われた講演レポートをまとめました。
東京ゲームショウ2023で展示された作品のプレイレポートやインタビューをまとめました。
UNREAL FEST 2023で行われた講演レポートをまとめました。
BitSummitで展示された作品のプレイレポートをまとめました。
ゲームメーカーズ スクランブルで行われた講演のアーカイブ動画・スライドをまとめました。
UNREAL FEST 2022で行われた講演レポートやインタビューをまとめました。
CEDEC2022で行われた講演レポートをまとめました。