기본 파티클 렌더링 설정
Sprite Renderer의 머티리얼·정렬·정렬 방향·크기 바인딩을 조정하고 다른 렌더러와 조합하는 기초를 익힙니다.
파티클이 어떻게 생성되고(Spawn 모듈), 어떤 변화를 겪는지(Particle Update 모듈) 확인했다면, 다음은 화면에 그려지는 방식을 정하는 렌더링(Rendering) 단계입니다.
렌더러 설정이 맞지 않으면 파티클 데이터가 있어도 원하는 형태로 보이지 않습니다.
렌더링은 이미터 내의 렌더(Render) 섹션에 있는 렌더러 모듈이 담당합니다.
이 모듈들은 파티클의 데이터(위치, 색상, 크기 등)를 실제 화면에 나타나는 픽셀로 변환하는 역할을 합니다.
렌더링 모듈의 중요성
렌더러 모듈은 파티클 효과의 시각적인 최종 결과물을 정의합니다.
파티클이 점으로 보일지, 이미지로 보일지, 아니면 3D 모델로 보일지를 결정하는 것은 전적으로 렌더러의 역할입니다.
효과의 목적과 스타일에 맞춰 적절한 렌더러를 선택하고 그 속성을 상세히 설정하는 것이 매우 중요합니다.
나이아가라의 한 이미터는 여러 개의 렌더러 모듈을 가질 수 있습니다.
예를 들어, 한 이미터에서 스프라이트 렌더러로 연기를 표현하면서 동시에 라이트 렌더러로 빛을 방출하게 할 수 있습니다.
가장 기본이 되는 렌더러: Sprite Renderer
Sprite Renderer는 나이아가라에서 가장 흔하게 사용되는 렌더러입니다.
파티클을 2D 이미지(스프라이트) 형태로 렌더링하며, 대부분의 캐주얼하고 사실적인 효과(불꽃, 연기, 비, 먼지 등)에 적합합니다.
Sprite Renderer의 주요 설정
Sprite Renderer 모듈을 이미터의 Render 섹션에 추가하고 선택하면, 디테일(Details) 패널에서 다양한 속성을 설정할 수 있습니다.
- 스프라이트에 적용될 머티리얼(Material)을 지정하는 가장 중요한 속성입니다. 이 머티리얼이 파티클의 색상, 질감, 투명도, 그리고 빛과의 상호작용 방식 등을 결정합니다.
- 팁: 파티클용 머티리얼은 일반적으로 다음과 같은 블렌드 모드 중 하나를 사용합니다.
Translucent(반투명): 연기나 안개처럼 배경이 비치는 효과에 사용됩니다.Additive(덧셈): 불꽃, 스파크, 에너지 볼처럼 밝게 빛나며 주변 색상과 합쳐지는 효과에 사용됩니다. 검은색 배경에 흰색 이미지로 만들었을 때 가장 효과적입니다.Masked(마스크): 가장자리가 뚜렷하고 투명 영역과 불투명 영역이 명확한 효과(예: 나뭇잎, 파편)에 사용됩니다.
- 머티리얼은 단순히 색상과 질감뿐만 아니라, 불투명도(Opacity)를 제어하여 파티클이 서서히 나타나거나 사라지는 효과를 구현하는 데 핵심적인 역할을 합니다.
- 만약 머티리얼이 여러 개의 이미지를 가로세로로 배열해 놓은 스프라이트 시트(Sprite Sheet)를 사용한다면,
SubUV설정을 통해 이 이미지를 애니메이션처럼 순차적으로 재생할 수 있습니다. Sub UV Blending Enabled: 애니메이션 프레임 간을 부드럽게 보간할지 여부를 설정합니다.Sub Image Size: 스프라이트 시트의 가로/세로 분할 개수를 지정합니다. 예를 들어, 4x4 시트라면X: 4,Y: 4로 설정합니다.
- Facing Mode는 스프라이트 면이 바라보는 방향을 정합니다.
Face Camera는 카메라를 향하는 표현에 사용합니다. - Alignment는 면 내부의 정렬을 정합니다.
Velocity Aligned는 속도를 따라 정렬하며, 속도가 0일 때의 결과도 확인해야 합니다. - 고정 방향이 필요하면 Custom Facing Vector와 Sprite Facing 바인딩, 필요 시 Custom Alignment를 설정합니다.
PSA로 시작하는 Cascade의 항목과 구분합니다.
- 투명한 파티클들이 올바른 순서로 렌더링되도록 정렬하는 방식을 결정합니다. 투명 객체는 렌더링 순서에 따라 시각적인 문제가 발생할 수 있으므로 중요합니다.
View Distance와View Depth는 각각 카메라 원점까지의 거리와 뷰 깊이를 기준으로 정렬합니다. 장면에 따라 결과와 비용을 비교합니다.Custom Ascending / Descending은 Custom Sorting Binding의 입자 속성으로 정렬합니다. 전역 투명 정렬 축 설정과 같은 항목은 아닙니다.
직접 해보기: 스프라이트 렌더링 설정 변경
이전 절에서 만들었던 NS_BasicSpawn 시스템을 다시 열어봅시다.
개요(Overview) 패널에서 이미터 아래의 Render 섹션에 있는 Sprite Renderer 모듈을 선택합니다.
디테일(Details) 패널에서 Material 속성을 찾습니다.
현재 할당된 머티리얼과 블렌드 모드를 기록합니다. 템플릿마다 기본 에셋은 다를 수 있습니다.
Material 옆의 드롭다운 메뉴를 클릭하거나 검색 버튼(돋보기 아이콘)을 클릭합니다.
프로젝트에 포함된 먼지나 연기 파티클 머티리얼을 선택합니다. M_Dust_Particle이나 M_FX_Smoke_SubUV 같은 이름은 프로젝트·콘텐츠 팩에 따라 없을 수 있으므로 공통 기본 에셋으로 가정하지 않습니다.
- 만약 엔진 기본 머티리얼을 찾기 어렵다면, 콘텐츠 브라우저에서
Engine Content를 활성화(뷰 옵션)한 후Materials폴더에서Particle또는FX로 검색하면 찾을 수 있습니다.
머티리얼을 변경하자마자 뷰포트에서 파티클의 모양과 느낌이 완전히 달라지는 것을 확인할 수 있습니다.
스프라이트 시트를 쓴다면 실제 열·행 수에 맞게 Sub Image Size를 설정합니다. SubUV Animation 같은 모듈로 SubImageIndex를 갱신하고, 머티리얼의 SubUV 처리와 바인딩을 확인한 뒤 프레임 보간을 비교합니다. 분할 수만 넣어서는 애니메이션이 진행되지 않습니다.
Facing Mode를 Face Camera로 유지한 채 Alignment를 Velocity Aligned로 바꾸어 이동 방향 정렬을 비교합니다. 비교 후 원래의 Facing Mode와 Alignment를 복원합니다.
다른 렌더러 모듈과의 조합
하나의 이미터에 Sprite Renderer 외에 다른 렌더러를 추가하여 더욱 복합적인 효과를 만들 수도 있습니다.
- 예를 들어, 불꽃 효과를 만들 때
Sprite Renderer로 불꽃 이미지 자체를 렌더링하고,Light Renderer를 추가하여 파티클이 주변 환경에 실제 빛을 방출하도록 설정할 수 있습니다.
바인딩과 비용 확인
렌더러의 Position·Color·Sprite Size 바인딩이 모듈에서 쓰는 속성을 읽는지 확인합니다. Alpha가 Opacity에 연결되지 않았다면 초기 색을 바꾸어도 원하는 투명도가 나오지 않습니다.
흰 사각형은 머티리얼·텍스처를, 방향 오류는 Facing·Alignment·속도를, 겹칠 때의 깜빡임은 투명 정렬을 먼저 확인합니다. Bounds는 표시 범위 문제로 따로 확인합니다. 마지막으로 카메라 거리와 각도를 바꾸어 비교합니다.
Light Renderer는 기본 형태를 확인한 뒤 작은 개수·반경으로 추가하고 비용을 측정합니다. 렌더러 공식 속성에서 버전별 이름을 확인할 수 있습니다.