パッケージ
鳴潮公式サイトへ
レビューを書く
準備中
鳴潮
お気に入りタイトル/ワード

タイトル/ワード名

最近記事を読んだタイトル/ワード

タイトル/ワード名

LINEで4Gamerアカウントを登録
「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]
特集記事一覧
注目のレビュー
注目のムービー

メディアパートナー

印刷2025/11/19 17:01

イベント

「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 KURO GAMESのオープンワールドRPG「鳴潮」PC / Mac / PS5 / iOS / Android)は,アニメ調の美しいビジュアルが魅力の1つの作品だ。
 2025年2月13日に配信されたVer.2.1「鳥さえずり 波唄う」で,PC向けにレイトレーシング機能が登場した。光の多彩な表現で,より美しく豊かな世界を作り出した。



 そんな美しい世界はどのように構築されているのか。鳴潮のプロジェクトは,UE4を前提に制作されており,安定性の面からゲームエンジンを変更することは難しい。
 UE4.26のまま,UE5の機能を検証し,自前で取り込むなど,ゲームエンジンの改良も含む大がかりな作業が行われたという。

 2025年11月15日に開催されたエピック ゲームズ ジャパン主催の大型勉強会「Unreal Fest Tokyo 2025」のDay2にて,鳴潮のレイトレーシングにおける技術選定や最適化など,舞台裏を紹介する講演が実施されたので,そのレポートをお届けする。

『鳴潮』におけるレイトレーシング:光で描くアニメ風オープンワールド
王鑫(Wang Xin)氏:KURO GAMES「鳴潮」レンダリングチーム リーダー
画像ギャラリー No.056のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 本講演は,鳴潮におけるレイトレーシング技術を基礎,実装,最適化の流れで解説する構成であった。
 技術面の密度の高い内容のため,本記事では講演の内容をできる限りかみ砕いて紹介していく。

画像ギャラリー No.003のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


一般的なレンダリングの流れを整理する


 そもそも,レイトレーシングとはどのような処理なのか。レイトレーシングは,3DCGを2D画像として描画するためのレンダリング手法の1つである。

 ゲームなどのリアルタイムグラフィックス分野では,処理速度などの観点から長らくラスタライズという手法が採用されてきた。近年は,ハードウェアの性能向上により,より高品質な表現ができるレイトレーシングの導入が進んでいる。

画像ギャラリー No.004のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 ラスタライズは,カメラから見えるポリゴン(講演では,三角形/triangleと表現されていたが,本記事ではポリゴンと称する)をスクリーン座標に投影し,そのポリゴンが覆うピクセルを判定して塗りつぶす(シェーディングする)手法だ。見える範囲を中心に処理するので,効率がいい。

 レイトレーシングは,スクリーン上の各ピクセルから光線を飛ばし,シーン全体を探索してどのポリゴンに当たるかを調べ,取得した情報をもとにピクセルを描画する。
 どちらも最終的な目的は,ピクセルの色や明るさを求めてシェーディングし,ゲーム画面としてレンダリング(実際にモニターに出力する画像を生成)する点で共通している。

 ラスタライズ手法の流れは,アプリケーションからの入力を受け取り,頂点シェーダーを通じて,ラスタライズ処理をして,ピクセルシェーダーに進み,最終的にフレームバッファへ出力する。

ラスタライズのパイプライン
画像ギャラリー No.005のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 一方,レイトレーシングでは,光線を飛ばし,当たり判定を含む各段階でシェーダーが実行される。

 Wang氏は,DirectX Raytracing(DXR)を例に説明した。光線を発射し,BVH(Bounding Volume Hierarchy,衝突判定を高速化するための階層型データ構造)を光線が探索する。
 光線が何かと当たるたびに,Intersectionシェーダー(交差判定)と,Any Hitシェーダー(ヒット時の処理)が実行される。

レイトレーシングのパイプライン。DXR(DirectX Raytracing)を例に挙げている
画像ギャラリー No.006のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 このとき,ヒットを受理する場合,Closest Hitシェーダー(もっとも近い交点の処理)へ進む。何にも当たらなかった場合は,Missシェーダー(ヒットなしの処理)へ進む。
 また,光線には,ペイロード(シェーダー間で情報を受け渡すためのデータ領域)が付属しているので,色や深度といった値を必要に応じてやり取りできる。

 Wang氏は,現在市販されているゲームの多くは,この2つのパイプラインを組み合わせたハイブリッド型を採用していると説明した。

