Unity既存プロジェクトにURP追加
初めに
公式を見ただけでは上手く行かなかった所もあるので残します。
- Unity 6000.1.11f1
参考
公式 https://docs.unity3d.com/6000.1/Documentation/Manual/urp/InstallURPIntoAProject.html https://docs.unity3d.com/6000.1/Documentation/Manual/urp/upgrading-your-shaders.html
URP環境で動作するビルトインのMobileシェーダまとめてみた https://zenn.dev/nakaigames/articles/4e0bf7fadc2890
Built-inシェーダーのURP変換が上手くいかないとき https://zenn.dev/gahuto/articles/4a0eee09d65960
内容
- Universal Rendering Pipeline パッケージ追加
- Universal RP と書かれている場合がある。
- プロジェクトのルートフォルダで、アセット → 作成 → レンダリング → URPアセット(2Dレンダラー含む) または URPアセット(ユニバーサルレンダーラー含む)
- 違いについては未調査
- 編集 → プロジェクト設定 → グラフィックスで、Default Render Pipeline に追加したアセットをセット
- ウィンドウ → レンダリング → レンダーパイプラインコンバータ
- チェックを全て入れて「Initialize And Convert」
- 主にパーティクルで使っているマテリアルでエラーが出た。
- 変換しなくてもよい場合があるらしいが、動作を見ながら修正
- メインカメラ以外のカメラがあるなら、インスペクタからレンダータイプを Overlay に変更
- 変更した場合はメインカメラのインスペクタにあるスタックに追加
- 私の場合だと、タップエフェクト用のカメラがあった。一方で、イメージキャプチャー用のカメラはテクスチャにしか出力しないので変更不要だった。
- 動作確認
最後に
プロジェクトを新規で作り直した方が良いのは分かっている。