この記事の3行まとめ
- スパーククリエイティブ、UEで影の描画を最適化する手法をブログ記事で解説
- 影を描画するメッシュのみLODを適用する機能を、エンジン改造で実装する手法を紹介している
- エンジン改造にあたり記述したコードはGithubにて公開中
スパーククリエイティブは2025年7月10日(木)、「【UE5】影のLODを最低値にするエンジン改造」と題した記事を、同社の技術ブログにて公開しました。
ブログでは、アンリアルエンジン(以下、UE)で影の描画負荷を軽減する手法を紹介。影の描画に用いるメッシュのみLODを適用させる機能をエンジン改造で実装する方法を解説しています。
動作環境はUE5.6を想定。なお、UE5.4においても動作確認済とのこと。
(画像はブログ記事より引用)
UEでは通常、影の描画計算に用いるメッシュのみをLOD(Level of Detail)で差し替えることはできません。
記事ではその代替策として、本体メッシュと影の描画用のメッシュを重ねて配置することで、影用のメッシュのみLODを適用させる手法を紹介。
しかしこの手法では、プリミティブの増加に伴い処理負荷やヒューマンエラーが発生しやすいデメリットがあることも指摘しています。
同じコンクリート板のメッシュについて、LOD0の状態(画像左)と、影の描画処理に関してのみLOD3とした状態(画像右)の比較(画像はブログ記事より引用)
手動で2種類のメッシュを配置することなく影の描画処理のみ軽減する方法として、記事ではエンジン改造でコンポーネントにフラグを追加し、影の描画に関してのみLODを行う機能を実装しています。
StaticMeshComponentに「Shadow Force Min LOD」フラグが追加されている(画像はブログ記事より引用)
フラグ適用前(画像左)とフラグ適用後(画像右)の見た目の違い(画像はブログ記事より引用)
エンジン改造にあたり記述したコードはGithubにて公開されています。ただし閲覧・利用の際は、UEのエンドユーザーライセンス契約(EULA)に同意の上、Epic GamesアカウントとGithubアカウントの連携が必要です。
詳しくは、ブログ記事本文をご確認ください。
『【UE5】影のLODを最低値にするエンジン改造』スパーククリエイティブ技術ブログ