画像ギャラリー No.007のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 まず,ラスタライズで通常の描画を行い,G-Buffer(オブジェクトの情報を含む描画関連のデータを一時的に保存するバッファ)を生成。そのG-Bufferを参照しつつ,間接照明や反射,影などをレイトレーシングで計算し,最終的にライティング段階で統合するという仕組みだ。


鳴潮におけるレイトレーシング表現


 レイトレーシングにおける全般的な説明のあと,Wang氏は,鳴潮がレイトレーシングでどのような表現を実現したのか紹介した。

 まず,レイトレーシングは,反射,グローバルイルミネーション(間接光),影という3つの領域でもっとも効果を発揮し,ゲーム全体の質感を大きく向上できる。

画像ギャラリー No.008のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 実際に有効/無効を切り替えたスクリーンショットを確認すると,細部の表現が非常に豊かになっているのが分かる。

 画面外のオブジェクトまで映り込む水面の反射,柔らかな間接光による自然な立体感,従来のリアルタイム手法では難しい細部の影など,細部の質感が大きく異なり,全体を見比べても印象が変わる。

画像ギャラリー No.009のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]
画像ギャラリー No.010のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]
(左)レイトレーシングなし /(右)レイトレーシングあり
画像ギャラリー No.011のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

画像ギャラリー No.012のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]
レイトレーシングなし
画像ギャラリー No.013のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]
レイトレーシングあり

 しかし,レイトレーシングでグラフィックスの品質は上がるが,鳴潮への実装にはいくつもの技術的なハードルがあったという。

 まず,UE4.26を継続的に利用することだ。鳴潮はリリース済みの長期運営型タイトルなので,安定性が一番重要となる。
 プロジェクト開始時期から,膨大なアセットがUE4を前提に制作されており,現時点でUE5に移行するのは困難である。

画像ギャラリー No.014のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,鳴潮は,32km×32km超の広大なオープンワールドマップで,時間帯の変化やキャラクターの高速移動によって,光源や影が常に変化する特徴を持つ。
 マップが大きいことでレイトレーシングの計算量は多くなるほか,光源や影が変化するので間接光は事前計算に頼るのが難しい。
 カメラも激しく動くので,ノイズが生まれやすい。

 そのうえ,アニメ調のスタイルも維持したい。レイトレーシングはリアル寄りの表現なので,どう融合させるかも課題となった。

 これらの要件を満たした上で,GeForce RTX 4060の環境において,2K/60fpsを実現することが技術的な最終目標となった。

画像ギャラリー No.015のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


レイトレーシング実現に向けた技術検証


■検証(1):ReSTIR

 まず,検証されたのは,ReSTIR(Reservoir Spatial-Temporal Importance Resampling)という手法だ。すべての光線を計算するのは非常に計算コストが高いので,少ない光線の数で計算したい。そこで,光線のサンプリング効率を高める技術である。

画像ギャラリー No.016のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 光線サンプルを生成し,前フレームの結果から良いサンプルを引き継ぎ,周囲のピクセルサンプルも参照して,品質の良いものを残し,結果的に残ったサンプルをもとにライティングを計算するという流れで処理を行う。

 ReSTIR関連技術として,SHaRC(Spatially Hashed Radiance Cache)や,NRD(NVIDIA Real-time Denoising)も紹介された。

 SHaRCは,レイトレーシングで,光線が反射を繰り返す際に,各反射で放射輝度を計算する必要があり,計算量が指数的に増える問題を解決するための手法である。
 空間をグリッド上にハッシュ分割して,その場所の放射輝度をキャッシュに保存することで,毎回計算し直すのを防ぐ。

 NRDは,NVIDIA製のノイズデノイザーで,過去サンプルや周辺ピクセルなどの情報をもとに,ReSTIRの結果からノイズを除去するものである。
 ReSTIRで効率的に光線の計算を行い,SHaRCで計算量の肥大化を防ぎ,NRDでノイズを除去するという構成の処理が検証された。

