スクリーンスペースアンビエントオクルージョンエフェクトは、相互に近接した溝、穴、交差点、およびサーフェスをリアルタイムで暗くします。現実世界では、このような領域はアンビエントライトを遮断または遮蔽する傾向があり、そのために暗く見えます。
URP には、リアルタイムのスクリーンスペースアンビエントオクルージョン (SSAO) エフェクトがレンダラーの機能として実装されています。ユニバーサルレンダーパイプライン (URP) が提供するすべてのシェーダーと、作成したカスタムの不透明な Shader Graph で動作します。
ノート: SSAO エフェクトはレンダラー機能であり、URP のポストプロセスエフェクトからは独立して機能します。ボリュームに依存したり、ボリュームと相互作用したりすることはありません。
以下の画像は、Ambient Occlusion エフェクトをオフにしたシーン、オンにしたシーン、およびアンビエントオクルージョンテクスチャのみのシーンを示しています。
SSAO Renderer Feature は、サーフェス上の各点がアンビエントライトにどの程度露出しているかを計算するために法線ベクトルを使用します。
URP 10.0 には、現在のフレームの法線テクスチャ _CameraNormalsTexture を生成する DepthNormals パスブロックが実装されています。デフォルトでは、SSAO Renderer Feature はこのテクスチャを使用して、アンビエントオクルージョン値を計算します。
カスタム SRP を実装し、シェーダーに DepthNormals パスブロックを実装しない場合は、SSAO レンダラー機能を使用して Source プロパティを Depth に設定します。そうすると、Unity は法線ベクトルの生成に DepthNormals パスを使用せず、代わりに深度テクスチャを使用して法線ベクトルを再構築します。
Source プロパティでオプション Depth を使用することにより、Normal Quality プロパティが有効になります。このプロパティのオプション (Low、Medium、High) は、Unity が深度テクスチャから法線ベクトルを再構築するときに取得する深度テクスチャのサンプル数を決定します。各品質レベルのサンプル数は、Low: 1、Medium: 5、High: 9 となります。