6.1. レベルオブディテール
レベルオブディテール(LOD)[13]とは,レンダリングするモデルをどれだけ詳 細にレンダリングするかを,視点とモデルの距離に応じてモデルの詳細度を変え る手法である.一般的には視点に近い位置にモデルがある場合は詳細に,離れて いる場合は簡略化してレンダリングする手法である.
本研究は LOD の概念をフォトンマッピング法に適用する.すなわち,放射輝 度計算に使用するフォトンを,詳細にレンダリングする箇所では多く,簡略化す る場所では少なくすることで,より高速かつ効果的なレンダリングを目指す.以 降,物体表面の放射輝度を計算する場合についてのみ述べるが,媒質における体 積放射輝度の計算時も同様である.
LODを実現するために,フォトンのグループ分けを以下のように行った.フォ トンマップに格納される順番にフォトンをグループに振り分ける.グループ数 はAとし,各グループに番号C を付け,0,1, , A 1とする.詳細度はQとし,視点 からフォトン位置までの距離dから式(6.1)で求める.
Q smoothstep n, f, d 6.1 ここでsmoothstepは n fの場合は,d<nならば0,d>fばらば1を,dが[n,f]の範 囲内であれば0と 1の間での滑らかなエルミート補完の値を返し,n>fの場合は 1-smoothstep(f,n,d)を返す関数である.
本研究では詳細度Qとグループを使い,それぞれのフォトンの出力の調整を行 い放射輝度計算に使用するフォトンの数を削減する.1 グループに属するフォト ンのフォトンマップ全体の割合 dQ を式(6.2)で, 各グループへの帰属判定用の 値G を式(6.3)で与える.
dQ 1/A 6.2
G C /A (6.3)
各フォトン p の出力の調整は式(6.4)で行われる.ここでΦ はフォトンの出 力,Q はフォトン位置における詳細度である.
47
Φ
Q Q G のとき a
G
Q G G Q
Q
G dQ G Q のとき b 0 G G dQのとき c
6.4
式(6.4) の(a)はフォトン p の位置において有効なフォトンの総数が 1-Q 倍に なったと仮定したとき,有効なフォトン全体の総出力を一定に保つための式であ る.
式(6.4) の(b)は,(a)と(c)の中間の状態で,有効なフォトン全体の総出力を保ち ながら出力を落とし,(c)へ移る.式(6.4)の1項目である 1 G1
pは,(a)から(b)に移行
し た と き の 出 力 で あ る.
1 1 Qp
1
1 Gp 1 Gp dQ
dQ は,(a)状 態 で あ る 全 フ ォ ト ン の,1 Q1
p からの増加量の合計を,(b)状態フォトンに分配した量である.(b)状態フ
ォトンの出力を式(6.4)の(b)で求めることで,(b)状態のフォトンの出力を 0 にす る.そして,Q の値が上がると最終的にはフォトン(c)状態になり,(c)状態のフォト ンのL (式(4.3))計算を簡略化する.
本研究ではフォトンマップに格納された各フォトンに式(6.4)をあてはめ,リア ルタイムレンダリングを目指した.
コーネルボックスのシーンに式(6.4)を適用した結果を図6.1に示す.計測単位 は1秒間の描画回数を表すfps(Frame Per Second)を用いている.この例では LODを使うことでfpsが約2倍になった.レンダリング結果はほぼ変わらない が,LODが視点に近い部分のフォトンを無効化する設定なため若干暗くなって いる.本手法は各フォトンの効果をポリゴンを用いて適用するため,視点に近い フォトンはスクリーン上の効果範囲が大きいため,速度面で視点に近いフォトン を削減する効果は,奧のフォトンを削減するよりも大きい.フォトンマップの精 度を落とし,2000個のフォトンを使用してレンダリングした結果を図6.2に示す. 精度を落とし,適切な設定を行うことで大域照明をリアルタイムにレンダリング することが出来た.
48
図6. 1 LODの有無による描画速度の比較.
10000個のフォトンを使用.
モデルは視点から9.6~19.6の距離に配置されている.解像度512x512.
(左)LOD無効,(右)LOD有効,n=20,f=7.約2倍のレンダリング速度になった.
49
関与媒質に関してもステージのモデルを用いてレンダリングを行った.結果を 図6.3に示す.この例は均一な場合のレンダリングである.媒質でも同様にLOD を用いることで,レンダリング速度が向上した.次に体積フォトンマップの精度 を落とし,25000個のフォトンを用いたレンダリング結果を図6.4に示す.この結 果では遠い位置のフォトンを無効化している.媒質がある場合,距離が離れるほ ど光は届かなくなるため,媒質シーンでは遠い位置を簡略化するLODの設定が 有効な場合が多い.この結果でもリアルタイムに媒質が存在する場合の大域照明 をレンダリングできた.
図6. 2 リアルタイムレンダリング出来るまで精度を落とした結果 図6.1と同様のシーンで2000個のフォトンを使用. 解像度512x512.
LOD設定n=20,f=7でレンダリングを行っている。
50
図6. 4リアルタイムレンダリング出来るまで精度を落とした媒質シーンの結果 図6.3と同様のシーンで25000個のフォトンを使用. 解像度512x512.
LOD設定n=0,f=20でレンダリングを行っている。
N<fなので,視点から遠い位置にあるフォトンが無効化される.
図6. 3 均一な媒質中のステージのレンダリング結果.フォトンを50000個使用 モデルは始点から4.9~22.3の距離は位置されている. 解像度512x512.
(左)LOD無効, 6.7fps.(右)LOD有効,n=25,f=3, 10.6fps.
約7割程レンダリング速度が上がった.
51