この記事の3行まとめ
- SPARK CREATIVE、「【UE5】多光源でドキドキセルルック – Unreal Engine 5.4」と題した記事を公開
- 複数光源がある環境においてセルルック表現を行う手法を解説
- ライトカラーの正規化による白飛びの抑制など、複数光源によって発生する問題への対処法を紹介している
スパーククリエイティブは、2025年5月8日(木)、「【UE5】多光源でドキドキセルルック – Unreal Engine 5.4」と題した記事を、同社の技術ブログにて公開しました。
Unreal Engine 5.4において、複数光源がある環境下でセルルック表現を行う手法について解説しています。
(画像はブログ記事より引用)
一般的なセルルック表現における影は、いくつかの階調で表現されます。
記事によると、ほとんどのセルルック表現で最大3諧調の影になっているとのこと(画像はブログ記事より引用)
しかし、ディファードレンダリング環境で多くの光源を使用した場合、配置されたライトは加算形式で反映されていきます。
そのため、同じ場所にライトが2つ以上当たる場合「はっきり分かれた階調が維持できなくなる」「白飛びする」など仕様上の不具合が発生してしまいます。
ディレクショナルライトとピンク・水色のポイントライトを配置した様子。はっきりした階調が維持できず、グラデーションになった影が落ちている(画像はブログ記事より引用)
記事では、これらの不具合を抑制する方法を解説しています。なお、今回行ったのはあくまで技術検証であり、実運用を想定した処理負荷の最適化などは行っていないとのこと。
白飛びについては、ライトカラーの正規化で対応。エンジン改造を行い、ピクセルごとに照射されるライトカラーの最大値を取得し正規化することで、複数のライトに照らされた場所でも色味が保たれます。
正規化前(画像左)と正規化後(画像右)(画像はブログ記事より引用)
そのほか、記事では階調が維持できなくなる問題への対処法についても解説しています。
詳細は、ブログ記事をご確認ください。
【UE5】多光源でドキドキセルルック - Unreal Engine 5.4