사용자 도구

사이트 도구


language:unity:3-파티클

ParticleSystem

ParticleSystem으로 파티클을 플레이 하려면,

ParticleSystem.Play();
ParticleSystem.Stop();

이 두 함수가 사용되는데,

ParticleSystem.Emit(...);

함수를 사용하면 가장 첫 파티클만 터진다. 매뉴얼에도 파티클 한개만 실행 한다고 되어 있으니 맞긴 맞지만..

파티클 오브젝트를 늘 생성하지말고 emit만 다시 하라고 했는데, 시스템이 바뀌면서 이건 좀 틀린 이야기가 되었을려나.

이것도 Prefab으로 만들고, 풀링해야 그나마 나을려나 싶다.

ParticleEmitter

여기에 의하면, Unity4의 파티클과 이전의 파티클은 사용하는 개체가 다른데,

새로운 방식의 파티클에서는, ParticleEmitter를 사용할 수는 없는 것 같다.

It looks like those should be grouped:

Shuriken:

  • ParticleSystem
  • ParticleSystemRenderer
  • ParticleSystem.Particle

The the old system:

  • ParticleEmitter
  • ParticleAnimator
  • ParticleRenderer
  • Particle

파티클 종료 후 자동 deactive

// 좋은가 나쁜가.. 잘 모르겠다.
using UnityEngine;
using System.Collections;
public class AutoDisableParticleSystem : MonoBehaviour
{
  void OnEnable() {
    float _time = GetComponent<ParticleSystem>().duration;
    StartCoroutine( makeDisableMe( _time ) );
  }
 
  IEnumerator makeDisableMe( float time_ ) {
    yield return new WaitForSeconds( time_ );
    gameObject.SetActive(false);
  }
}
language/unity/3-파티클.txt · 마지막으로 수정됨: 2024/04/23 22:44 저자 127.0.0.1