夏ですねー。
世間の人々は、海水浴に行ったり、バーベキューをしたり、花火を見たりしているのでしょねー。
まあ、ぼっちの僕には縁遠い話だがなぁ!
というわけで今回は、AssetStoreで公開されている稲妻のアセットを使って、夏を楽しんでいる人々を絶望のどん底に落としてみましょう。
残念ながら、現在のUnityでは現実世界に影響を与えることが出来ません。
そのため気分を味わうだけになりますが、少しはこの夏の鬱憤が晴れると思いますよ。
この記事にはUnity2018.2.3f1を使用しています。
.Netのバージョン設定には.Net4.x (4.6相当)を使用しています。
Asset「Lightning Emitter」のバージョン1.383を使用しています。
Unity アセット真夏のアドベントカレンダー 2018 Summer!参加記事です。
http://assetstore.info/eventandcontest/adventcalendar/asset-adventcalendar2018summer/
あらすじ
- Lightning Emitter のアセットを使って稲妻を作った。
- 形やエフェクトなどいろいろなことが設定できた。
稲妻を作るアセットを紹介するぜ
今回は、稲妻を作成するアセットとして、Lightning Emitter を使っていきますよ。
assetstore.unity.com
このアセットを使うことで、こんな稲妻演出を作ることができました。
どうやら私を本気にさせたようだな。 pic.twitter.com/UVpr3enkAj
— うら干物 (@urahimono_maigo) August 12, 2018
全ては私が中心にまわっているのだよ。 pic.twitter.com/ZD1ezOClQ7
— うら干物 (@urahimono_maigo) August 12, 2018
私に逆らうとは、愚かな。 pic.twitter.com/VUz6s7qPMj
— うら干物 (@urahimono_maigo) August 12, 2018
おお、いい感じに稲妻が発生していますよ。
この演出を作るのに大した時間もかからず、結構簡単に作れましたよ。
チュートリアルを見ていこうぜ
では、Lightning Emitter 使い方を見ていきましょうか。
まず、チュートリアル用の動画が用意されています。
そちらご覧くださいませ。
そしてアセット内には、チュートリアル用のシーンも用意されています。
このシーンを順番に見ていくことで、Lightning Emitter をより詳しく学ぶことが出来ると思いますよー。
早速稲妻を作ってみるぜ
では、上記で学んだことを実践してみましょうか。
メニューから稲妻オブジェクトを作成だ
チュートリアル上では、すでにシーン上に稲妻生成用のオブジェクトが Hierarchy 上に配置されていました。
ただこれ、一から稲妻を作るときはどうすればいいんだ?
チュートリアルからコピペしてくるのか、それとも自分でスクリプトをアタッチしていく必要があるのか……。
と思ったら、ちゃんと用意されていました。
上部メニューより、
GameObject > Effects > Lightning Emitter
を選ぶことで、稲妻の基礎となるオブジェクトが生成されますよ。
ただ、本当に基礎部分となるので、実行してもこんな風になってしまいます。
稲妻でもなんでも無ぇよ。
ここから少しずつ稲妻にしていきましょう。
マテリアルを設定だ
とりあえず、この白い四角では、稲妻感がゼロなので、マテリアルから設定していきましょう。
基本、稲妻の設定には、LightningEmitter オブジェクトに付いている Sox Ltn のパラメータを変更することで設定します。
稲妻用のマテリアルは、いくつか用意されています。
今回は、LTNWide を使っていきましょう。
設定することでこんな感じになります。
これで稲妻感は出てきました。
ノードについてだ
さて、稲妻の表現には、LightningEmitter オブジェクトの子オブジェクトである、ノードが重要になってきます。
稲妻の演出は、このノード順に流れていきます。
そのため、ノードの形を変えることで、そのノードに沿った稲妻を作ることが出来ます。
どうやってノードを増やすんだよ
デフォルトでは、ノード数は三個設定されています。
でも、複雑な稲妻を作るのなら、このノードの数を増やしたいものです。
では、どうやってノードを増やすのか。
Sox Ltn にノード数を調整するプロパティがあります。
そこで変更しましょう。
増やしたノードを複雑な形にすれば、同じように複雑な稲妻が作成できます。
注意してほしい点は、直接 Hierarchy 上でノードを増減させてはいけないということです!
ノードはSox Ltn が管理しているので、勝手に増減させても元に戻ってしまいます。
ノードのプロパティだ
ノードにも設定するプロパティはいくつかあります。
少しだけ見てみましょう。
一番使うのが、Cirle Areaでしょうか。
このプロパティは稲妻が通る範囲を指定できます。
真ん中のノードだけ 1、他を 0 で指定するとこんな感じになります。
稲妻の寿命と変化だ
では稲妻の基本的なプロパティを見てきましょう。
Sox Ltn の Play control あたりが基本的な設定になります。
- Auto Activate at Birth
実行時にすぐ生成するかのフラグ - Looping
繰り返すかのフラグ - Duration
稲妻生成時間 - Rate
1秒あたりにどれだけの稲妻を生成するか
この中の Rate の値を大きくすることで、濃密な稲妻にすることができます。
色や太さ、フェードイン・アウトも指定できます。
このプロパティを上記のように変えると、こんな稲妻も表現できます。
テクスチャのUVだ
テクスチャのUVに関するプロパティもあります。
まずUVスクロールをやってみましょう。
稲妻が動いている感じが表現できます。
他にもテクスチャアニメーションもできます。
このアセットにはテクスチャアニメーション用の稲妻マテリアルも用意されているので使ってみましょう。
うにょうにょした稲妻が表現できます。
エフェクトと連動だ
作った稲妻とエフェクトを連動することも出来ますよー。
Linked particle objects のプロパティにエフェクトを設定することで、稲妻の生成とエフェクトを連動できます。
Linked particle objects には複数のエフェクトが指定できるようになっていますが、これはノードと連携しています。
インデックス0 のエフェクトは、ノード0 の場所で発生するような感じです。
いい感じじゃないですか。
そして明日へ
Lightning Emitter を使うことで、こんな感じで稲妻を作ることが出来ます。
稲妻に興味がある方は一度お試しください。
ただ一つだけ言えることは、このアセットを使っても、
夏を楽しんでいる人々を絶望のどん底に落とすことは出来ませんでした。
それだけは報告しておきます。
明日のUnity アセット真夏のアドベントカレンダー 2018 Summer!は、汗人柱さんの「Dynamic Bone」についてです。
Unity AssetStoreまとめ
よかった、明日の担当が汗人柱さんで。
僕が茶を濁してしまったこの空気を何とかしてくれるはず……。