Unity: Particle System

이재형·2024년 6월 12일
0
post-thumbnail
post-custom-banner

Unity 공부

배운 내용

1. Particle System

ParticleSystem particleSystem = GameManager.Instance.EffectParticle;

particleSystem.transform.position = position;
ParticleSystem.EmissionModule em = particleSystem.emission;
em.SetBurst(0, new ParticleSystem.Burst(0, Mathf.Ceil(_attackData.size * 5)));
ParticleSystem.MainModule mm = particleSystem.main;
mm.startSpeedMultiplier = _attackData.size * 10f;
particleSystem.Play();

설명: public으로 파티클을 사용하면 되는데 따로 생성해서 사용하는 이유는 여러 파티클이 발생할 때 하나의 파티클로 표현이 안되므로 상황이 발생할 때마다 파티클을 새로 생성하여 파티클의 정보를 Play()를 하여 새로운 파티클을 계속 발생시켜 문제 없이 발생하게 하였다.

다른 방법으로 파티클 실행하기

public class DustParticleControl : MonoBehaviour
{
    [SerializeField] private bool creatDustOnWalk = true;
    [SerializeField] private ParticleSystem dustParticleSystem;

    public void CreatDustParticles()
    {
        if (creatDustOnWalk)
        {
            dustParticleSystem.Stop();
            dustParticleSystem.Play();
        }
    }
}

설명: 이벤트 함수에서 CreatDustParticles()를 추가하여 해당 에니메이션의 동작을 할 때 파티클을 실행시는 방법도 존재한다.


정리

배운 내용

1. Particle System: 하나만을 사용할 때는 그냥 Play()를 하면 되지만 많은 양의 파티클을 발생시킬 때는 새로운 파티클을 생성하여 Play()를 해서 문제 없이 작동시켜야 한다.

해결 못한 문제

1. 없음

문제점

1. 없음

profile
한국사람
post-custom-banner

0개의 댓글