画像ギャラリー No.017のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 Wang氏は,ReSTIRについて,実装が比較的簡単で,光漏れ(本来光が届かない場所に光が表示されてしまう現象)も起きにくいメリットを説明したうえで,非常にすぐれた手法であるが,完璧ではないと続けた。

 とくに,遠方や輪郭部分,動きのあるピクセルで高周波ノイズが出やすい傾向がある点や,過去フレームなどを参照する仕組み上,メモリの読み書きの回数も多くなり,負荷が高くなりやすい課題がある。

画像ギャラリー No.018のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 RTX 4060環境下で,2K解像度で,ReSTIR処理で5msから10ms程度,NRD処理で3msから4ms程度の処理時間がかかってしまったという。


■検証(2):Lumen

 次に検証されたのが,Lumenだ。UE5に標準搭載されているグローバルイルミネーション機能で,事前計算が必要だった処理をリアルタイムに処理できる。

画像ギャラリー No.019のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 Lumenは,ソフトウェアレイトレーシングとハードウェアレイトレーシングの両方に対応している。

 ハードウェアレイトレーシングとは,レイトレーシング専用のコアを持つGPUを対象にした機能だ。
 ソフトウェアレイトレーシングで必要な処理を省くことができるため,鳴潮では,ハードウェアレイトレーシングのLumen(以下,本記事におけるLumenは,基本的にハードウェアレイトレーシングのものを指す)を分析し,それを再構築してUE4.26へ機能を移植できるか,検討することにした。

 Lumenの機能を実現するには,Screen Probe GatherやRadiance Cache,Reflectionsなどが必要になる。
 Wang氏は,これらの移植作業について順に説明した。

・画面上に映る範囲のレイトレーシング

 まず,Screen Probe Gatherについてだ。
 Lumenは,特定の地点で光が来る方向や強度などの情報を記録するScreen Probeを多数動的に配置して,シーンを間接光で照らす。
 Probeは,光の情報をOctahedral Mapという形式で保存する。これは,球面を八面体に分割し,効率的に2Dのテクスチャにする仕組みである。

画像ギャラリー No.020のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 Probeはグリッド上に配置するが,細かい枝や凹凸が多い場所では,光の遮蔽が複雑になるため,誤差が目立ってしまう。ここで,補間誤差が大きくなったProbeを細分化して再計算する手法が,Adaptive Probe Placementである。
 これにより,間接光の破綻を防ぐことができる。

木の枝のように細かい形状では誤差が大きくなるので,Probeを細かく配置して誤差を減らす。ベースは16x16の間隔だが,場合によっては8x8や4x4の間隔の細かいグリッドを部分的に配置する
画像ギャラリー No.021のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,光線のサンプリングについては,Structure Importance Samplingという仕組みを採用している。
 BRDF(双方向反射率分布関数,材質による反射の特性)や前フレームの光の分布をもとに,明るくなる方向ではサンプルの数を増やし,光があまり来ない方ではサンプル数を減らすことで,光線を効率的に割り振ることができる。

画像ギャラリー No.022のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 ノイズの軽減では,Spatial(空間方向)とTemporal(時間方向)で再利用(reuse)を行う。
 周囲のProbeの情報を参照してサンプルの質を向上させ,過去フレームの結果も混ぜ合わせることでノイズを軽減する。

画像ギャラリー No.023のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 最終的に得られたProbe情報は,SH(Spherical Harmonics,
球面調和関数)と呼ばれる手法で近似し,圧縮して保存する。
 360度全方位における光の分布を,低周波成分から抜き出すようなイメージである。
 この最終的にSHに圧縮した情報をもとに,間接光を反映する流れだ。

画像ギャラリー No.024のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

・ワールド(空間)全体のレイトレーシング

 カメラが見ている場所に動的に配置するProbeの説明が行われたあと,ワールド全体に配置するRadiance Cache Probeについても紹介された。

 画面に映っているオブジェクトは,画面外のオブジェクトや光の影響も受ける。画面外から来る光や反射まで正確に計算しようとすると,広範囲にレイを飛ばす必要があり,計算負荷が高くなる。

 そこで,Radiance Cacheでは,ワールド全体に多数のProbeを固定配置して,光情報をキャッシュしておく。各Probeは,32x32ピクセルのテクスチャ情報として光を保存する。

画像ギャラリー No.025のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 Screen ProbeとRadiance Cache Probeは配置間隔や位置も異なるので,光線の角度が一致しない。これらを繋ぐためには,視差補正も必要となる。

