![見出し画像](https://assets.st-note.com/production/uploads/images/32679267/rectangle_large_type_2_dd82b9e99b5868c1ab52bb7590fe9bea.png?width=1200)
パーティクルおばけ
こんばんは!本日もお疲れ様です。龍飛です。読み方は『りゅうひです』
違います。『りゅうひ』です失礼いたしました。🙌
今回は、パーティクルシステムについて面白い技法を発見しましたので共有したいなと思い、記事を書きました!下につらつらと書いていきますが、基本的には此方の記事を参考にしています。
こちらのワールドに用いて反映させました。
(新作人気ワールド紹介を頂きました!ありがとうございます!)
そもそもParticle Systemって?
パーティクルシステムとは、光や炎など、様々な効果をシーンで作成するためにUnityに備わっている機能です。 3Dモデルや地形、アニメーションがあればUnity上でだいたいのものは作れますが、パーティクルシステムがあればより強力な表現力を持つことができます
<引用:【Unity 入門】パーティクルを覚える | STYLY>
つまり、平たく言ってしまえば『パーティクル(粒子)を表現する際に必要となってくるシステム』という事ですね!雪や雨、なんかも表現することができます。
なんでこう言った機能が必要になるのか。粒子一つ一つを作ってワールドに盛り込むことが無駄な作業だからです。ゲームが重くなるし一つ一つの粒子を注視されるわけでもないのに作り込んで一個一個C&Pをする・・・無駄of無駄です。ムダムダムダァ!
それならば登録した粒子となるものをいい感じに降らせたり、配置させたりする工程をシステム化しよう!ということで用いられています。
私のゲームワールドですと、落葉の表現や光の流れの表現などに用いることが多いですね!
これとか
これなんかはパーティクルシステムを使っています。
どうやって作っているの?
Particle Systemをワールドに盛り込む事自体は非常に簡単です。プロジェクト上のヒエラルキーウィンドウから右クリック、Effects→Particle Systemと進めば反映できます。
ここからごにょごにょごにょとすると上のような綺麗なパーティクルが作れるわけですね!
パーティクルシステムの基本を知りたい方は此方へ↓
(スクリプトを用いることでおっそろしく強い表現もできるみたいですが、毎度の通り今回もcluster向けとなりますのでコーディングなしで進めます。)
ちなみに私の今回の構成はこんな感じです。(落葉)
本題
大分話がそれてしまいましたがここからが本題です。私は今回2Dマテリアルでのパーティクルを想定して設計していました。そこで一つ問題が浮かび上がってきました。それは
木が沢山あるのに、基本のパーティクルシステムでは葉っぱのマテリアルを一つしか指定できない。
事でした。もちろん木の種類に対応した個数のパーティクルシステムを生成すれば済む話なのですが、管理が大変になる上配置する際にムラができやすくなってしまいます。今回のワールドでは”景観”を一番大事にしたいという思いがあったためこれは絶対に避けたい課題点でした。
<画像上方ではパーティクルの進む方向がズレたり下方ではムラができる>
そこで、一つのパーティクルシステムに複数の2Dマテリアルを指定する、もしくはそれに類する方法を探しました。
テクスチャを工夫する
そんな中、見つけたのが上述の記事です。その記事では『テクスチャを工夫』してパーティクルで複数の要素を表示していました。一つの画像に、表現したい画像を貼り盛り込みたい2D要素以外の部分を透過してしまい、不透明な部分を一つ一つのテクスチャにするイメージです。
<縦に配置すると良いらしいです。>
上の画像のように、絵の部分を認識してパーティクルの素材とするわけですね。「Alpha Is Transparency」にチェックを入れて活用します。
これを用いることで一つのParticle Systemで複数の画像を表示することができます。
↓追記、Texture Sheet Animation も活用しましょう
https://nn-hokuson.hatenablog.com/entry/2017/10/24/202439
<こんな感じで実は複数の葉っぱが落ちてきているんですよ・・・!次にワールドに入られる際は意識してみてもらえると嬉しいです!>
最後に
Particle Systemは強いです。困ったらこれを入れておけば何とかなるんじゃないでしょうか・・・って感じで入れてもらえるといいんじゃないかなと思います。
特に最近はモバイル端末の処理速度も馬鹿に出来ないもので、clusterワールド内で一度に3000~5000位のパーティクルを表示させてもすいすい動きます。(iPhone 8、宵闇茶屋-桜屋-)
ただ、その分見栄えに気を使わなければなりませんので、特に景観を重要視するワールドでは『くどすぎず、物足りなすぎない』塩梅を探してみるのがよさそうですね!
ありがとうございました!
龍飛