![見出し画像](https://assets.st-note.com/production/uploads/images/50291410/rectangle_large_type_2_576aec6620fd8cb3e83d2163c70caf1d.png?width=1200)
【Unity】HDRPのセットアップ方法
久々にHDRP ( High Definition RP )を使おうとした際、速攻で設定に行き詰った。(※美しいビジュアル映像制作のためには、必須のパイプライン)
HDRPプレビュー版時と設定方法が変わってしまったようだ。合わせて、SkyBoxの設定もわからず・・・。
で、試行錯誤の結果、初期セットアップのやり方が分かったので、メモしておく。
<Unity 2020, 2021>
■事前調査
◇プロジェクト新規作成テンプレートで比較
違いを確かめるため、テンプレートのライティング設定を比較。
・3D(Built-in Render Pipline)
・High Definition RP
![画像21](https://assets.st-note.com/production/uploads/images/50224035/picture_pc_8b8932ccf2748e3e50a580b6809bf2ba.png)
・3D(SkyBoxの設定項目がある)
![画像1](https://assets.st-note.com/production/uploads/images/50213846/picture_pc_712b0a4f0d646995ff95d14265093582.png)
・High Definition RP(ライティングにSkyBoxの設定項目が無い)
※環境設定でVolume系プロファイルを使う気がするがやり方わからず。
![画像2](https://assets.st-note.com/production/uploads/images/50213982/picture_pc_c087437888073535991392de25604389.png)
◇ネットの知見を調査した結果
以前、HDRPの設定は、ゲームオブジェクト>レンダリング>Scene Settingsという項目で設定したようだ。
ただし、Unity 2020版では項目自体無くなっている。
![画像3](https://assets.st-note.com/production/uploads/images/50214314/picture_pc_6a2c35fe5102865fd63ddb50a3e964cf.png)
試行錯誤した結果・・・
最終的に海外アーティストの動画で解決方法を見つけた。
●
●
●
■HDRPとSkyBoxの設定方法
・・・ということで、HDRPのセットアップ方法を説明。
大雑把な設定手順の概要を説明すると下記のような感じ。
HDRI初期セットアップ
プロジェクト設定で、HDRPの設定ファイルを読み込む
ライティングで、プロファイルを作成する
Sky Box設定
ポストプロセス追加
Volume系のゲームアセットを作成し、インスペクターで、個々の設定を追加。設定項目を
調整していく。
あと、今回作成したアセットファイルは以下の通り。
![画像23](https://assets.st-note.com/production/uploads/images/50309644/picture_pc_ba27415c548122a82385785d69628c34.png?width=1200)
■HDRPの初期セットアップ(下準備)
まず、HDRPのテンプレを使わず、素の状態で下準備から始める。
プロジェクト新規作成時のテンプレートは、「3D」を選ぶ。(標準のBuilt-in RPになるが、HDRPを後から上書きするのでこのまま進める)。
![画像28](https://assets.st-note.com/production/uploads/images/54292710/picture_pc_3df02e592b2b5c9559fea023042b70ae.png?width=1200)
プロジェクトが新規作成され、Unity Editorが起動した後、パッケージマネージャーを起動し、HDRPパッケージをインストールする。
※該当項目が現れない場合、パッケージはUnityレジストリを選択。
![画像27](https://assets.st-note.com/production/uploads/images/54292651/picture_pc_c6069c8b2be71ec07aa454fc6fdfddfa.png?width=1200)
次にHDRP用設定ファイルを作成する。
アセット>レンダリング>High Definition Render Asset を作成。するとプロジェクトウィンドウにHD Render Pipeline Assetファイルが作成される。
![画像8](https://assets.st-note.com/production/uploads/images/50217888/picture_pc_e14bd5199bb275ec9ded353e79540cc7.png?width=1200)
※Unity2021だと同じメニュー項目が日本語ローカライズされている。
![画像30](https://assets.st-note.com/production/uploads/images/54293265/picture_pc_44120d8e4b3a3f790cf6e710ae160ffe.png)
それから、編集>プロジェクト設定 を開き、グラフィックス>スクリタブルレンダーパイプライン設定 で、HD Render Pipeline Assetファイルを選択設定。
※これで、HDRPに対応した編集ができるようになる。
![画像9](https://assets.st-note.com/production/uploads/images/50217994/picture_pc_23555c2e2465ac077e4139144de806a8.png?width=1200)
ついでに、品質>Rendering で、HD Render Pipeline Assetファイルを設定。品質>HDRP でレンダリングの詳細設定編集可能。
※この内容は、プロジェクトに生成されたHD Render Pipeline Assetファイル>インスペクター で表示される内容と同等。
![画像23](https://assets.st-note.com/production/uploads/images/50802514/picture_pc_91e86ecbf2589bec8dda70e17ea862cf.png?width=1200)
![画像24](https://assets.st-note.com/production/uploads/images/50802706/picture_pc_871590ebe9ad2e3de3b327b8e7b3ab6d.png?width=1200)
最後にライティングを設定。
ライティング>シーン設定 を設定。
ライティング設定は、新しいライティング設定ボタンをクリックして作成。
![画像25](https://assets.st-note.com/production/uploads/images/50284677/picture_pc_e331dd303eb20cc5bbb45d190714954e.png)
ライティング>環境設定 を設定。
Sky and Fog Settings Profile (Volume)プロファイルを選択設定。
![画像27](https://assets.st-note.com/production/uploads/images/50873972/picture_pc_a9b7cc7e4c941922ab9b8b2ca8ac6f6f.png?width=1200)
これで、HDRIの初期セットアップ完了。
●●●
■SkyBox設定
ヒエラルキーウィンドウにSky and Fog Volumeを作成。
(ゲームオブジェクト>ボリューム>Sky and Fog Volume)
※今回、プロファイラーが自動設定されるSky and Fog Volumeで
作成したが、任意に設定したいならGlobal VolumeでもOK。
![画像21](https://assets.st-note.com/production/uploads/images/50283009/picture_pc_36faa67f51dae0adb544a57701f09820.png)
Sky and Fog Volume>インスペクター を設定していく。
Add Overrideボタンをクリックして、Sky>HDRI Sky を選択設定。
![画像24](https://assets.st-note.com/production/uploads/images/50284585/picture_pc_0b1567470bca9f871c5d55fc567d82ad.png)
HDRI Sky>HDRI Sky の入力ボックスにHDRIキューブマップを適用したマテリアルを選択して設定する。
![画像23](https://assets.st-note.com/production/uploads/images/50283143/picture_pc_79c47944a7ec2dea3232f4fbf294e49a.png)
Sky and Fog Volume>インスペクター の全体状態。
![画像5](https://assets.st-note.com/production/uploads/images/50217408/picture_pc_e12e69aa137cfc12eac8f1de666116a0.png?width=1200)
あと、以下の設定を確認。
Visual Enviromment>Sky>タイプ をHDRI SKYに設定する。
![画像26](https://assets.st-note.com/production/uploads/images/50873168/picture_pc_8c2833e78782769e373542727e813152.png)
ライティングウィンドウで、Enviromment (HDRP)>Static Lighting Sky をHDRI SKYに設定する。
![画像24](https://assets.st-note.com/production/uploads/images/50284341/picture_pc_c81eee04a460267e0022d564601b5310.png)
ビューポートでHDRPの表示具合を確認。
![画像27](https://assets.st-note.com/production/uploads/images/50292814/picture_pc_222aba72a711befda8280f2cf9d5691b.png?width=1200)
これで、SkyBoxの設定完了。
■参考:HDRIキューブマップを適用したマテリアルの作成方法
まず、プロジェクトにインポートしたHDRI(HDRイメージ)をキューブマップに変換。
次にプロジェクトウィンドウ>HDRIを選択し、インスペクターで、キューブマップを設定。
![画像15](https://assets.st-note.com/production/uploads/images/50219296/picture_pc_007fd03b2b156ea429af0e51a23e83e1.png)
その後、変換ダイアログが表示される。変換後は、わかりやすいようにサムネイルアイコンのイメージが変わる。
![画像23](https://assets.st-note.com/production/uploads/images/50302232/picture_pc_0b4ccbe3e9ecdc15d75ccfcd7da5f2d8.png)
あとは、マテリアルのCubemap(HDR)スロットにHDRIキューブマップを適用するだけ。このマテリアルをSkyBoxの設定に利用する。
<やり方>
プロジェクトウィンドウにマテリアルを新規作成する。
そして、マテリアル>インスペクター>Shaderのポップアップメニューで、Standardの設定をたどって、SkyBox>Cubemapに変更。
するとインスペクターの内容がCubemap設定表示に切り変わるので、
Cubemap (HDR)のスロットに(キューブマップに変換した)先ほどのHDRIテクスチャーを適用する。
■トラブルシューティング
◇ビューポートの背景にHDRIの画像表示されない
下図のビューポートの表示設定を確認してみる。リスト中のSkyboxが、チェックされて、表示設定が有効になっているかどうか確認。
![画像24](https://assets.st-note.com/production/uploads/images/50285859/picture_pc_19b8b8bb39a55ba3dc3fe59d5de5d09e.png)
◇HDRPがインストールされているかどうか確認したい
パッケージマネージャーで確認できる。(項目を表示させるには、Unityレジストリを選択)
![画像24](https://assets.st-note.com/production/uploads/images/50283728/picture_pc_b59375234d3a61bf74bc654693965202.png?width=1200)
◇HDRI Skyに切り替わらない
Sky and Fog Volume>インスペクター>Visual Enviroment>タイプ で、HDRI Skyに切り替わらない場合は、先にライティングの設定のプロファイラーの設定を試してみる。
◇オブジェクトへの照明が強すぎる
HDRI Skyを設定してライトのEmission設定で、Intensityの値調整時、オブジェクトへの照明が強すぎる場合は、HDRI Sky>Intencity ModeをLuxに設定すると緩和された。
(※ただし、このやり方が正解かどうか不明)
![画像27](https://assets.st-note.com/production/uploads/images/50291126/picture_pc_3ffdb5521d0c89bb65ea27fc9f67baeb.png?width=1200)
◇HDRIの地面部分がぼやけてしまう
Sky and Fog Volume>Fog 設定のEnableの右端オプションが有効になっている場合は、無効にしておく。
![画像26](https://assets.st-note.com/production/uploads/images/50286732/picture_pc_5c2f95af86d01898708ad77d26b219bc.png)
![画像25](https://assets.st-note.com/production/uploads/images/50286658/picture_pc_775f1be0004d23a4821d3b1b67f27c1e.png?width=1200)
■ポストエフェクト追加
AOやBloom等のポストエフェクトを追加したい場合は、ヒエラルキー>Sky and Fog Volume>インスペクター の設定で、Add Overrideボタンをクリックして表示されるリストから追加していく。
<例>
・Lighting>Ambient Occlusion(AO:遮蔽部の陰影)
・PostProssesing>Bloom (光の飽和)
・PostProssesing>Depth Of Feld(被写界深度)
※ここで設定したアンビエントオクルージョンは動的に動作をする。(SSAO、サブサーフェスAO)
※一方、静的なアンビエントオクルージョンの設定も可能。
その場合、一旦動的な設定を無効にしてから、各オブジェクトのインスペクター>「静的」を有効にした後、ライティング>シーン>アンビエントオクルージョンを有効にして、ライトマップをベイクする。
「静的」というのは、ライトマップのベイク対象にするという意味。
![画像26](https://assets.st-note.com/production/uploads/images/50285173/picture_pc_7077af1bf6f9c6a36040e3cf033ab4c8.png)
■参考動画
以上。