パーティクルシステムが発生して数秒後に、そのゲームオブジェクト自体が消える仕組みをつくりましょう。
Cubeをクリックするとパーティクルを生成し、1秒後に削除します。
関連記事:
エフェクト発生の後にテキスト表示
クリックした位置にパーティクル発生
爆発エフェクトを発生させるしくみ
少しずれた位置にエフェクト発生
条件によってエフェクトのサイズを変える
ゴールすれば花火を打ち上げる
パーティクルのオブジェクトを消す
パーティクルシステムを作成します。
パーティクルシステムをPrefab化します。
パーティクルシステムの元データを削除しておきます。
ループはチェックを外します。
ParticleManager.csを作成します。
パーティクルシステムのプレハブを開き、ここに、ParticleManager.csを追加します。
ParticleManager.csを記述します。
ここには、1秒後に削除するスクリプトを書きます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ParticleManager : MonoBehaviour { void Start() { Invoke("DestroyParticle", 1.0f); } void DestroyParticle() { Destroy(gameObject); } } |
続いて、Cubeを作成します。
CubeClick.csを作成し、Cubeに追加します。
CubeClick.csを記述します。
Cubeの真上パーティクルを生成させます。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CubeClick : MonoBehaviour { [SerializeField] GameObject particle; void OnMouseDown() { Instantiate(particle, gameObject.transform.position, Quaternion.Euler(-90, 0, 0)); } } |
フィールドの中に、ParticleSystemのプレハブを入れます。
ゲームプレイして、Cubeをクリックしてみましょう。
パーティクルが出現し、1秒後に削除されます。
関連記事:
エフェクト発生の後にテキスト表示
クリックした位置にパーティクル発生
爆発エフェクトを発生させるしくみ
少しずれた位置にエフェクト発生
条件によってエフェクトのサイズを変える
ゴールすれば花火を打ち上げる