今回のお題:リボン状パーティクルを作る
利用したUEバージョン:5.4.2
引き続きUEの公式が用意してくれているNiagaraのチュートリアルより。
リボン、一応Unityでも以前少し触ったことがある記憶。
何に使おうか、どう使おうか、ぱっと思いつきにくいけど(一般的な用途はわかっているものの。弾丸の軌跡を描くみたいなトレイル系など)、これもちゃんと把握しておきたい。
▼出来上がり図。
▼UE本家の説明ページ。丁寧にパラメータなどもわかりやすく記載されている。
https://dev.epicgames.com/documentation/ja-jp/unreal-engine/how-to-create-a-ribbon-effect-in-niagara-for-unreal-engine
このチュートリアルもそれほど手数は多くない。
一番大きいのは、今までSprite Rendererばかりを使っていたのをRibbon Rendererに変更する点。
あとShape LocationのShape Primitiveを”Ring/Disk”にする点かな、と。
(初めて選択した)
今回はテンプレのSimpleSpriteBurstからスタート。
以下、自分用のメモ。
Render
Ribbon Rendererモジュール
いつものSprite Rendererを外してこちらに付け替え。
マテリアルの設定も適宜すること。
(チュートリアル記事では”DefaultRibbonMaterial”を指定)
Emitter Update
Emitterに適用される挙動と、各フレームを更新するものがある。
Emitter Stateモジュール
▼ Life Cycle > Life Cycle Mode:”System”を選択
今まで説明で見逃していたか、頭にインプットできていなかったか。
以下の点が新情報だった。
Systemを利用する場合(記事より写経)ライフサイクル設定が計算されて、通常はパフォーマンスが最適化される。デフォルトでSystemは“5秒間隔で無限にループする“
Particle Spawn
初回のパーティクルSpawn時に適用される挙動。
Initialize Particleモジュール
▼ Point Attributes > Mass ModeとMass
質量の設定。
リボンの広がり具合、落下速度に影響する。
(チュートリアル記事では”Direct Set”, “10.0”に設定)
▼ Ribbon Attributes
リボンの幅などの設定を行う。
(チュートリアル記事では”Direct Set”, リボン幅“10.0“に設定)
Shape Locationモジュール
パーティクルがSpawnする場所の形状。
▼ Shape > Shape Primitive : Ring/Disk
▼ Distribution > Ring/Disc Distribution : Direct
チュートリアルでは”Direct”を指定したが、”Random”が面白そうだった(↓)。
Add Velocityモジュール
Velocity = 速度。
Velocity Mode: From Point
それぞれ異なる描画になるのはわかるがうまく言語化できないので後回し。
ただ、チュートリアル記事の記載としては以下の通り。
(Velocity Modeを”From Point”に設定し、Velocity Speedの値も設定すると)、リボンがらせん状に回転し始める。Large Radiusの周りで位置が移動するので、VelocityがオリジナルのRingからリボンを外側へと押し出すため。
Particle Update
Emitterのパーティクルに適用され、各フレームで更新される。
Acceleration Forceモジュール
Acceleration: Zを-200.0
重力をシミュレートする。そのため回転するリボンが落下する描画になる。
(疑問点:Gravity Forceとの違いは・・・・?)
以上。
応用はまた後日。