시스템 및 이미터 속성 이해하기
우리는 지금까지 나이아가라의 기본 구조와 파티클 생성 및 렌더링에 대해 알아보았습니다. 이제 나이아가라 효과를 더욱 풍부하고 정교하게 만드는 핵심 요소인 시스템 및 이미터 속성에 대해 깊이 있게 파고들 차례입니다. 이 속성들은 여러분이 만들고 있는 나이아가라 효과의 전반적인 동작과 수명 주기를 제어하는 중요한 역할을 합니다.
나이아가라 에디터의 개요(Overview) 패널을 다시 살펴보면, 가장 상단에 시스템(System) 섹션이 있고, 그 아래에 하나 이상의 이미터(Emitter) 섹션이 있는 것을 확인할 수 있습니다. 각각의 섹션은 해당 범위에 영향을 미치는 고유한 속성들을 가지고 있습니다.
시스템 속성 (System Properties)
시스템 및 이미터 속성 이해하기에서 파티클 흐름, 모듈 입력, 성능 신호를 정리한 것입니다.
시스템 속성은 나이아가라 시스템 전체에 영향을 미치는 설정들입니다. 이 설정들은 시스템이 어떻게 시작하고, 종료되며, 게임 세계와 상호작용하는지를 정의합니다. 시스템 섹션을 선택하면 디테일(Details) 패널에서 해당 속성들을 확인할 수 있습니다.
-
System State (시스템 상태): 시스템의 전반적인 수명 주기를 제어합니다.
- Loop Behavior (루프 동작): 시스템이 한 번만 재생될지(
Once), 정해진 횟수만 반복할지(Multiple), 무한 반복할지(Infinite)를 정합니다. 예를 들어, 짧은 폭발 효과는Once, 계속 타오르는 불은Infinite로 설정할 수 있습니다. - Loop Duration (루프 지속 시간):
Loop로 설정했을 때, 한 번의 루프가 얼마나 지속될지 초 단위로 정의합니다. - Warm Up Time (웜업 시간): 시스템이 활성화될 때 미리 시뮬레이션될 시간을 설정합니다. 예를 들어, 연기 기둥이 갑자기 나타나는 것이 아니라, 시작부터 이미 어느 정도 피어오른 상태로 보이고 싶을 때 유용합니다.
- Auto Deactivate / Inactive Response: 더 이상 생성·갱신할 파티클이 없을 때 시스템이 어떻게 비활성화되고 정리될지 결정합니다.
- Loop Behavior (루프 동작): 시스템이 한 번만 재생될지(
-
System Simulating (시스템 시뮬레이션): 시스템의 시뮬레이션 방식과 관련된 설정을 포함합니다.
- Fixed Bounds (고정 경계): 시스템의 렌더링 경계를 수동으로 설정할 수 있습니다. 특히 매우 넓은 범위에 걸쳐 파티클이 퍼지는 효과의 경우, 엔진이 경계를 잘못 예측하여 파티클이 잘리는 것을 방지할 수 있습니다.
- Cull Proxy (컬 프록시): 시스템의 컬링(culling, 화면에서 보이지 않을 때 렌더링을 중단하는 것) 방식을 제어합니다. 성능 최적화에 중요합니다.
-
System Parameters: 시스템이나 User Parameter로 값을 노출하고, 이미터/파티클 모듈이 그 값을 읽어 사용할 수 있습니다. 값을 선언하는 것과 모든 파티클에 자동 적용되는 것은 다릅니다.
시스템 속성은 여러 이미터를 담는 효과 단위의 수명, bounds, scalability, 파라미터 계약을 정리하는 위치입니다.
이미터 속성 (Emitter Properties)
이미터 속성은 개별 이미터의 동작 방식에 영향을 미칩니다. 각 이미터는 독립적인 파티클 생성 및 업데이트 로직을 가지므로, 이미터 속성을 통해 특정 파티클 효과의 세부적인 동작을 제어할 수 있습니다. 이미터 섹션을 선택하면 디테일(Details) 패널에서 해당 속성들을 확인할 수 있습니다.
-
Emitter State (이미터 상태): 이미터의 수명 주기와 관련된 핵심 설정입니다.
- Life Cycle Mode: 이미터 수명 주기를 시스템이 관리할지(
System), 이미터가 자체적으로 관리할지(Self)를 정합니다. - Loop Behavior (루프 동작): 해당 이미터가 한 번만 재생될지, 정해진 횟수만 반복할지, 무한 반복할지 설정합니다.
- Loop Duration (루프 지속 시간): 이미터의 한 번의 루프가 지속되는 시간입니다.
- Loop Delay / Inactive Response: 반복 사이의 지연과 비활성 상태 처리 방식을 정합니다.
- Local Space: 파티클 좌표를 owning Niagara Component 기준으로 해석할지, 월드 기준으로 해석할지 결정합니다. 컴포넌트가 움직일 때 효과가 함께 붙어야 하는지, 월드에 남아야 하는지를 기준으로 선택합니다.
- Life Cycle Mode: 이미터 수명 주기를 시스템이 관리할지(
-
Rendering (렌더링): Render 그룹과 Renderer 설정에서 파티클이 어떻게 렌더링될지 제어합니다.
- Sort Mode (정렬 모드): 투명한 파티클이 올바르게 렌더링되도록 정렬 방식을 설정합니다.
- Culling (컬링): 해당 이미터의 파티클이 언제 컬링될지(렌더링되지 않을지)를 제어합니다.
-
Collision (충돌): 보통 Particle Update의 Collision 모듈에서 월드 충돌, 채널, 반응을 설정합니다. 이미터 속성만 바꾼다고 충돌이 자동으로 생기지는 않습니다.
-
Scalability (확장성): Effect Type, Scalability Mode, 시스템/이미터 scalability override, 거리·가시성 컬링과 함께 성능 상한을 설정합니다.
- 파티클 수는 Spawn Rate, Spawn Burst, lifetime, kill 조건, scalability 제한이 함께 결정합니다.
이미터 속성은 개별 이미터의 수명 관리, 좌표 기준, 비활성 처리, scalability 참여 방식을 정리하는 위치입니다. 스폰율, 충돌, 렌더러, 머티리얼 비용은 각각 해당 모듈과 렌더 그룹에서 다시 확인해야 합니다.
아래 다이어그램은 자주 헷갈리는 시스템/이미터 속성을 실제 제작 판단 기준으로 묶어 정리한 것입니다.
시스템과 이미터 속성의 상호작용
시스템 속성과 이미터 속성은 서로 영향을 주고받으며 최종적인 나이아가라 효과를 만들어냅니다.
- 관리 범위: 시스템은 여러 이미터를 담는 효과 단위이고, 이미터는 독립적인 Execution State와 Life Cycle Mode를 가질 수 있습니다.
- 파라미터 전달: 시스템/User Parameter로 값을 노출하더라도, 이미터나 파티클 모듈이 그 값을 읽어야 실제 시뮬레이션에 반영됩니다.
- 성능 제한: 전체 품질 제한은 Effect Type과 scalability 설정에서, 개별 밀도와 수명은 이미터의 스폰·업데이트·kill 조건에서 함께 결정됩니다.
이러한 속성들을 이해하면 “전체 효과 설정”, “이미터 수명”, “파티클 업데이트 모듈”, “렌더러와 머티리얼”, “scalability 제한”을 섞지 않고 조정할 수 있습니다.
시스템과 이미터 속성이 서로 영향을 줄 때는 적용 범위를 먼저 나누고, 전체 흐름에서 개별 예외로 내려가며 추적합니다.
이번 절에서는 나이아가라 시스템과 이미터의 기본 구조, 핵심 속성을 정리했습니다.
이펙트 제작 전 준비 체크
구성 요소를 본격적으로 조합하기 전에 준비 단계를 정리하면 제작 속도가 안정적입니다.
- 목표 화면(색/밀도/지속시간)을 숫자 기준으로 먼저 정의합니다.
- 재사용할 모듈과 시스템 자산을 분리해 관리합니다.
- 프로파일링 기준 프레임을 정해 품질/성능 균형을 확인합니다.
마지막으로 시스템과 이미터 속성은 작업 전 점검표로 다시 묶어 두면 이후 절에서 모듈을 추가할 때 흔들리지 않습니다.