この記事の3行まとめ
QualiArtsは2024年5月31日(金)、「Unity SRPとVolumeを用いた雲の表現」と題した記事を同社の技術ブログ「QualiArts engineer blog」にて公開しました。
同記事は「Scriptable Render Pipeline」(SRP)を使ってマテリアルやテクスチャの作成コストを軽減しつつ、雲の色の変化や部分的な速度変化を表現する手法となっています。
Unityで雲を表現する方法には、雲のモデルを使用する方法や、Skyboxのマテリアルとして設定するテクスチャに雲を描く方法などさまざまなものがあります。方法によっては負荷や変更コストがかかってしまうため、雲で表現したい要件を定め、それに合った方法を用いることが大切です。
今回の方法では、雲のモデルデータはメッシュを筒状にしたものを使っています。雲の速度は、大量のデータ保存に使用できるデータコンテナであるScriptableObjectに雲のメッシュデータとともに設定。
また、背景色に合わせて雲の色を変えたり、天候状況の変化によって雲の移動速度を変えたりするには全体の速度変更や色の乗算の設定をできるようにしておく必要があります。これはVolumeComponentで調整できるようにしています。
これらの要素をSRP上でScriptableRenderPassを継承したクラスを作成し、ScriptableRendererFeatureを継承したクラスでそのパスを追加する処理を記述することで雲それぞれの独自の描画パスを追加しています。
この手法は、デザイナーが雲の描画設定に取り組みやすくなるという点でも有用であるとのこと。
詳細はQualiArts engineer blogをご確認ください。
「Unity SRPとVolumeを用いた雲の表現」QualiArts engineer blog