タイル遅延レンダリング

提供: MonoBook
ナビゲーションに移動 検索に移動

タイル遅延レンダリング英語:Tiled Deferred Rendering)とは、遅延レンダリングの発展系のひとつで、Gバッファーを一定サイズに分割(タイル化)してライティング処理を行うものをいう。

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

一般的にポイントライト(やスポットライトなど)は一定範囲にしか影響を及ぼさない。

しかし従来の遅延レンダリングでは「ライト」と名の付くものはGバッファーの全ピクセル(≒画面の解像度)に対してライティング処理を行う。このためライトが増えると結構処理が重い。たとえばフルHDなら「1920x1080xライト数」という膨大な計算量になる。

これを改善すべく、Gバッファーを一定サイズのタイルに分割し、各タイルに「ポイントライトの影響範囲か」を事前に計算し格納しておく。この際のタイルサイズはメモリ消費量と相談だな。

ライティング処理の際には処理対象の座標が「タイル内か」を判定し、タイル内であれば処理を行い、タイル外であれば処理をしない。これによりピクセルシェーダーの負荷がグンと下がるというものである。

なお、ライト数が少ない場合は「ドローコールの増加」の影響により、従来の遅延レンダリングのほうが高速である。