公式のfabのホームページには、「 UltraDynamicSky 」は惑星に対応していないと記載されています。しかし実際には惑星に応じた天球を作るオプジョンがあります。アップデートで対応してそのままホームページの記載を変更し忘れたのかは不明ですが、天球を惑星に対応させる手順を備忘をかねてまとめておきます。
アンリアルエンジン アセットのURL「 UltraDynamicSky 」
https://www.fab.com/ja/listings/84fda27a-c79f-49c9-8458-82401fb37cfb
結論
やはり公式HPに記載されているように惑星に対応させるには全機能が対応していないっぽくて、惑星用の天球にするにはやや微妙な感触。もっと調べてみて対応できる方法などが分かれば随時更新して手順を記録しておきたいと思います。
やりたいこと(今後調べること)
- 天球を惑星型に調整して、夜には天球の星が見えるようにしたい。
- オーロラを夜の惑星に表示させたい。
- 惑星上のフォグを生成して、空気遠近法で3km〜の景色はフォグで見えにくくさせたい。
参考動画(雲を惑星状に変更する方法)
How to Make Stunning Planetary Clouds in Unreal Engine 5
手順
雲を惑星の球体にそった形状に変更する
- UltraDynamicSkyをインストールしたプロジェクトで、空のレベルにUltra_Dynamic_Sky ブループリントを配置
- コンポーネントのSkyAtmosphereを選択
- Planet → TransformModeを ( Planet Center at Component Transform )に変更
「 なぜか自分の環境UE5.4.4ではコンポーネントのSkyAtmosphereのトランスフォームが勝手に動くバグ?に遭遇しました。リセットでトランスフォームを0に設定してもエディターでカメラを動かすとX=-891774、Y=474686、Z=0に強制的に移動してしまいます。 」
→ UltraDynamicSkyブループリントの関数の → UpdateSky → Camera Location Dependent Updates → Low Frequency Updates → Update Sky Atmosphere Location(Current Camera Locationピンが刺さっている)のノードの実行を無効にすれば、エディター状でSkyAtmosphereの大きさが勝手に変わることはなくなりました。 - Ground Radiusで惑星の大きさに雲の描画を調整
- 画面を遠ざけると球体状の雲が確認できる
- 惑星の大きさと、雲の球体の大きさを調整して惑星の表面に雲が位置するようにスケールなどを調整
- Ultra_Dynamic_SkyのVolumetric CloudsのVolumetric Cloud Rendering ModeをFull Cinematic Qualityに変更
- Cloud Coverageで雲の密度を調整
- HeightFogのFog Max Opacityを0にするとZ軸マイナス方向のフォグに隠れていた部分が見えるようになる
- Ultra_Dynamic_SkyのVolumetric Clouds → Tracing Max Start Distanceを大きな値にするとエディター状で描画されるときの距離が変わる(どの距離から雲を描画するか?→小さい値だと雲に近づかないと描画されずに雲が確認できない)
スカイボックスの描画を消す(動画内9:45付近)
- Ultra_Dynamic_SkyのCloud WispsのCloud Wisps Color Intensityを0にすると周囲に描画されている天球が描画されなくなる(10:30)
大気の空気の層の描画を調整する
- Atmosphere → Atmosphere Heightで大気の高さを調整
- Atmosphere Rayleigh → Rayleight Scattering Scale を調整すると惑星に沿った淡い大気のような効果を調整できる。
問題点
赤道付近の雲の描画が不自然?
画像のように赤道付近の雲は南北方向に縦に引き伸ばされたような雲になってしまいます。ゲームの方向性にもよりますが、この不自然な描画は好みではないと思う人もいるのではないでしょうか?自分もあまり良いとは思わず、UltraDynamicSkyで雲を作るのは止めておこうかと思っています。
まとめ
今回(24-12-06)の調査では、雲を惑星状に変更する方法と、宇宙と大気の境界線を調整する方法しか分かりませんでした。また追加の調査で冒頭のやりたいことができるかを調査して、本格的にゲームに組み込むかを検討します。
コメント