画像ギャラリー No.026のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 Wang氏は,Radiance Cacheの役割を,主に「遠距離トレースのコストを削減する」「不安定な輝点によって発生するノイズを軽減する」という2点で説明した。

画像ギャラリー No.027のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 Screen Probeのその場で計算する仕組みと,Radiance Cacheの光情報を事前計算しておく仕組みをつなぎ合わせることで,安定させているのだ。

・反射

 続いて,反射処理について説明が行われた。金属や鏡などで,周囲のオブジェクトが映り込む自然現象をシミュレーションするものだ。

 まず最初に,すでに描画されている2D空間をベースに,深度情報などから反射を計算するScreen Space Traceを実行する。
 ここで反射先が見つからなかったピクセルについては,レイトレーシングで3D空間を探索する構成になっているという。

画像ギャラリー No.028のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 反射のレイトレーシング処理は,マテリアルIDやTwo Sided(両面マテリアル設定),Translucency(透過設定)など一部の情報の取得に絞った軽量なトレースを実行。取得したマテリアル情報をもとにソート処理を行う。
 ソートについて,Wang氏は,処理のばらつきを減らすため,だと説明した。分岐を抑えて負荷を減らし,安定性を高める狙いがあるようだ。

 その後は,Radiance Cacheを活用しつつ,Probeで行ったノイズ軽減と同様に,空間方向と時間方向で補正を行う。
 さらに,重み付きで平均を取るBilateral Filterを利用して,最終的な反射を滑らかに仕上げる。

・関連技術

 Lumenの移植に向け,Clipmap Irradiance Cacheも追加実装された。光はシーン内を何度も反射するが,すべてを計算すると膨大な処理となる。

 UE5版のLumenでは,オブジェクトの表面の放射輝度を保持するSurface Cacheが利用されているが,UE4.26ではそのまま利用できず,鳴潮では移植作業を省いている。

画像ギャラリー No.029のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 そこでClipmap Irradiance Cacheを自前実装した。多層のグリッドで間接光の情報を段階的にキャッシュできるもので,Surface Cacheベースのライティングの代わりとなる。

画像ギャラリー No.030のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,Lumenの導入に向け各種カスタマイズも行われている。

画像ギャラリー No.031のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 技術検証の結果,鳴潮チームは,最終的にハードウェアレイトレーシング版のLumenを採用した。

 実装が複雑であることや,一部光漏れが発生する問題などはあるが,拡張性の高さやパフォーマンスの良好さをメリットに挙げた。
 パフォーマンス面では,RTX 4060環境で,ノイズ除去を含めて間接光の処理時間は2ms以下,反射の処理時間は2ms以下を実現できたという。

画像ギャラリー No.032のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


アニメ調オープンワールドとの融合


■ライト数の制限

 UE4の標準レイトレーシング機能は,Next Event Estimation(NEE)で全ライトを走査する設計で,処理負荷の関係上,レイトレーシングに参加できるライトの数が最大256個と定められている。
 そのため,ライト数が制限に収まるよう,重要なライトは残し,不要なライトは省くというサンプリング処理が必要になる。

 鳴潮はオープンワールドゲームであり,多数のライトが配置されているため,このサンプリング処理の時間が課題となる。

画像ギャラリー No.033のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 ライト600個の環境下を条件に行ったパフォーマンステストでは,UE4標準のサンプリング手法で,処理に10.37msかかった。

 そこで,鳴潮は,ReGIR(Rendering Many Lights with Grid-Based Reservoirs)という手法を用いて,世界を格子状のグリッドに分割し,それぞれのセルで関与が大きいライトを1つだけ残すという仕組みで,サンプリングを最適化した。

 ReGIR機能を有効にした状態で再度パフォーマンステストを実施すると,ReGIR処理に0.43ms,レイトレーシング処理に2.65msと大きく短縮できた。

画像ギャラリー No.034のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


■トゥーンシェーダーとの融合

 トゥーンシェーダーでは,キャラクターの自身の影は専用のものを利用し,レイトレーシングの影の対象とならないようにした。
 アニメ調のビジュアルでは,影がクッキリしている方が質感がよく見えるが,レイトレーシングの影では,自然で柔らかい影となるので,それを避けるためだ。

画像ギャラリー No.035のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 しかし,キャラクターがシーン全体の雰囲気と調和できるように,間接光を受け取るようにした。
 間接光の影響が強すぎると,アニメ調のビジュアルが壊れてしまうので,キャラクターがシーンから浮かない適度なバランスに調整している。

