Version: Unity 6.0 (6000.0)
言語 : 日本語
Restrict a render pass to a scene area in URP
Modify URP source code

URP のインジェクションポイントに関するリファレンス

URP には複数のインジェクションポイントが含まれています。これによりフレームレンダリングループにレンダーパスを挿入し、さまざまなイベントで実行できます。

インジェクションポイントにより、カスタムレンダーパスが URP バッファへアクセスできるようになります。レンダーパスは、各インジェクションポイントのすべてのバッファに対して読み取りおよび書き込みのアクセス権を持ちます。

Unity では、レンダリングループに以下のイベントを提供しています。これらのイベントを使用して、カスタムパスを挿入することができます。

インジェクションポイント 説明
BeforeRendering 現在のカメラに対して、パイプライン内の他のパスをレンダリングする前に ScriptableRenderPass インスタンスを実行します。カメラマトリックスとステレオレンダリングは、この時点では設定されていません。このインジェクションポイントを使用して、後でパイプラインで使用されるカスタム入力テクスチャ (LUT テクスチャなど) に描画することができます。
BeforeRenderingShadows シャドウマップ (MainLightShadowAdditionalLightsShadow パス) をレンダリングする前に ScriptableRenderPass インスタンスを実行します。
この時点では、カメラマトリックスとステレオレンダリングは設定されていません。
AfterRenderingShadows シャドウマップ (MainLightShadowAdditionalLightsShadow パス) のレンダリング後に ScriptableRenderPass インスタンスを実行します。
この時点では、カメラマトリックスとステレオレンダリングは設定されていません。
BeforeRenderingPrePasses プリパス (DepthPrepassDepthNormalPrepass パス) をレンダリングする前に ScriptableRenderPass インスタンスを実行します。
この時点で、カメラマトリックスとステレオレンダリングはすでに設定されています。
AfterRenderingPrePasses プリパス (DepthPrepassDepthNormalPrepass パス) のレンダリング後に ScriptableRenderPass インスタンスを実行します。
この時点で、カメラマトリックスとステレオレンダリングは設定されています。
BeforeRenderingGbuffer GBuffer パスをレンダリングする前に ScriptableRenderPass インスタンスを実行します。
AfterRenderingGbuffer GBuffer パスのレンダリング後に ScriptableRenderPass インスタンスを実行します。
BeforeRenderingDeferredLights Deferred パスをレンダリングする前に ScriptableRenderPass インスタンスを実行します。
AfterRenderingDeferredLights Deferred パスのレンダリング後に ScriptableRenderPass インスタンスを実行します。
BeforeRenderingOpaques 不透明なオブジェクト (DrawOpaqueObjects パス) をレンダリングする前に ScriptableRenderPass インスタンスを実行します。
AfterRenderingOpaques 不透明なオブジェクト (DrawOpaqueObjects パス) をレンダリングした後に ScriptableRenderPass インスタンスを実行します。
BeforeRenderingSkybox スカイボックス (Camera.RenderSkybox パス) をレンダリングする前に ScriptableRenderPass インスタンスを実行します。
AfterRenderingSkybox スカイボックス (Camera.RenderSkybox パス) のレンダリング後に ScriptableRenderPass インスタンスを実行します。
BeforeRenderingTransparents 透明なオブジェクト (DrawTransparentObjects パス) をレンダリングする前に ScriptableRenderPass インスタンスを実行します。
AfterRenderingTransparents 透明なオブジェクト (DrawTransparentObjects パス) をレンダリングした後に ScriptableRenderPass インスタンスを実行します。
BeforeRenderingPostProcessing ポストプロセスエフェクト (Render PostProcessing Effects パス) をレンダリングする前に ScriptableRenderPass インスタンスを実行します。
AfterRenderingPostProcessing ポストプロセスエフェクトのレンダリング後で、かつ最終的な転送、ポストプロセスアンチエイリアスエフェクト、およびカラーグレーディングの前に ScriptableRenderPass インスタンスを実行します。
AfterRendering その他すべてのパスをレンダリングした後に ScriptableRenderPass インスタンスを実行します。

以下の図は、URP フレームのパスとフレームリソースのフローを示しています。

URP フレームのレンダリンググラフとパス
URP フレームのレンダリンググラフとパス
Restrict a render pass to a scene area in URP
Modify URP source code