Deferred Shading (ディファード・シェーディング)は、ゲームグラフィックスのレンダリングや最適化(テクニカルアート)において極めて重要となる技術用語です。描画情報を一度Gバッファに書き出してから一括でライト計算を行うことで、大量のライト配置時のGPU負荷を削減するディファード描画の仕組み。
現実世界での例え:レストランでの『バイキング(ビュッフェ)形式』の効率化
従来(Forward)は客(オブジェクト)が注文するたびに、シェフが毎回ゼロから料理(ライティング)を作って個別にテーブルへ運びます。客と料理の数が増えると厨房がパンクします。ディファード(Deferred)は、あらかじめ大量 of 料理(Gバッファ)をビュッフェテーブルに並べておき、客が各自の皿(ピクセル)に欲しいものだけを載せて一括で食べるため、何百人来ても厨房の負荷が一定に保たれます。
図:Deferred Shading (ディファード・シェーディング)の基本的な処理フローと仕組みを日本語表記で分かりやすく図解したインフォグラフィック
詳細な仕組みと動作原理
ディファード描画に変更し、一度オブジェクトの形状情報(Gバッファ)をテクスチャに書き出してから、画面のピクセル単位でライト計算を一括実行して最適化します。