Beamを紐解いてビームの基本を理解する。一覧をサムネイル付きインデックスで見るビームって何?ビームを例で見ていく。Beamを追加したナイアガラシステムを作る。Beamというのもある。Beamモジュールが増えただけ。このモジュールは難解なのでひとまずスキップ。再生してみると...うん、ビームだ(?)これが表示されてゆっくり消えていくだけ。基本はここに詰まっている。ビームのメリットゲームを作らないのであまり詳しくないのだが、恐らくビームのメリットは終点を明示的に指定できることなのではないだろうか。適当な方向へ飛んでいってしまうパーティクルと違い、敵にビームを当てるような動作で座標コントロールが可能でプログラムしやすい。ビームは少しクセがあるビームを作る時に使うモジュールは球を飛ばす時とはちょっと挙動が違うのでじっくり理解する必要がある。いうわけで今回も「各モジュールが何をしているか」ということにフォーカスして解説する。Rendererである。Rendererでもちゃんとドットが描画される。Instantaneousを使う。なんで?というのには理由があって「時間差で生み出されたパーティクルは別のビーム」という挙動らしく「まったく同時に生成されたパーティクルのみ線で結ぶ」というのがビームだからだ。Instantaneousを何回かに分けてやれば、複数のビームをつなげること無く分ける事ができる。※一つのエミッタで複数のビームを打った例。Rendererの場合Spawnする位置をLocationモジュールで決めていたが、ビームのときだけなぜか特殊なやり方でロケーション(のようなもの)を定義する。次の2つを必ずセットで使う必要がある。Beam順に解説する。Instantaneousの下になっても良い。ビームのスタート位置。これをチェックしていると絶対値になる。ゲームに配置して動かしたときに常に一定の座標に向かっていくイメージ。長さなどはここで調節する。難しいので詳しくは割愛。直感的に試すと面白い。Endに設定しているという点。この設定を確認しよう。Beamを入れて初めてビームが描画される。なんとこちらはモジュールを挿すだけでOK。Beamはパーティクルのスポーンに入れるということを間違えないように。わからん恐らく裏で動いてるコーディングの兼ね合いでこのような構造になっていると思うが、こういうものだと覚えるほかない。基本的にはここまでの解説でビームは完成しており、描画はされるはず。ここからは外観を定義していくモジュールを解説する。Widthというものを追加する。こちらがその名の通りビームの幅を決定するもの。Amountの2つだけ。Widthにビームの帯の太さを入れれば良い。システムが用意しているBeamエミッタから作成した場合はここにカーブのダイナミックインプットが入っており、頭と尻尾が細くなるようになっている。Twistの値を見る感じ「ビームをねじるもの」っぽいイメージがあるがここの数字をいじってもビームがピクピクするだけで特に変化がないようにみえる。これは実際にはねじっているのだが「全てのパーティクルが同じ角度ねじられている」ので、ただ全体が回転しているだけの結果になってしまうため。ここは初心者向けではないのでわからなければスキップでよいが、次のダイナミックインプットを組み合わせるとパーティクルごとに角度に差ができてねじりが表現できる。Indexはパーティクルに振られた番号を0~1に正規化して返すモジュール。これを乗算することで後ろのパーティクルにいくほど角度が付くというわけ。Timeを弄っても、なぜか表示しなくなるだけで意味不明になる初心者は多いと思う。Timeに2を入れた場合は「最初の2秒間は描画しないでね」という設定なので注意だ。Durationを調整しよう。このままだと同じ位置に描画されるだけなので、好みの方法でビームをずらそう。例1上記の設定で1つのエミッタで複数のビームを発射する例を作る。Cosineを設定した例。videos.Periodを1からちょっとずらすことで花びらが重ならないように回転する。Forceを入れた例。Forceはおまけこれは悪い例です正直上の例は単一のビームエミッタを使ってサクッと見栄えが良いもの...で作ったのでビームのメリットが活かせておらず、あまり良い例ではない。複雑なモジュール+複数のエミッタを重ねてターゲットにスパっと飛んでいく面白いビームを各自つくってみてほしい。今回はビームを紹介したが、ビーム系を作る時は必ずこの方法でなければいけないわけではない。この方法は「終点を簡単に設定できる」というメリットを活かすため(だと思う)軌跡をもっと複雑にしたい場合などでは普通にパーティクルをリボンで繋ぐだけのほうが良いかもしれない。モジュールの種類にクセがあるので完全に覚えなくても気になったらここに返ってきてもらえたら幸いである。このタイプのエミッタを使うと雷エフェクトが簡単に作れるが、そちらはまた別の記事で。Engineこの記事をシェア著者Ultra-Noob謎の技術研究部部長。3DCG以外にもDTMやプログラミング等も研究する。謎の技術研究部とはプライバシーポリシーホーム(自動スクロールなし)ご意見、お問い合わせ。