【Unity】Universal Render Pipeline(URP)とは? - 概念の説明~セットアップまで

UnityのUniversal Render Pipeline(URP)の概念とセットアップ方法をまとめました。

Unity2019.3.0
Universal RP 7.1.8

Unity2019.2以前をお使いの方へ - LWRPの案内

Universal Render Pipelineとは、もともとLightweight Render Pipeline(LWRP)という名前だったものが、
Unity2019.3のリリースに伴って名称変更されたものになります。

blogs.unity3d.com

Unity2019.2以前のバージョンをお使いの方は以下のLightweight Render Pipelineの記事を参照してください。

light11.hatenadiary.com

Universal Render Pipelineとは?

さてUnityではScriptable Render Pipeline(SRP)という機能を使うことでレンダリングパイプラインをカスタムできます。
SRPを使って完全に独自のパイプラインを作ることもできますが、敷居が高いのでUnityがプリセットを用意してくれています。
Universal Render Pipeline(URP)はこのプリセットの一つで、モバイルプラットフォームを想定した軽量なレンダリングパイプラインになっています。

レンダリングパスはシングルパスのフォワードレンダリングで、従来のStandard Shaderなどは使えません。
代わりに、軽量なPBRを行うURP用のStandard Shaderなどが用意されています。
ちなみにもう一つのプリセットであるHDRPとの互換性もないので、どちらを使うかはあらかじめ決めておく必要があります。

URPのプロジェクトを作る(プロジェクトを新規作成する場合)

それでは早速URPの設定をしてみます。
URPのプロジェクトを新規作成するか既存のプロジェクトをURPに対応させるかで手順が異なるので両方とも説明します。

まずプロジェクトを新規で作成する場合の手順です。
UnityHUBを使っている場合、プロジェクト作成ウィンドウのTemplateからUniversal Project Templateを選択します。

f:id:halya_11:20200225211500p:plain

新規作成の場合はこれだけでセットアップまで完了している状態のプロジェクトが作成されます。

URPのプロジェクトを作る(既存のプロジェクトをURPに対応させる場合)

次に既存プロジェクトをURPに対応させる場合の手順です。
まずPackage Managerから「Universal RP」を検索してインストールします。

f:id:halya_11:20200225211756p:plain

なおPackageManagerの使い方については以下の記事にまとめていますので、必要に応じて参照してください。

light11.hatenadiary.com

インストールが終わったら、下記の通り初期設定を行います。

  1. Assets > Create > Rendering > Universal Render Pipeline > Pipeline Asset(Forward Renderer)でアセットを作る
  2. Edit > Project Settings > Graphics > Scriptable Render Pipeline Settingsに1で作ったアセットをセット

下記のようにアセットが設定できていればOKです。

f:id:halya_11:20200225212056p:plain

Pipeline Assetで設定を変更できる

前節で作ったPipeline Assetのインスペクタを見ると、レンダリングパイプラインの設定ができることがわかります。

f:id:halya_11:20200225212246p:plain

項目の説明は省きますが、従来のパイプラインではQuality Settingsで設定していた項目だったり、
従来のパイプラインではできなかったレンダーターゲットの解像度設定などができます。

設定項目の細かい説明はマニュアルに書かれています。

docs.unity3d.com

関連

light11.hatenadiary.com

参考

docs.unity3d.com