현재 파티클을 사용하지 않는데도 재생중일 필요는 없으니까 필요할때만 재생시키는거죠.
아래 사항을 고려해서 제작하면 됩니다.
- 파티클은 ParticleSystem Component로 제작해야 함.
- 파티클을 정지함과 동시에 화면에서 사라지게 하기 위해서는 Stop()과 Clear() 함수를 모두 사용할 것.
- 파티클을 시작하기 위해서는 Play()함수를 사용할 것
예제 코드는 아래와 같아요.
ParticleSystem testParticle = null;
// 버튼이 눌러졌을때
if (Input.GetMouseButtonUp(0) == true)
{
// 파티클이 있고
if (testParticle)
{
// 파티클이 재생중이면 재생을 멈추고 지워줍니다
if (testParticle.isPlaying == true)
{
testParticle.Stop();
testParticle.Clear();
//Debug.Log("STOP");
}
// 재생중이 아니라면 재생해주고요
else
{
testParticle.Play();
//Debug.Log("PLAY");
}
}
// 파티클이 없다면 새로 만들어주구요
else
{
Vector3 pos = Vector3.zero;
pos.y = 3;
pos.x = 3 - 30.0f;
Transform particleObject = (Transform)Instantiate(Resources.Load("Prefabs/Effects/pfBlockBomb", typeof(Transform)), pos, Quaternion.identity);
testParticle = (ParticleSystem)particleObject.GetComponent(typeof(ParticleSystem));
//Debug.Log("CREATE");
}
return;
}
댓글 없음:
댓글 쓰기