画像ギャラリー No.036のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,影については,本来は細かいポリゴンの向きの違いでばらつくが,ノーマル(面の向いている方向を示すベクトル)をカメラ方向に少し寄せる,髪や顔には球状のノーマルを使うなど,向きの差を減らすことで滑らかなアニメらしい影を実現している。

画像ギャラリー No.037のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 アニメらしい色に馴染ませる処理も行われている。影が真っ黒になったり,白飛びしたりしないように調整しているほか,肌は間接光の影響を抑え,周囲の色を拾いすぎないようにしている。

 また,間接光をHSV空間(Hue:色相,Saturation:彩度,Value:明度)に変換し,自然な色味になるように制限をかけ,補正した。

 さらに,オブジェクトの狭い隙間など,現実世界でライトが当たりにくいところの影を再現するアンビエントオクルージョンを利用し,立体感を高めている。

画像ギャラリー No.038のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 キャラクターの衣装の金属感のあるパーツについては,反射を適用したい。
 そこで,マテリアルのパラメータであるラフネスとメタリックを調整している。

 ラフネスは数値が0に近いほど表面が滑らかで,反射光がクリアになる。数値が高いと処理の切り替えが起こるなどして,望ましい挙動ではなくなる可能性もあるため,ラフネスは0から0.3999までの範囲内に制限している。

 メタリックは1に近いほど,鏡のように周囲の光や色をそのまま反射する。鳴潮では,メタリックを反射強度の指標として扱い,0.9以上は完全な金属として鏡面反射を明確に出すようにしている。

 スライドの画像の上下を見比べると,腕にある金属の装備が周囲の色を反射しているかどうかの違いが見て取れる。

画像ギャラリー No.039のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


■特殊オブジェクトの影

 ゲームでは,画面内のすべてが完全な3Dモデルとは限らない。遠くの木や草,エフェクト用のオブジェクトなどは,2Dテクスチャをカメラの方向へ常に向けて描画することで,まるで3Dのように見せるbillboardを使うことがある。
 billboardを派生させ,オブジェクトを各方向からレンダリングした画像を使い,より立体的に見せる方法をimposterという。

 どちらも見た目は3Dだが,内部的には2Dの厚みのない板のようなものである。ただし,本来の3Dオブジェクトと同じように影が落ちないと,違和感が生まれてしまう。

 レイトレーシングは,実態のある3Dオブジェクトに光線を飛ばすことで影を作り出す仕組みであり,形状がフェイクなbillboardやimposterと相性が悪い。

 一方,従来手法のシャドウマップなら2Dベースなので影を付けやすい。
 そこで,シャドウマップとレイトレーシングのハイブリッドな構成で影を実現している。

画像ギャラリー No.040のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,Tile Classifyを用いて,ピクセルごとにレイトレーシングの必要性を判断し,場合によってはスキップさせる仕組みも導入され,処理負荷の軽減も行っている。


■レイトレーシングの影の問題

 壁など裏面を描画する必要がないオブジェクトは,裏面が存在しないことがある。
 このとき,裏面から光が当たってきた場合,裏面は光を遮るものがないので,そのまま光が通過してしまう。
 そこで,正面向きのポリゴンを無視して,裏面だけを拾うフラグを設定し,遮る面を制御している。

画像ギャラリー No.041のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


■フォグ(霧)の表現

 3D空間内に密度を持つフォグを表現する手法として,Volumetric Fogがあり,鳴潮でもそれを採用している。

 フォグの中の光の進み方も再現され,柔らかな広がりを表現できるが,GPUコストが高い。
 ハイブリッドシャドウで,トレース対象オブジェクトの数を減らす,低スペックデバイスでは,精度を落とすなどの対策で,ビジュアルとパフォーマンスのバランスを取っている。

画像ギャラリー No.042のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


■水と透過物の表現について

 水面の表現には,Single Layer Water(SLW)機能を利用する。単一の深度レイヤーを使い,透過や屈折,反射,影など水らしい表現を効率的に実現する仕組みだ。

 鳴潮では,水に光線が当たったとき,追加で光線を複数飛ばし,取得した情報をブレンドすることで,光が散乱するような自然な表現を作り出している。

画像ギャラリー No.043のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


