IT用語集 › プログラミング › シャドウボリューム

シャドウボリューム

プログラミング Svenska → 更新: 2026-10-24

影をジオメトリとして扱う手法で、シルエットの辺を光から遠ざかる方向に押し出して閉じた体積を作り、ステンシルバッファでどのピクセルがその内側にあるかを数える。

この方法は1977年にフランク・クロウが記述した。物体の輪郭を光源から見て求め、その辺を無限遠まで押し出して体積を作り、ステンシルバッファに対して描画する。ピクセルへ向かう視線が体積に入るたびにカウントを増やし、出るたびに減らす。合計が0でなければそのピクセルは影の中にある。結果は解像度に依存しない、ピクセル単位で正確なくっきりした影になる。

素朴な実装は、カメラが体積の内側にあると破綻した。ジョン・カーマックの「デプスフェイル」(他の人々も独立に導出した)はファー平面側から数えることでこれを解決し、この技法は『Doom 3』(2004年)を支えた。しかしフィルレートの負荷は重く、ジオメトリは閉じている必要もあるため、手軽さで勝るシャドウマッピングが最終的に主流になった。

← 用語集に戻る