Develop

Physically Based Skyでリアルな太陽を作る

Physically Based Skyでリアルな太陽を作る

Physically Based Skyとは

大気のシミュレーションを行い、球体惑星の空をシミュレーションすることができる機能です。Directional Lightを用いて太陽光などを再現することができます。

バージョン

HDRP初期から搭載されている機能。そのため使用できる最小バージョンは不明

今回使用するバージョンは以下の通り

  • Unity 2022.3 LTS (2023/9/8時点でのLTS)
  • High Definition RP 13.1.9 (Manual)

やり方

  1. 初めにHDRP環境を用意します。今回はUnity Hubのテンプレートから3D(HDRP)を指定しプロジェクトを作成します UnityHub_3D_HDRP
  2. プロジェクトを開いたら、HierarcyからVolumeコンポーネントをアタッチしてるゲームオブジェクトを選択。デフォルトではSky and Fog Volumeという名前のゲームオブジェクトがこれに該当する Hierarcy
  3. 選択しInspectorのVolumeコンポーネントを確認。このコンポーネントのAdd Overrideで追加する。私がプロジェクトを作成したときは、初めからPhysically Based Skyが追加されていた。Physically Based Skyが存在しない場合は、Add Override > Sky > Physically Based Sky でオーバーライドを追加できる Inspector_Volume
  4. あとはDirectional Lightを設置する。なければ追加する。またこの際、LightのEmissionの値を適宜変更する。太陽光の場合はEmissionのIntensityが130,000(lux)が物理的に正しい値らしい Inspector_Light

動作

Directional Lightを回転させれば、連動して太陽が動く。ほかにも各種パラメータがあるが、詳しい説明はまたいつか work

参考

  • Unity Japan様の動画 (該当部分より再生開始)