■空の表現

 鳴潮の空は,美しい見た目の裏側で,その構造は複雑だと,Wang氏は説明した。空は内側から,clouds,milky way,star,skyという風に,複数の層で成り立っている。

 レイトレーシングでこの空の反射を正しく映すためには,反射光線が何も当たらずに遠くまで飛んだ(空まで飛んだ)ときに,追加でレイを飛ばすことで,空の各層の情報を拾い,それを合成している。
 処理コストは高くなるが,鳴潮の美しい空の表現を支える工程だ。

画像ギャラリー No.044のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]


パフォーマンスの最適化:GPU編


・スカイボックス(空)の最適化

 先ほど説明した通り,空のレイトレーシングコストは非常に高い。そこで,スカイボックスを512x512のCube Mapとしてラスタライズし,キャプチャしておくアプローチが取られた。

 また,毎フレームすべてを更新するのではなく,1フレームにつき1面のみを更新する仕組みにすることで,処理負荷を抑えている。

画像ギャラリー No.045のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 光線が何にもぶつからなかった場合は,空の反射を光線の方向に基づいて,Cube Mapをサンプリングする手法にしたことで,反射処理のパフォーマンスが約25%向上したという。

・ペイロードの圧縮

 レイトレーシングにおけるもっとも近いヒット点のマテリアル情報などを保存するペイロードFPacked Material Closest Hit Payloadの圧縮も検証された。
 UE標準では,64Byteのサイズだが,KURO GAMESの計算データ構造では,32Byteまで圧縮できたという。

画像ギャラリー No.046のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 これにより,GPUトレーシング性能が約15%向上したそうだ。
 さらなる最適化のため,20Byte,16Byteまで圧縮も試みたが,性能と品質のバランスが悪かったため,32Byteにしたという。

・マテリアルの簡略化

 マテリアルの簡略化も行われた。レイトレーシングは主に光の挙動をシミュレーションするため,物理ベースな完璧なマテリアルの計算は不要なケースがある。
 間接光はとくに,シーン全体の光の表現なので,色情報などを含む反射よりも簡略化しやすい。
 静的分岐で処理ごとにマテリアルのロジックを分離させている。

画像ギャラリー No.047のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

・そのほか

 レイトレーシングでは,透過とヒットの判定処理に負荷がかかる。
 そこで,Opacity Micro-Map(OMM)を利用する。ポリゴンを細かいマイクロユニットに分解し,どの部分が不透明か透明かという事前情報を保存しておくことで,レイトレーシングの判定負荷を減らしている。

画像ギャラリー No.048のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,シェーダーの演算時に,GPUが効率的に処理できるように実行順序を並べる仕組みShader Execution Reordering(SER)も利用している。

 光線の方向が発散している場合や,複雑なマテリアルを処理する場合など,一部の負荷の高いシーンでは,似たような処理をまとめることで,パフォーマンスを向上できる。
 ただ,光線の方向がある程度揃っているシーンでは,効果が限定的で,場合によっては性能が悪化する場合もあるという。


パフォーマンスの最適化:CPU編


 Wang氏は,UE4のレイトレーシング処理は,GPUよりも先にCPUがボトルネックの原因となりやすいと説明した。

 ボトルネックとして紹介されたのは,Gather Instances(レイトレーシング対象のオブジェクト情報を収集し,データを前処理)に3.2ms,Build Acceleration Structure(レイトレーシング処理を高速化するための構造化)に2.8ms,Bind SBT(光線の種類ごとに使用するシェーダーや関連リソースをShader Binding Tableにバインド)に2.4msと,負荷が高い。

画像ギャラリー No.049のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 GPUとの仲介を行うRHI(Render Hardware Interface)の処理である,Build Acceleration StructureとBind SBT処理に時間がかかっているため,レンダリング処理はそれを待つ必要があり,フレームの更新全体が遅くなってしまう。

 Intelの13世代の最上位モデルCore i9-13900Kでも,レイトレーシングありでフレーム時間が19.8msと,パフォーマンス面で大きな課題があった。
 そこで,鳴潮では,3つのステップに分けて,パフォーマンスの改善が行われた。

・ステップ1:カリング処理

 オープンワールドの環境では,オブジェクト数が非常に多い。レイトレーシングですべてを処理すると負荷が高いので,省略していいオブジェクトを対象から外すカリング処理を行う。
 カリング処理は,カメラ前方とカメラ後方の2つに分け,距離と立体角に基づいて段階的に行う。

