【Unity】URP へのアップグレード方法

# 説明内容
- プロジェクト進行途中でURPを実装する
→ 1～4で説明
- URPにしたがオブジェクトがピンク色になった際の対応
→ 4で説明

# 手順
1. URPインポート
2. URPアセット作成
3. プロジェクト設定変更
4. すべての設定にURPを反映

## 1. URPのインポート
### 1-1. `Window > Package Manager`を選択
![スクリーンショット 2024-12-13 151341.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/193f98b8-3b2a-f970-f873-7109b84699ba.png)

## 1-2. `Packages`を`Unity Registry`に変更
![スクリーンショット 2024-12-13 151406.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/a59dcc07-0eda-46f4-5101-eb1d177b799a.png)

## 1-3. 「`Universal RP`」と検索し、インストール

![スクリーンショット 2024-12-13 151438.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/fff78fcf-ebcf-ca03-7cd7-df71cfc95916.png)


## 1-4.アセットファイルが作成される
`UniversalRenderPipelineGlobalSettings`という名前のファイルが作成されます
![スクリーンショット 2025-01-15 152955.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/30b71fbe-fed5-dc26-4109-bf8b50858569.png)


## 2. URPアセット作成
### 2-1. URPのアセットを入れるフォルダを作成
![スクリーンショット 2024-12-13 152630.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/081ac26c-6b19-bcea-b30d-68dd6150fe06.png)



### 2-2. `Asset > Create > Rendering > URP Asset(with Universal Renderer)`を選択
![スクリーンショット 2024-12-13 152315.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/af1455aa-6007-9df6-e595-99911f9eb54f.png)

### 2-3.ファイルが作成される
- New Universal Render Pipeline Asset　　　　  　→　URP設定用
- New Universal Render Pipeline Asset_Renderer　→　レンダラーデータ用
 

この２つが自動的に作成されます
![スクリーンショット 2025-01-15 154531.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/4111cac6-83f7-f075-da99-2340c11162e5.png)



## 3. プロジェクト設定変更
### 3-1.`Edit > Project Settings`を選択
![スクリーンショット 2025-01-15 160932.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/9684be48-47d6-2a64-5086-0e53c59889f5.png)

### 3-2. `Graphics`を選択
レンダーパイプラインをURPに変更
![スクリーンショット 2025-01-29 135122.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/1813f399-80aa-d07f-6b7b-23f73d9f54a3.png)

### 3-3. `Scriptable Render Pipeline Settings`に 　　　　　　　　　　　`New Universal Render Pipeline Asset`を適用
![スクリーンショット (23) (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/92ef69db-323b-8d32-f17d-47facf881a54.png)


### Continueを選択
※変更に少し時間がかかるよという警告です
![スクリーンショット 2025-01-29 135520.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/98cc8bfb-a335-0fe0-4808-e4ecd5ee36f6.png)



## 4. すべての設定にURPを反映
:::note warn
現段階でシーンを確認すると大体のオブジェクトがピンク色になっていると思います。
:::

![スクリーンショット 2025-01-29 135536.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/3d8d4b0c-d31f-0e2f-9912-79cb3be45e9a.png)

:::note info
初期設定のマテリアルがURPに対応していないため、
URPに対応したマテリアルに自動変更していきます。
:::


### 4-1. `Window > Rendeing > Renger Pipeline Converter `を選択
![スクリーンショット 2025-01-29 142846.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/42eac215-284a-9c19-232f-c9e544448f40.png)

### 4-2. `Built-in to URP` を選択
![スクリーンショット 2025-01-29 151900.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/cfb08ad4-1b92-82a6-635e-58374afb208e.png)

### 4-3. 各項目にチェックを入れる
全てにチェックを入れます。
![スクリーンショット 2025-01-29 142911.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/90d36952-d95f-b2de-1601-f238b0f85199.png)

### 4-4. `Initialize And Conevrt` を実行
![スクリーンショット 2025-01-29 142911.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/66de6a50-6967-c463-da9c-80b0dc73a09f.png)

### 4-5. シーン内を確認
URP用のマテリアルへ切り替わり、
マテリアルがピンクではなくなります。
![スクリーンショット 2025-01-29 142949.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3847430/0f467980-ebbd-6d5f-b938-e99f9aeb83bb.png)

---


### URP用マテリアル

| 名称 | 特徴 | 用途 | 負荷 |
|:-:|:-:|:-:|:-:|
|Lit| 標準的なPBRマテリアル | リアルなオブジェクト | 高い |
|Simple Lit| 簡易版PBR | 性能の低いデバイス用 | 中程度 |
|Unlit| ライティングなし | UIや背景 | 低い |
|Baked Lit| ライトマップのみ使用 | 静的シーン | 低い |
|Sprite Lit| 2Dライト対応 | 2Dキャラクターや背景 | 中程度 |
|Sprite Unlit| 2Dライト非対応 | UIや簡易要素 | 低い |
|Particles Lit| ライト対応パーティクル | 煙や火花 | 高い |
|Particles Unlit| ライト非対応パーティクル | シンプルなエフェクト | 低い |
|Decal| 表面に投影可能 | 汚れやサイン | 中程度 |

※PBR（Physically Based Rendering、物理ベースレンダリング)
　PBR＝リアルな質感表現になります。

## 参考
https://unity.com/ja/resources/introduction-to-urp-advanced-creators-unity-6

[Unity公式マニュアル](https://docs.unity3d.com/6000.0/Documentation/Manual/urp/upgrading-from-birp.html)

[レンダーパイプラインコンバーター](https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@12.1/manual/features/rp-converter.html)

[レンダーパイプラインコンバーター日本語](https://tat1kun.hatenablog.com/entry/builtin_to_urp12#:~:text=Built-in%20to%20URP%20%E3%82%92%E9%81%B8%E6%8A%9E%E3%81%97%E3%81%A6%E3%80%81%E3%83%93%E3%83%AB%E3%83%88%E3%82%A4%E3%83%B3%E3%81%8B%E3%82%89URP%E3%81%AB%E5%A4%89%E6%8F%9B%E3%81%99%E3%82%8B%E8%A8%AD%E5%AE%9A%E3%81%AB%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%20Material%20Upgrade%E3%81%AB%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%20%E3%82%92%E5%85%A5%E3%82%8C%E3%81%A6%E3%80%81,Initialize%20Converters%20%E3%82%92%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%20%E5%A4%89%E6%8F%9B%E3%81%99%E3%82%8B%E3%83%9E%E3%83%86%E3%83%AA%E3%82%A2%E3%83%AB%E3%81%8C%E8%87%AA%E5%8B%95%E3%81%A7%E8%A8%AD%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82%20%E6%9C%80%E5%BE%8C%E3%81%AB%20Convert%20Assets%20%E3%82%92%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%E5%A4%89%E6%8F%9B%E3%81%8C%E9%96%8B%E5%A7%8B%E3%81%97%E3%81%BE%E3%81%99%E3%80%82)

[URPマテリアル関連](https://zenn.dev/nakaigames/articles/8f2135416fc2b9#particles%2Flit)