1分で理解するScriptable Render Pipeline(SRP)の概略と使い方


TL;DR


  • 今までProjectSettingsで設定していた項目を、いい感じにしてくれる機能

  • HDRP(高画質)とLWRP(軽量)という2つの構築済みSRPで気軽に使える

  • Standard Sharderが使えないなど、一部制約もあったりするので注意


はじめに

Scriptable Render Pipeline(SRP)のなんとなくの雰囲気を知るためのメモです。

参考リンクも付けているので、正確な情報は各自調べてください。


用語


  • ビルドインレンダーパイプライン


    • 従来の描画システム



  • SRP: Scriptable Render Pipeline


    • いい感じにカスタマイズが出来る機能

    • 基本的に構築済みSRPを調整する形で使うことが推奨されている



  • HDRP: High Definition Render Pipeline


    • SRPの高画質な構築済みSRP

    • Shader GraphとPost-Processingが含まれている



  • LWRP: Lightweight Definition Render Pipeline


    • SRPの軽量な構築済みSRP

    • Shader GraphとPost-Processingが含まれている

    • 全てのVRプラットフォームに対応




どこから導入できるの?

Unity2019.xだとプロジェクトの新規作成時に選べる。

スクリーンショット 2019-07-05 18.16.52.png


  • HDRPはビルドイン/LWRPと互換性がないため、この時点で決定する必要がある(多分)

  • サンプルシーンに設定済みのSRPが含まれる

既存のプロジェクトに導入する場合は、PackageManagerから。

スクリーンショット 2019-07-05 18.21.54.png


  • Core RP Library


    • SPRを熟知している人が構築済みSRPを使わずにカスタマイズする時に使うライブラリ。

    • 構築済みSRPを使う場合は不要



  • High Definition RP


    • HDRP



  • Lightweight RP


    • LWRP



LWRPの場合使えないシェーダーがあるが、以下のメニューより良い感じに置き換えてくれる

スクリーンショット 2019-07-05 18.31.12.png


どこで紐付いてるの?

Graphic Settingsで設定できる

スクリーンショット 2019-07-05 18.13.51.png

Quality Settingsで設定していたような項目が、SRP用のScriptableObjectで設定できるようになった感じ。

スクリーンショット 2019-07-05 16.55.38.png

左: SRP未設定状態のQuality Settings, 右: LWRP-HightQuality

スクリーンショット 2019-07-05 17.36.28.png

SPRを適用すると設定項目が減る


参考