Shadow Map (シャドウマップ)は、ゲームグラフィックスのレンダリングや最適化(テクニカルアート)において極めて重要となる技術用語です。ライト(光源)から見たシーン全体の深度(距離)を専用のテクスチャに描き出し、オブジェクトの各ピクセルが光から遮られている(影の中にある)かを判定する影描画技術の解説。
現実世界での例え:ライトの光源の場所に『監視カメラ(シャドウカメラ)』を置き、光が見えない死角(影)を黒く塗る防犯システム
シャドウマップは、「ライトの光源に設置された監視カメラ(ライトカメラ)から見て、『光が当たっている範囲(一番手前のオブジェクト)』をあらかじめ白黒の距離写真(シャドウマップテクスチャ)として撮影しておく手法」です。その後、通常のカメラで絵を描くときに、「自分が立っている場所は、光源の監視カメラから見えているか?」をこの写真を使って照合します。もし他のオブジェクトの陰に隠れてカメラから『見えない死角(奥にある)』であれば、そこは光が届かない『影』であると判定して暗く塗られます。
図:Shadow Map (シャドウマップ)の基本的な処理フローと仕組みを日本語表記で分かりやすく図解したインフォグラフィック
詳細な仕組みと動作原理
影を落とす必要のない小さな小物や動かない背景の「Cast Shadows / Receive Shadows」をOFFにし、シャドウマップの解像度(1024など)や描画距離を制限して最適化します。