このページでは、URP の使用時に発生する可能性のある既知の問題について説明します。
プロジェクトで使用されるユースケース、ターゲットプラットフォーム、レンダラー、機能の種類は多岐にわたるため、特定の URP 設定ではシェーダーバリアントの数が多くなる可能性があります。そのため、コンパイル時間が長くなることがあります。
シェーダーコンパイル時間が長いと、プレイヤーのビルド時間とシーンがエディターで描画する時間の両方に影響します。
カメラごとの可視ライト制限値は、各 Lit シェーダーバリアントおよび Complex Lit シェーダーバリアントのコンパイル時間に影響します。フォワード+ レンダリングパスでは、デスクトッププラットフォームでの制限は 256 です。
以下のページを参照して、可視ライトの最大数を減らすことでフォワード + レンダリングパスのビルド時間を短縮する方法を確認してください。
URP パッケージサンプルをインポートする際に Quality > Render Pipeline Asset で必要な URP アセットが設定されず、一部のサンプルレンダリングエフェクトが正しく機能しません。
この問題を修正するには:
Project Settings > Quality > Render Pipeline Asset で、SamplesPipelineAsset を選択します。
URP レンダラーアセットに Renderer Feature が割り当てられている場合、レンダラーアセットの名前を Renderer Feature と同じ名前に変更すると、URP レンダラーと Renderer Feature が入れ替わるという異常な動作が発生します。
以下のシナリオで、このエラーが発生する仕組みを示します。
プロジェクトの URP レンダラーの名前が UniversalRenderer であるとします。
このレンダラーには NewRenderObjects というレンダラー機能が割り当てられています。
UniversalRenderer の名前を NewRenderObjects に変更すると、誤った動作が発生します。
レンダラーが Renderer Feature と置き換わり、正しく動作しません。
この問題を回避するには、URP レンダラーアセットに Renderer Feature アセットと同じ名前を付けないようにします。
この問題に関する最新情報を確認するには、Unity Issue Tracker を参照してください。
URP パッケージを新しいバージョンにアップグレードする際に、以下のような警告が表示される場合があります。
Property (_AdditionalLights<...>) exceeds previous array size (256 vs 16). Cap to previous size.
この警告はプロジェクトに問題を起こすものではなく、エディターを再起動すれば警告は消えます。