アンビエントオクルージョン
読み: あんびえんとおくるーじょん
環境光が遮蔽される度合いをシミュレーションし、物体の隙間や角に自然な陰影を付加するレンダリング技術。接触面や凹部が暗くなることでリアルな奥行き感を生む。
アンビエントオクルージョン (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 が自動的に計算される。AO の強度を上げすぎると不自然に暗くなるため、0.5-0.8 程度の乗算が推奨される。