画像ギャラリー No.050のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,シェーダーが参照するパラメータをRoot Signatureとして定義するが,鳴潮ではオブジェクトごとに設定するLocal Root Signatureに,冗長な共通データが含まれているとした。
 これらを,全体で共通利用できるGlobal Root Signatureに移行することで,Bind SBT処理の負荷を大きく軽減したという。

 この改善により,フレーム時間は,レイトレーシングありで16.6msに短縮できた。

・ステップ2:負荷分散による最適化1

 Gather Instancesの処理を軽量化したが,この処理の実行を別スレッドにすることで,待ち時間の短縮も行われた。

 Gather Instancesは,依存関係のある処理が多く実行タイミングが難しい。
 そこで,依存関係のある処理の実行タイミングを,描画の初期化(Init Views)より前倒しして実行し,依存関係を解決次第,Gather Instancesを実行する形で,Gather Instancesの実行待ちでレンダリング処理が止まらないようにした。

画像ギャラリー No.051のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 さらに,Build Acceleration Structureの改善も行われた。処理を分割し,事前に実行できるものは先に動かしてしまうという方針だ。
 事前に実行できるものをPre Build Acceleration Structureとして切り出して,Gather Instancesのあとに実行する。

 残りの処理は,毎フレーム形状が変化するオブジェクトを対象としたDynamic Bottom Level Acceleration Structureや,シーン全体をまとめるTop Level Acceleration Structureの構築など,動的な部分が残る。

画像ギャラリー No.052のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 スレッド処理を改善したことで,フレーム時間は,レイトレーシングありで14.5msまで改善された。

・ステップ3:負荷分散による最適化2

 最後に,Bind SBT処理の最適化が紹介された。この処理には,シェーダーやリソースの割り当て,ジオメトリ情報のバインド処理が含まれている。
 これらの処理を分割し,静的な部分をPre Bind SBTとして,前倒しして実行するようにした。
 これにより,RHIスレッドの負荷が分散され,レンダリング処理での待ち時間が大きく削減された。

画像ギャラリー No.053のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 最適化後は,フレーム時間は,レイトレーシングありで10.5ms,レイトレーシングなしで7.35msまで改善された。
 これらの改善で,CPUのボトルネックを回避した。


まとめ


 Wang氏は,鳴潮のレイトレーシング技術について,ReSTIRとLumenの検証から必要な処理の実装,アニメ調オープンワールドならではの課題解決,そしてパフォーマンスの最適化について順に説明した。
 最終的には,RTX 4060の環境で,2K/60fpsを達成し,高品質な光表現とパフォーマンスの両立という目標を達成した。

画像ギャラリー No.054のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 鳴潮の今後の展望としては,レイトレーシングの対応プラットフォーム拡大に加え,関連技術の導入も目指している。

 シェーダー内で直接光線処理を扱えるInlineレイトレーシングや,GPUが直接リソースにアクセスできるbindlessといったパフォーマンス向上技術の導入,NaniteのようなMega Geometry技術による複雑なジオメトリを持つシーンの処理なども検討している。

画像ギャラリー No.055のサムネイル画像 / 「鳴潮」がUE4.26のままLumenベースのレイトレーシングを実装した舞台裏。美しい光のアニメ調世界を支える技術[Unreal Fest Tokyo 2025]

 また,距離や解像度に依存しない高品質な影表現や,透過表現などのレイトレーシング効果の強化も目指しているそうだ。

 質疑応答では,UE5での新機能についても質問が寄せられた。Wang氏は,UE4.26へそのままの移植は難しいものの,魅力的な機能は随時研究し,そこで得たアイデアを役立てていくと説明した。
 また,モバイル端末などのレイトレーシング対応については,現在メーカーと協力しながら,将来的なアプローチを検討しているとのことだ。

  • 関連タイトル:

    鳴潮

  • 関連タイトル:

    鳴潮

  • 関連タイトル:

    鳴潮

  • 関連タイトル:

    鳴潮

  • 関連タイトル:

    鳴潮

  • 関連タイトル:

    Unreal Engine

  • この記事のURL:
4Gamer.net最新情報
プラットフォーム別新着記事
総合新着記事
企画記事
スペシャルコンテンツ
注目記事ランキング
集計:11月19日〜11月20日