MegaLightsは、UE5.5で実験的機能としてリリースされた新しい機能です。
従来よりパフォーマンスを低下させずに動的なライトを大量に配置でき、影を落とすことができる革新的な機能です!
間接光にフォーカスしたLumenと直接光にフォーカスしたMegaLightsを使用することで、パフォーマンスを落とさずにリアルなライティイングをリアルタイムに行うことができます。
また、ハイスペックなPCのみではなく、あらゆるプラットフォームで利用できるよう開発が進んでいます。
この記事では、MegaLightsの概要や使い方、従来のライティングとのパフォーマンスの比較などをご紹介します!
MegaLights とは?

端的に言うと、(従来より)パフォーマンスを落とさずに大量のライトを置くことができる機能です。
Lumenが登場し、リアルタイムで間接光を計算できるようにクオリティの高いライティングは可能になりました。
それでも、ライトを大量に置くと重くはなるので、ライトを減らしたり、影を非表示にしたりなどのライティングの最適化が必要でした。
しかし、大幅なパフォーマンスの低下なしにMegaLightsによって数百などのライトを置けるようになりました。
つまり、デザイナー、アーティストはより自由にライティングができるようになりました!
エリアライトは比較的重いライトですが、MegaLightsでは、エリアライトを大量に置いて、影を落とすことができます。
MegaLights の使い方

使い方はとても簡単です。
プロジェクト設定→レンダリング→「MegaLights」を有効にするだけで利用できます。
また、「ハードウェアレイトレーシングをサポートする」もMegaLightsの(現状)推奨設定です。
再起動なしにオン、オフすることができます。

また、ポストプロセスボリュームからオン、オフすることもできます。

ポストプロセスボリュームについては、こちらで詳しく紹介しています。
MegaLightsでは、レイトレースシャドウを利用することで、影がボケ、よりリアルな影を表現することができます。
デフォルトでは、レイトレースシャドウが使用されています


ライトごとにMegaLightsのオン、オフも可能です。

また、Lighting Channelでは、シャドウイングの方法を選択することができます。
レイトレース:デフォルトの設定で、Virtual Shadow Mapより軽いのがメリットですが、影の生成に簡略化されたメッシュ(フォールバックメッシュ)を使用するので、影が欠けたり、遠景で消えたりすることがあるので調整する必要があることがあります。
Virtual Shadow Map: レイトレースより高品質な影を生成できますが、処理負荷が増えます。部分的に使用するのがおすすめです。
パフォーマンスの比較
ライトの数やMegaLightsのあり、なしでパフォーマンスを比較してみました。
まず、MegaLightsオフでエリアライトを100個置いてみました。
この時点で私の環境では、約22fpsでした。

次に同じシーンでMegaLightsを有効にすると約67fpsまで向上しました!

次にライトを複製して、300に増やしてみました。
MegaLightsなしでは、約9fpsとカメラ操作もしづらい状態です。

MegaLightsありでは、58fpsでした。
こちらも低下しているものの60fps近い値を出しています!

ライトを増やしてもパフォーマンスが全く落ちないわけではないですが、MegaLightsのありなしでは、かなりパフォーマンスに違いがあります。
最後に

UE5.5で登場したMegaLightsについてご紹介しました。
UE5でLumenという革新的な機能が登場しましたが、MegaLightsが登場したことで、よりパフォーマンスを気にせずにライティングをすることができるようになりました!
パフォーマンスの比較でも示した通り、パフォーマンスの違いは一目瞭然です。
まだ実験的機能なので開発中の機能ですが、これからの改善や機能強化が楽しみです!
公式ドキュメントも既に公開されています。
また、Epic Gamesのスミオさんのポストも参考になるので、詳細な技術的な情報がほしい場合は、チェックしておくと良いでしょう!(Lumenなどレンダリング周りの技術的な話をたくさんされています!)
このサイトでは、こういったゲームエンジンに関連した情報やUE5の使い方やチュートリアルなどを発信しています。
【UE5の使い方】シリーズでは、Unreal Engine5の使い方をUE4、UE5を使ったことのない方にもわかるようにUE5の基本的な使い方を解説しています。
コメント