【Blender To Unity】Blenderで作成した背景をSkyboxにする方法

Blenderで作成した背景をSkyboxにするまでのフローに関する記事です。
【使用ツール】
Blender 3.6
Unity 2022.3.22

# 完成イメージ

(Blenderで作成した背景)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/fd0935ba-f660-d483-ffe7-4f38fb495a9f.png)

↓

(Unityへのセットアップ後)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/f790eb76-06de-3445-277b-94cf96cf2aa1.png)

# 手順
### ①カメラを設置・設定の変更をします

Render PropertyからRender EngineをCyclesにします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/2f5ee297-16eb-6422-4eb7-be5f1c6f7321.png)


Shift+Aからカメラをビュー上に設置します。
カメラを選択し、Data(Object Render Property)を開きます。
![スクリーンショット 2025-02-11 124053.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/48b6ca83-8b66-7fa5-6e4a-ecc89aab3fef.png)

Lensの設定を次のように変更します。
・Type : Panoramic
・Panorama type : Equirectangular

(Type)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/28a376e0-5fc4-38d1-6a33-1cf2b522bde6.png)

(Panorama Type)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/ab623ae1-6996-bfc1-8fbd-7ef736d310ae.png)

Render Propertyの1つ下にあるOutput Propertyを開きます。Resolutionの比率をXが2、Yが1になるように変更します。例えば、Xを4096にした場合、Yはその半分の2048になるようにします。
![resolution.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/629be5af-e755-eec5-161f-63caa87141a5.png)


### ②カメラの調整をします

カメラを選択して3Dビューの右上にある < マークをクリックします(ショートカットはNキーです)。

![view.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/ebf6b573-cb20-da1e-2f8f-f318962e8745.png)

Viewタブの中からCamera to Viewのチェックボックスにチェックを入れます。

![viewtab.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/c45cd4bb-2783-c22d-8663-7a420a7de35f.png)

この状態で左上メニューバー下のViewタブからCameras > Active Cameraを選択します(ショートカットは、テンキーの0です)。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/8c04b52e-346f-5489-3bfe-8ae2eb2433c8.png)

再び3Dビューの右上にある < マークをクリックし、ItemタブのRotationから撮影位置を調整します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/e2114218-d243-d1fb-7884-c6230e5caf1e.png)


### ③レンダリングします
撮影位置の調整が終わったら、メニューバーのRenderタブから、Render Imageを押下します(ショートカットはF12です)。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/08bd5275-2c8d-e47d-c17e-13efb4df888c.png)

レンダリング後の画像を保存します。左上のImageからSave As...を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/18299748-5afd-52e7-846e-797fa1c7e3cb.png)

保存する際に、File Formatを「Rediance HDR」に変更し、保存します。

【Tips】
形式はOpenEXRでも問題ありません。
しかし、基本的にHDRは軽量であるため、ゲームや3DCGのライティング用に最適です。一方で、EXRは精細で編集しやすいため、映画やCGの合成編集用に使われます。今回は、Unityのskybox向けに作成しているため、HDRで保存します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/739b1036-2873-b8b8-fe36-28654866c48a.png)

### ④UnityでCubemapを作成します
保存したHDRファイルをUnityのProjectタブにドラッグ&ドロップし、インポートします。
インポートしたHDRファイルをクリックし、Inspectorを開きます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/069bfaae-dbe5-a663-1a2f-7ac601189fe7.png)

Inspector上で次のように設定を変更します。
・Texture Shape : Cube
・Mapping : Latitude-longitude Layout(Cyrindrical)

![スクリーンショット 2025-02-11 131041.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/2a004550-dfa8-8d29-f001-9a4a204531c5.png)

変更が終わったら、Inspector下部のApplyボタンを押下します。

![スクリーンショット 2025-02-11 131729.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/5112482d-248c-f8d6-5414-2a67505081bf.png)


【Tips】
Latitude-Longitude Layoutは、緯度・経度に対応した形式です。手順①でLensのPanorama typeをEquirectangularに変更しましたが、これに対応するマッピング形式です。

### ⑤Skyboxマテリアルを作成します
Projectタブの何もないところでで右クリックし、Create > Materialを選択します。
![スクリーンショット 2025-02-11 131920.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/167454f6-8dc5-d0b8-a371-1f8ceb770dde.png)

作成したマテリアルのInspectorから、Shaderのプルダウンを押下します。その中でskyboxと検索し、一覧からCubemapを選択します。
![スクリーンショット 2025-02-11 132059.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/6c14d043-d569-ba1a-94f8-7729dd08f66e.png)

Cubemap(HDR)の右側にあるNone(Cubemapの部分に先ほどインポートしたHDRファイルをドラッグ&ドロップします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/2e0cad79-b0ca-0535-6071-43c6768e9c17.png)

### ⑥Skyboxをシーンに適用します
画面上部のWindowからRendering > Lightingウィンドウを開きます。
![スクリーンショット 2025-02-11 132506.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/c6c7ba0d-d315-97b3-1101-a571ade82cf6.png)

Environmentタブを開き、Skybox Materialの部分に作成したSkyboxを設置します。
![スクリーンショット 2025-02-11 132845.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/ede027dc-392f-71c4-876b-d1c2421a3ead.png)

現在のシーンにSkyboxを適用することができました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/1fa35969-9943-8877-6268-347cc5da4cd2.png)

【Tips】
Skyboxの角度を変更したい場合、作成したskyboxを選択してInspector上のRotationの値をいじることで変更できます。

(セットアップ後のイメージ↓)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3984019/dd4d41a3-056b-b5dd-c71b-8be10fc1bfd3.png)