「ライトプレパス」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Administrator
(ページの作成:「'''ライトプレパス'''(英語:Light Pre Pass、通称:LPP)とは、遅延レンダリングを改良した3DCGの描画手法である。 == 概要…」)
 
 
3行目: 3行目:
 
== 概要 ==
 
== 概要 ==
 
;第1パス
 
;第1パス
「放射照度」を計算し出力する。
+
「[[放射照度]]」を計算し出力する。
  
 
;第2パス
 
;第2パス
放射照度を参照して拡散反射および鏡面反射を計算し「光源データ」を出力する。
+
[[放射照度]]を参照して[[拡散反射]]および[[鏡面反射]]を計算し「[[光源データ]]」を出力する。
  
 
;第3パス
 
;第3パス
光源データを参照しつつ[[フォワードレンダリング]]的な処理を行い最終的な[[ピクセル]]を出力する。
+
[[光源データ]]を参照しつつ[[フォワードレンダリング]]的な処理を行い最終的な[[ピクセル]]を出力する。
  
 
== メリット ==
 
== メリット ==
25行目: 25行目:
  
 
== デメリット ==
 
== デメリット ==
遅延レンダリングでは2パスなのがライトプレパスでは3パスに増えている。
+
遅延レンダリングでは全体で2パスなのがライトプレパスでは全体で3パスと増えている。
 
1フレームの描画に[[シェーダー]]を3回も呼び出さなければならない。
 
1フレームの描画に[[シェーダー]]を3回も呼び出さなければならない。
 
つまり「[[ドローコール]]」が1.5倍になる。
 
つまり「[[ドローコール]]」が1.5倍になる。

2019年9月24日 (火) 12:57時点における最新版

ライトプレパス英語:Light Pre Pass、通称:LPP)とは、遅延レンダリングを改良した3DCGの描画手法である。

概要[編集 | ソースを編集]

第1パス

放射照度」を計算し出力する。

第2パス

放射照度を参照して拡散反射および鏡面反射を計算し「光源データ」を出力する。

第3パス

光源データを参照しつつフォワードレンダリング的な処理を行い最終的なピクセルを出力する。

メリット[編集 | ソースを編集]

メモリ使用量が少ない[編集 | ソースを編集]

遅延レンダリングの欠点である「アホみたいなメモリ使用量」が改善される。

MSAAが使える[編集 | ソースを編集]

遅延レンダリングではMSAAと併用できないという欠点があったが、LPPではMSAAと併用できる。

遅延レンダリングでは1パス目のGバッファの生成が終わってしまえば後は2D画像処理の世界に突入してしまうため、「ポリゴンのエッジの情報」が喪失してしまいMSAAが使えない。

フォトショップなんかにある「エッジ抽出」をリアルタイムに行い強引にアンチエイリアシングするという手法もあるが絶望的に効率が悪い。そのような状況下で少しでも性能を向上させようと、MLAAFXAATXAASRAADSAAポストMSAAなど様々な手法が考案された。

一方、ライトプレパスでは3パス目でフォワードレンダリングに近い描画を行うためエッジの情報が最後まで失われていない。このためフォワードレンダリング向けに開発された様々な技法がそのまま適用できることが多い。MSAAもそのひとつである。

デメリット[編集 | ソースを編集]

遅延レンダリングでは全体で2パスなのがライトプレパスでは全体で3パスと増えている。 1フレームの描画にシェーダーを3回も呼び出さなければならない。 つまり「ドローコール」が1.5倍になる。

関連項目[編集 | ソースを編集]