🗂

メテオフォールをVFX Graphでつくろう (SGL006)

2022/01/17に公開

VFX力を強化するために模写した.

完成品

https://www.youtube.com/watch?v=gRk76LSQU3o

作り方

元ネタがあるのでそっちを参照

https://www.youtube.com/w3Xzzs1TWpk

全体像

overall

雑解説

5つのParticleSystemから構成

  1. 出力位置/軌道を決定するSystem (円柱で発生場所を指定)
  2. 炎の尾(暗め)を表示するRibbon
  3. 炎の尾(明るめ)を表示するRibbon
  4. 地面にあたったときの火の粉を発生させるSystem
  5. 接地面の炎跡を表示するSystem

1. 炎の出力位置を決定するSystem

Initialize

  • ArcConeでInitializeするときの生成位置を決定する
  • VelocityRandomで-20%くらいの減衰範囲で玉の落ちるスピードを決める

Update

  • TriigerEventRate[Over Distance]で距離に応じて炎の尾のイベントを発火する.
  • CollideWithPlaneで地面との接地判定で死ぬようにする
  • TriggerEventOnDie(10)で地面にぶつかったときに火の粉の跳ね返り表現
  • TriigerEventOnDie(1)で地面に跡を残す

system1

2. 炎の尾(暗め)を表示するRibbon

Initialize:

  • ParticleStripにして線を末尾に引く
  • InheritSourcePositionで親の位置を引き継ぐ

Update:

  • Turbulenceで渦っぽい感じに収束するようにする
  • Turbulenceの設定はデフォルトのSystem Ribbonで出現する

OutputParticleStrip

  • SetSize/MutiplySizeOverLifeで末尾を小さめにする
  • SetColorOverLifeで背景を黒っぽく温度低めで炭素が混じったような炎の色にする

ribbon1

3. 炎の尾(明るめ)を表示するRibbon

暗めのRibbonと設定は下記以外ほぼ同じ.

  • Sizeを少し小さめにする
  • ColorをHDRで炎温度明るめにする

ribbon2

4. 地面にあたったときの火の粉を発生させるSystem

地面にあたったときの跳ね返り.
跳ねっ返りの方向をランダムVelocityで設定するのと、サイズ/色をOverLifeで拡大/低温化する感じに設定する.

Spark

5. 接地面の炎跡を表示するSystem

Decalっていうやつを使う.
サイズを広めと狭めで色を変えて、温度が低い冷たい部分と、温度が熱い狭い部分とを表現する.

decal

感想

decal(転写?)っていうやつの使い所がいまいちわかってない..
とりあえず地面に跡残すときに使うやつってことはわかった.
色んな人のチュートリアル見ると、Nodeの使い方の癖とか、Blackboard化するパラメータの作る手順とかに癖が出て面白い.

Discussion