화려한 파티클! 하지만, Destroy를 직접 해주지 않으면, 파티클 LifeTime이 끝나도 오브젝트가 계속 남아있다
유니티에서 제공하는 IsAlive 함수는, 파티클이 끝났는지 여부를 알려줍니다. 이것을 이용해 ParticleSystemAutoDestroy라는 스크립트를 만들고, 어떤 파티클을 만들던 이 스크립트만 추가해주면, 자동으로 파티클이 끝났을 때, 파티클 오브젝트도 사라지도록 만들어봅시다.
using UnityEngine;
using System.Collections;
public class ParticleSystemAutoDestroy : MonoBehaviour
{
private ParticleSystem ps;
void Start ()
{
ps = GetComponent ();
}
void Update ()
{
if (ps) {
if (!ps.IsAlive ()) {
Destroy (gameObject);
}
}
}
}
이제 어떤 파티클을 만들건 이 스크립트만 추가해주면, 파티클 LifeTime이 끝남과 동시에 파티클 오브젝트도 사라지게 됩니다.
헉... 이런 간단한 방법이...
답글삭제