このページではスクリプタブルレンダーパイプライン (Scriptable Render Pipeline、SRP) の機能を説明し、重要な概念と用語の一部を説明します。
SRP は、C# スクリプトを使用してレンダリングのコマンドのスケジュールと設定を行うための 薄い API レイヤーです。SRP はこれらのコマンドを Unity の低レベルのグラフィックスアーキテクチャに渡し、グラフィックス API に指示を送信します。
スクリプタブルレンダーパイプライン (SRP) で C# のレンダリングコードを作成する場合は、2 つのキー要素を作成してカスタマイズする必要があります。
Rendering.RenderPipelineAsset
を継承するスクリプトを作成してレンダリングパイプラインアセットを定義し、次にプロジェクトにレンダリングパイプラインアセットのインスタンスを作成して設定します。Render()
メソッドを持つクラスです。レンダリングパイプラインインスタンスを定義するには、RenderPipeline
を継承するスクリプトを作成します。これらの要素の作成に関しては、レンダリングパイプラインアセットとレンダリングパイプラインインスタンスの作成を参照してください。
スクリプタブルレンダーコンテキスト (Scriptable Render Context) は、C# の SRP コードと Unity の低レベルグラフィックスコード間のインターフェースとして機能するクラスです。ScriptableRenderContext API を使用して、レンダリングコマンドをスケジュールして実行します。
スクリプタブルレンダーコンテキストの使用に関する詳細は、スクリプタブルレンダーパイプラインのレンダリングコマンドのスケジュールと実行を参照してください。
SRP では、Unity が特定の時間に呼び出す C# レンダリングコードを書くことができます。
Render()
メソッドは SRP へのエントリーポイントです。Unity は、現在レンダリングしている各 CameraType に対して、フレームごとに 1 回、このメソッドを呼び出します。SRP をカスタマイズするには、このメソッドをカスタマイズします。