【Unity】夜空の綺麗な星空をスカイボックス…ではなく、パーティクルで作ってみた!

 こんにちは~!新入社員のタケです!


皆さん、Unityで星空を表現したいときはどのように作りますか?

スカイボックスもいいけれど…?


今回はスカイボックスをどうしても使いたくなかったのでパーティクルで星空を作っていきます!

どういうこと…?と思うかもしれませんが、まずは完成した星空を見ていただきましょう!


このようにキラキラアニメーションしている星空を作ることができます。

工夫次第では動画のような流れ星も付けることができますよ!

では早速仕組みを見ていきましょう。


まずはShapeでHemisphere(半球状)にパーティクルを放出させます。

これでドームの形にパーティクルが広がってくれるので中から見ると星空っぽくなりますね。


Radiusも広げて周囲の山などにかぶらないようにしておきましょう。


Emissionの中のRate over Timeは一秒間にいくつパーティクルを出すか?という設定です。

この綺麗な星空を作り出すには1秒間に1200個ものパーティクルを出しているのですね~


このままではあっという間にMax Particlesの上限に来てしまうので私は5000くらいにしてみました。

これで大体5000個くらいのパーティクルがずっと出てくるので空いっぱいに星が広がりましたね。


星は基本的に止まっているように見えるのでStart Speedは0にしておきましょう。

LifeTimeやSizeはRandom between two constraints機能を使って二つの値の中からランダムに選ぶようにしておくと、それぞれの星のサイズ等がバラバラになってくれるので自然になります。


StartColorを変えるとたまに赤色の星や青色の星を出したりできるので、より夜空っぽくなります。


他にはSize over Lifetimeを使ってサイズを大きくなったり小さくなったりするアニメーションを作り、星のキラキラを演出します。


これで完成です!

周囲よりも大きな星はこのパーティクルを複製して出てくるパーティクルの数を減らし、Start Sizeを大きくすると作れます!

組み合わせるとぐっと星空感がアップしますよ!



パーティクルが常に5000個近くで続ける状態なのですが、意外とVRでも重くなることはありませんでした。

不安ならもう少し減らしてあげてもOKかもしれないですね!見た目を見ながら調整していきましょう。


--------------------------------------------------------------------------------

シェルパでは、3DCGや建築パースはもちろん
VRやARアプリの開発も行っています!
新しいことに興味のある方はきっと楽しめると思います!
新人研修も充実していて初心者でも3DCG経験者でも安心!

株式会社シェルパ
【福岡本社】
〒810-0042 福岡県福岡市中央区赤坂1丁目13-10赤坂有楽ビル7F 
【東京オフィス】
 〒101-0041 東京都千代田区神田須田町2丁目13-1YKS黒田ビル5F
TEL 092-717-6800 / FAX 092-717-6801

--------------------------------------------------------------------------------


コメント

コメントを投稿