파티클 시스템을 저작할 때 유연성을 제공하기 위해 Unity는 두 가지 솔루션을 제공합니다. 프로젝트가 컴퓨트 셰이더를 지원하는 플랫폼을 타게팅하는 경우 Unity에서 둘 다 동시에 사용할 수 있습니다. 두 가지 파티클 시스템 솔루션은 다음과 같습니다.
다음 표는 두 파티클 시스템 솔루션의 대략적인 비교 내용을 보여 줍니다. 각 솔루션에 대한 자세한 내용은 빌트인 파티클 시스템 또는 Visual Effect Graph를 참조하십시오.
| 기능 | 빌트인 파티클 시스템 | 비주얼 이펙트 그래프 |
|---|---|---|
| 렌더 파이프라인 호환성 | 빌트인 렌더 파이프라인, 유니버설 렌더 파이프라인, 고해상도 렌더 파이프라인 | 유니버설 렌더 파이프라인, 고해상도 렌더 파이프라인 |
| 가능한 파티클 수 | 천 | 백만 |
| 파티클 시스템 작성 | 인스펙터에서 Particle System 컴포넌트를 사용하는 간단한 모듈식 저작 프로세스입니다. 각 모듈은 파티클의 사전 정의된 동작을 나타냅니다. | 그래프 뷰를 사용하는 고도의 커스터마이즈 가능한 저작 프로세스입니다. |
| 물리 | 파티클이 Unity의 기본 물리 시스템과 상호작용할 수 있습니다. | 파티클이 Visual Effect Graph에 정의된 특정 요소와 상호 작용할 수 있습니다. 예를 들어 파티클이 뎁스 버퍼와 상호 작용할 수 있습니다. |
| 스크립트 상호작용 | C# 스크립트를 사용하여 런타임 시 파티클 시스템 완전히 커스터마이즈할 수 있습니다. 시스템의 각 파티클을 읽고 쓸 수 있으며 충돌 이벤트에 반응할 수 있습니다. 또한 Particle System 컴포넌트는 재생 컨트롤 API를 제공합니다. 즉, 스크립트를 사용하여 효과를 재생 및 일시정지하고 커스텀 단계 크기로 효과를 시뮬레이션할 수 있습니다. | C# 스크립트를 통해 그래프 프로퍼티를 노출하고 액세스하여 효과의 인스턴스를 커스터마이즈할 수 있습니다. 또한 이벤트 인터페이스를 사용하여 그래프가 처리할 수 있는 연결된 데이터가 포함된 커스텀 이벤트를 전송할 수도 있습니다. 또한 Visual Effect 컴포넌트는 재생 컨트롤 API를 제공합니다. 즉, 스크립트를 사용하여 효과를 재생 및 일시정지하고 커스텀 단계 크기로 효과를 시뮬레이션할 수 있습니다. |
| 프레임 버퍼 | 지원 안 함 | 고해상도 렌더 파이프라인은 컬러 및 뎁스 버퍼에 대한 액세스를 제공합니다. 예를 들어 컬러 버퍼를 샘플링하고 해당 결과를 사용하여 파티클 컬러를 설정하거나, 뎁스 버퍼를 사용하여 충돌을 시뮬레이션할 수 있습니다. |