前提・実現したいこと
VFX Graphで作成したエフェクトを重複して連続再生させたいです。
Unityで音ゲーを作っています。
そのエフェクトに使用するためにVFX Graph(Visual Effect Graph)で下の画像のような
「生成1回きり、内側から外側に向かって飛び散るように移動する」パーティクルを作成しました。
なお、このパーティクルの設定は以下のようになっています。(Update Particleについては空なので省略しています)
発生している問題
下記のスクリプトを使用して再生を制御しているのですが、
再生できる間隔がLifeTimeに依存してしまっています。
LifeTimeを2秒にした場合、パーティクルの再生後2秒経つまではいくらスペースキーを押してもパーティクルが再生されません。
そうではなく、パーティクルを再生し、2秒経たないうちにもう1つパーティクルを再生、最初のものはそのまま再生され続け、それに重なるようにして次のパーティクルが再生される…といったようにしたいです。
該当のソースコード
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.VFX; 5 6public class vfxTest : MonoBehaviour 7{ 8 [SerializeField] VisualEffect test; 9 10 void Update() 11 { 12 if (Input.GetKeyDown(KeyCode.Space)) 13 { 14 test.Play(); 15 } 16 } 17} 18
試したこと
様々なワードで検索し色々なサイトを見ましたが、「LifeTimeが終わる前に重複して再生させる」方法は見つかりませんでした。
出てきた情報をもとに「test.Play()」から「test.Reinit()」に変えるとLifeTimeが終わる前に再度再生はできましたが、
これはリスタートという感じの挙動(再生されていたパーティクルをキャンセルし改めて新しいパーティクルを再生する)で、求めていたものとは違っていました。
検索したワード「unity Particle Overlap」「Unity パーティクル play 連続」など
使用しているのはVFX Graphですが、Particle System(Shuriken)での設定やテクニックも使用できる可能性があると思います(試します)ので、
Particle System基準での回答も歓迎です。
補足情報(FW/ツールのバージョンなど)
Unity 2021.1.9f1
Visual Effect Graph 11.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/05 05:08