このシリーズの記事一覧 (クリックで開閉)
【 ナイアガラ超基礎 】
今回はレンダラの基本概念を覚えてリボンレンダラー(Ribbon Renderer)を使ってみる。
引き続き初心者向けということで上級者向けの細かい内容は解説しない。
まずはEmpty
で作成した時ですら自動で追加されているSprite Renderer
をざっくり見て概念だけ把握しておく。
もう知っている人は読み飛ばしてOK。
このSprite Renderer
というのが単純なパーティクルを描画するモジュール。
いまいちわからない人向けに解説すると、上の画像1の部分で「レール」を作ってやって2のレンダラでその「レールに何を走らせるか」を決定している。
厳密に言うとちょっと違うが、レンダラが理解しにくい場合はこのように覚えておけば良いだろう。
Spriteは英語では妖精という意味だが、作ったレールに従って「設定したマテリアルの球」を飛ばすのがSprite Renderer
だと理解しておけばよい。
スプライトレンダラで上の画像にあるMaterial
を変えると飛ばすパーティクルが変化する
例えばデフォルトのマテリアル(画像左)を別のマテリアルに変えてみると(画像右)
※左DefaultSpriteMaterial
右:DefaultParticle
に設定
このようにパーティクルの形状が変化する。
この球の大きさや寿命といったパラメタは実はSprite Renderer
モジュールの中では設定できない。
ここがちょっと意外かもしれないので解説しておく。
レンダラより上にある「パーティクルのスポーン」という箱の中にInitialize Particle
というものを使って各パーティクルの大きさなどを変更する必要がある。
こちらもあまり詳しくやっているとわけがわからなくなるので、よく設定する寿命と大きさの項目だけ見ておけばよいかと思う。
レンダラの設定はここを変えることが殆どで、他はあまりいじらないことが多い。
問題なければデフォルトで良いので基本はこれだけ覚えておけば十分だ。
ただし、レンダラモジュールがなにもないと何も描画されないので注意だ。
さて、スプライトレンダラはもう見飽きてると思うが次のようなレンダリングとなる。
では、デフォルトで入っているSprite Renderer
をRibbon Renderer
に変更してみよう。
レンダラには他の種類もあるが今日はリボンレンダラに絞って解説する。
まずは「レンダリング」の中にRibbon Renderer
を追加しよう。
※Sprite Renderer
はチェックを外すか削除する。
リボンレンダラはデフォルトでマテリアルが「なし」になっているので適当になにか設定しよう。
エンジンコンテンツが表示される設定になっていればDefaultRibbonMaterial
というのが有るのでおすすめだが、正直なんでもいいのでここは割愛する。
マテリアルを設定後Spawn Rate
などでパーティクルをスポーンしても何も表示されないと思う。
リボンレンダラはパーティクルが1点に集中していると何も描画されない。
ひとまずテストとして次に設定する
Spawn Rate
を5
に設定Add Velocity
を追加でZを500に設定Solve Forces And Velocity
を追加(Velocityを使う場合必須)これで再生すると真上に線が飛んでいくのが分かると思う。
Spawn Rate
が5
という非常に低い数字なのに点1コ1コが線で結ばれて「リボン」になっている。
これがリボンレンダラだ。
ここも重要で、リボンレンダラの線の太さや寿命を設定する場合はパーティクルのスポーンにInitialize Ribbon
を追加してそちらで設定する。
上で説明しているがRibbon Renderer
の中に大きさや寿命は設定できないので注意。
※ Initialize Particle
は削除してもよい。
Lifetime
に寿命、Color
で色、 Ribbon Width
に太さがそれぞれ設定できる。
さっそく再生してみると
確かに色や太さが変わっているがなんかピクピクしている。
これはSpawn Rate
が低いのでパーティクルの発生がガタガタしているのが原因。
Spawn Rate
を1000
ぐらいにすればガタガタは無くなる。
ここからは応用編。
まだダイナミックインプットを解説した記事を出していないので分かる人だけ試してみてほしい。
Add Velocity
を次のように変更してみる。
これは何をやっているのかを解説すると
Velocity
をMake Vector
で3つの別々のFloat
に分割Sine
をつかってを左右に揺れるようにScale
やZ
の値を好みで調整たったこれだけだ。
さて、結果は次のようになる。
ひらひらひら
最後にリボンとスプライト(どちらも同じ設定)を同時に描画して何が起こっているかを確認してみる。
見て分かる通りスプライトの点と点を線で結んだものが「リボンレンダラ」だということがひと目で分かると思う。
また単純な直線ではなく自動で柔らかいカーブを描いているのがこのレンダラーの良さだ。
デフォルトでサクッと仕上げるだけでもかなり自然なものが作れる。
リボンレンダラも覚えてしまえば基本の部分は非常に簡単である。
またリボンはゲーム上に配置してゲーム内で動かすと動いた分だけリボンも伸びてくれるのでそれだけで楽しかったりする。
色々工夫して作ってみてもらえたらと思う。