본문 바로가기
[ Unity ]/- 유니티 실습

유니티 3D ParticleSystem

by MRG 2024. 9. 8.
728x90
반응형



 

 

▣ ParticleManager를 사용해야 할지 고려해 볼 수 있는 상황
- 여러 파티클 시스템을 동시에 사용: 게임 내에서 다양한 파티클 시스템(예: 폭발, 스파크, 연기 등)을 여러 군데에서 사용할 때, ParticleManager가 각 파티클 시스템을 한 곳에서 관리하면 더 효율적입니다.

- 파티클 시스템 최적화: 모든 파티클 시스템을 한 곳에서 관리함으로써 메모리 관리, 성능 최적화, 불필요한 파티클 시스템 비활성화 등의 작업을 쉽게 처리할 수 있습니다.

- 재사용 가능한 파티클 효과: 같은 파티클 효과를 여러 장소에서 재사용해야 할 때, ParticleManager를 사용하면 더 간단하게 관리하고 필요할 때마다 쉽게 인스턴스화할 수 있습니다.

- 코드의 가독성 및 유지보수성 향상: 파티클 시스템을 각 개별 스크립트에서 관리하는 대신 ParticleManager를 통해 중앙에서 관리하면 코드 구조가 깔끔해지고 유지보수도 수월해집니다.

 

▣ 코드 설명
싱글톤 패턴 구현: public static ParticleManager Instance { get; private set; }로 Instance를 정의하여 언제든지 ParticleManager.Instance를 통해 접근할 수 있습니다.

Awake에서 싱글톤 인스턴스를 설정합니다. 만약 이미 인스턴스가 존재한다면 중복 인스턴스를 제거(Destroy(gameObject))하여 유일한 인스턴스만 유지합니다.
PlayParticle 함수: ParticleType을 기반으로 Dictionary에서 파티클 시스템을 가져와 특정 위치에서 재생합니다. 다른 스크립트에서 ParticleManager.Instance.PlayParticle()을 통해 쉽게 파티클을 재생할 수 있습니다.

다른 스크립트에서 싱글톤 접근: FindObjectOfType 대신 ParticleManager.Instance로 어디서든지 ParticleManager에 접근할 수 있게 되어 성능적, 유지보수적인 이점이 있습니다.

싱글톤 패턴의 장점
중복 인스턴스 방지: 여러 개의 ParticleManager가 생성되는 것을 방지합니다.
전역 접근: 프로젝트의 어디서나 ParticleManager.Instance를 통해 쉽게 접근할 수 있습니다.
성능 향상: FindObjectOfType 같은 메서드를 사용하지 않고, 바로 싱글톤 인스턴스에 접근하므로 성능이 더 좋습니다.

 

 

 

 



 



 

 

 

 

 

 

 

 

 

https://en.wikipedia.org/wiki/Singleton_pattern

 

Singleton pattern - Wikipedia

From Wikipedia, the free encyclopedia Design pattern in object-oriented software development A class diagram exemplifying the singleton pattern. In Object-oriented programming, the singleton pattern is a software design pattern that restricts the instantia

en.wikipedia.org

 

 

https://docs.unity3d.com/kr/2020.3/Manual/class-ParticleSystem.html

 

파티클 시스템 - Unity 매뉴얼

Particle System 컴포넌트는 씬 안에 다수의 작은 2D 이미지를 생성하고 애니메이션하여 액체, 구름 및 불꽃 같은 유체 엔티티를 시뮬레이션합니다. 파티클 시스템과 그 용도에 대한 전체 개요는 파

docs.unity3d.com

 

728x90
반응형

'[ Unity ] > - 유니티 실습' 카테고리의 다른 글

유니티 쿼터니언(Quaternion)과 회전  (3) 2024.09.09
유니티 싱글톤  (4) 2024.09.08
유니티 제네릭(Generic)  (1) 2024.09.07
유니티 SoundManager  (4) 2024.09.06
유니티 2D AI 스폰  (0) 2024.09.05

댓글