Version: Unity 6.0 (6000.0)
言語 : 日本語
URP でのスクリーンスペースアンビエントオクルージョン (SSAO)
スクリーンスペースアンビエントオクルージョンのレンダラー機能を URP レンダラーに追加する

URP のスクリーンスペースアンビエントオクルージョンの概要

スクリーンスペースアンビエントオクルージョンエフェクトは、相互に近接した溝、穴、交差点、およびサーフェスをリアルタイムで暗くします。現実世界では、このような領域はアンビエントライトを遮断または遮蔽する傾向があり、そのために暗く見えます。

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 となります。

URP でのスクリーンスペースアンビエントオクルージョン (SSAO)
スクリーンスペースアンビエントオクルージョンのレンダラー機能を URP レンダラーに追加する
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961