今回は、本格的な天候システムを実装することが出来る「WeatherMaker」というアセットを紹介したいと思います。
このアセットを利用することで、天気、空、夜のサイクル、稲妻等様々な天候を簡単に組み込むことが出来ます。
【Unity】「WeatherMaker」で本格的な天候を実装しよう!
とりあえず、適当にシーンを作りましょう。
私は、WeatherMaker/Demo/DemoResoucesに含まれている「SimpleTerrain」を利用することにします。
これは、サンプル用として用意されているTerrainですので、必ず利用する必要はありません。好きな環境を作成してもらって構いません。
WeatherMakerPrefabの配置
使い方は非常に簡単で、基本的にプレハブをシーン上にドロップするだけでOKです。
というわけで、Prefabの中にある「WeatherMakerPrefab」をシーン上にドラッグ&ドロップします。
このプレハブから、様々な天候を再現することが出来ます。天候に関わるデータ自体は、Profileにあります。各天候に関する調整はProfileのパラメータを変更します。
Lightingの設定
この時点で、デフォルトで用意されている「Directional Light」は不要ですので非アクティブにするなり削除するなりしておきましょう。
続いて、「Window」→「Rendering」→「Lighting」を開きます。
Environmentタブを開いて、Skybox Materialを「WeatherMakerSkyBoxMaterial」に変更してSun Sourceを「Sun(Light)」にします。
Sunは、WeatherMakerPrefab/DayNightCycle/SunRootの中にあります。
雲を作成する
それでは実際に色々といじってみましょう。
まずは手始めに雲を作りたいと思います。
現状はこんな感じに太陽が存在するだけで、雲一つない晴天の状態だと思います。
雲は、FullScreenEffectsのCloudsにある「Cloud Profile」を参照することで、好きな雲を選択することが出来ます。
私は、「WeatherMakerCloudProfile_LighlScattered」にしてみました。
画像となっているので分かりませんが、実際はリアルタイムで雲が動いています。
雲の形状も非常に豊富となっているので、色々とProfileを変更してみると面白いと思いますね。
雨を降らせる
続いて、雨を降らせてみようと思います。
Precipitationを選択して「Precipitation」を「Rain」に変更します。
また、その下にあるPrecipitation Intensityを0から1にします。
この状態にしたらゲームを実行してみましょう。
するとこんな感じで雨を降らせることが出来ます。思いっきり晴れているのにもかかわらず雨が降っているので違和感がありますが、このように簡単な設定で雨を降らせることが出来るわけですね。
また、雨の音も同時に再生されるんですけどこれがかなりリアルな出来栄えです。
Precipitation Intensityのバーを調整することで降水量を変更することが可能ですね。
デフォルトの0のままだと、Rainに設定してても雨が降らないので気を付けてください。
雪やみぞれなども適宜Precipitationを変更すればOKですので、初心者でも簡単にカスタマイズすることが出来ます。
まとめ
ゲーム開発の効率を大幅アップしてくれるだけでなく、使い方がとても簡単なので初心者ゲーム開発者にもとてもおすすめのアセットと言えるでしょう。
他にもまだまだたくさん便利な機能がありますので、また別の記事で紹介できたらと思います。