アンビエントオクルージョン
読み: あんびえんとおくるーじょん
環境光が遮蔽される度合いをシミュレーションし、物体の隙間や角に自然な陰影を付加するレンダリング技術。接触面や凹部が暗くなることでリアルな奥行き感を生む。
アンビエントオクルージョン (Ambient Occlusion、略称 AO) は、シーン内の各点がどの程度環境光を受けられるかを計算する技術である。物体同士が接する部分や狭い隙間では周囲からの光が遮られるため暗くなり、開けた面では明るくなる。この微妙な陰影は、空間の奥行きや物体の接地感の表現に寄与する。
- レイキャスト方式: 各表面点から半球状にレイを飛ばし、遮蔽される割合を計算する。レイの本数を増やすほど遮蔽率の推定は安定するが、計算コストも増大する。本数は要求品質との兼ね合いで決まり、オフラインレンダリングで 256-1024 本を用いる設定例が挙げられる
- SSAO (Screen-Space AO): 2007 年に Crytek が Crysis で実装した手法。デプスバッファから近傍のオクルージョンを近似計算する。リアルタイム処理が可能だが、画面外の情報を考慮できない制約がある
- HBAO+ / GTAO: SSAO の改良版。NVIDIA の HBAO+ はホライズンベースの計算で精度を向上させ、GTAO (Ground Truth AO) はより物理的な参照に近い結果を低コストで得ることを狙う
- AO マップ (テクスチャベイク): 事前計算した AO 情報をテクスチャとして焼き付ける。静的オブジェクトに適し、ランタイムコストがゼロになる。Substance Painter や Blender の Cycles で生成する
ゲーム開発では、SSAO 系のリアルタイム手法とベイク済み AO マップを併用する構成が代表例として挙げられる。Unreal Engine 5 の Lumen のように、グローバルイルミネーションの計算のなかで遮蔽による減衰を扱う実装もある。AO の強度を上げすぎると隙間が不自然に暗く見えるため、強度は控えめに調整する。0.5-0.8 程度の乗算はその設定例のひとつである。