본문으로 건너뛰기

안동민 개발노트

본문 시작

기본 파티클 렌더링 설정

Sprite Renderer의 머티리얼·정렬·정렬 방향·크기 바인딩을 조정하고 다른 렌더러와 조합하는 기초를 익힙니다.

파티클이 어떻게 생성되고(Spawn 모듈), 어떤 변화를 겪는지(Particle Update 모듈) 확인했다면, 다음은 화면에 그려지는 방식을 정하는 렌더링(Rendering) 단계입니다.

렌더러 설정이 맞지 않으면 파티클 데이터가 있어도 원하는 형태로 보이지 않습니다.

렌더링은 이미터 내의 렌더(Render) 섹션에 있는 렌더러 모듈이 담당합니다.

이 모듈들은 파티클의 데이터(위치, 색상, 크기 등)를 실제 화면에 나타나는 픽셀로 변환하는 역할을 합니다.

Sprite Renderer의 주요 설정(Material, SubUV, Alignment, Sort Mode)이 최종 화면 결과에 어떻게 연결되는지 요약한 도식입니다.

렌더러 모듈은 계산된 파티클 데이터를 화면 픽셀로 바꾼다

Update가 만든 Position, Color, Size를 Renderer와 Material이 어떻게 읽는지 보면 보이지 않는 문제를 빨리 찾을 수 있다.

입력 데이터렌더러가 하는 일화면 결과문제 신호
Position입자 위치를 월드 또는 로컬 공간에 배치화면상의 위치카메라 밖이거나 원점에 몰림
Color/Alpha머티리얼 파라미터로 전달색과 투명도검게 보이거나 사라짐
Size/ScaleSprite 크기 또는 Mesh 스케일 적용입자 크기너무 크거나 보이지 않음
Rotation/Facing카메라 정렬과 회전 계산방향과 빌보드카메라 각도에 따라 뒤집힘
Material최종 셰이딩과 블렌딩 결정픽셀 출력오버드로와 비용 증가

렌더링 모듈의 중요성

렌더링 모듈은 데이터 선택과 비용 선택을 동시에 한다

같은 파티클이라도 어떤 렌더러를 선택하느냐에 따라 필요한 데이터, 머티리얼, 비용 위험이 달라진다.

선택데이터 요구표현 장점비용 경계
Sprite RendererPosition, Size, Color, Material대량 입자와 부드러운 효과에 적합투명 면적과 오버드로 제한
Mesh RendererMesh, Scale, Rotation, Material입자마다 형태감을 줄 수 있음인스턴스 수와 삼각형 수 제한
Ribbon RendererRibbon ID, Position, Age흔적과 궤적 표현에 적합긴 리본과 정렬 오류 점검
Light RendererPosition, Color, Radius빛나는 입자 표현동적 조명 반경과 개수 제한

렌더러 모듈은 파티클 효과의 시각적인 최종 결과물을 정의합니다.

파티클이 점으로 보일지, 이미지로 보일지, 아니면 3D 모델로 보일지를 결정하는 것은 전적으로 렌더러의 역할입니다.

효과의 목적과 스타일에 맞춰 적절한 렌더러를 선택하고 그 속성을 상세히 설정하는 것이 매우 중요합니다.

나이아가라의 한 이미터는 여러 개의 렌더러 모듈을 가질 수 있습니다.

예를 들어, 한 이미터에서 스프라이트 렌더러로 연기를 표현하면서 동시에 라이트 렌더러로 빛을 방출하게 할 수 있습니다.


가장 기본이 되는 렌더러: Sprite Renderer

Sprite Renderer는 나이아가라에서 가장 흔하게 사용되는 렌더러입니다.

파티클을 2D 이미지(스프라이트) 형태로 렌더링하며, 대부분의 캐주얼하고 사실적인 효과(불꽃, 연기, 비, 먼지 등)에 적합합니다.

Sprite Renderer의 주요 설정

Sprite Renderer 모듈을 이미터의 Render 섹션에 추가하고 선택하면, 디테일(Details) 패널에서 다양한 속성을 설정할 수 있습니다.

Material (머티리얼)
  • 스프라이트에 적용될 머티리얼(Material)을 지정하는 가장 중요한 속성입니다. 이 머티리얼이 파티클의 색상, 질감, 투명도, 그리고 빛과의 상호작용 방식 등을 결정합니다.
  • : 파티클용 머티리얼은 일반적으로 다음과 같은 블렌드 모드 중 하나를 사용합니다.
    • Translucent (반투명): 연기나 안개처럼 배경이 비치는 효과에 사용됩니다.
    • Additive (덧셈): 불꽃, 스파크, 에너지 볼처럼 밝게 빛나며 주변 색상과 합쳐지는 효과에 사용됩니다. 검은색 배경에 흰색 이미지로 만들었을 때 가장 효과적입니다.
    • Masked (마스크): 가장자리가 뚜렷하고 투명 영역과 불투명 영역이 명확한 효과(예: 나뭇잎, 파편)에 사용됩니다.
  • 머티리얼은 단순히 색상과 질감뿐만 아니라, 불투명도(Opacity)를 제어하여 파티클이 서서히 나타나거나 사라지는 효과를 구현하는 데 핵심적인 역할을 합니다.
SubUV (서브UV)
  • 만약 머티리얼이 여러 개의 이미지를 가로세로로 배열해 놓은 스프라이트 시트(Sprite Sheet)를 사용한다면, SubUV 설정을 통해 이 이미지를 애니메이션처럼 순차적으로 재생할 수 있습니다.
  • SubUV Blending: 애니메이션 프레임 간을 부드럽게 보간할지 여부를 설정합니다.
  • SubUV Quad: 스프라이트 시트의 가로/세로 분할 개수를 지정합니다. 예를 들어, 4x4 시트라면 X: 4, Y: 4로 설정합니다.
Alignment (정렬)
  • 스프라이트가 게임 세계에서 어떤 방향을 바라볼지 설정합니다.
  • PSA Facing Camera: (기본값) 스프라이트가 항상 카메라를 바라보도록 회전합니다. 대부분의 파티클 효과에 가장 적합하며, 3D 공간에서 2D 이미지가 자연스럽게 보이도록 합니다.
  • PSA Velocity: 파티클의 이동 방향을 기준으로 스프라이트가 정렬됩니다. 총알 궤적이나 빗방울처럼 움직이는 방향으로 납작하게 보이는 효과에 사용됩니다.
  • PSA Fixed: 특정 축(예: X, Y, Z)에 고정된 방향을 유지합니다. 예를 들어, 바닥에 항상 평행하게 누워있는 물방울 효과.
Sort Mode (정렬 모드)
  • 투명한 파티클들이 올바른 순서로 렌더링되도록 정렬하는 방식을 결정합니다. 투명 객체는 렌더링 순서에 따라 시각적인 문제가 발생할 수 있으므로 중요합니다.
  • Distance To View (뷰어와의 거리에 따라): 카메라에서 멀리 있는 파티클부터 렌더링하여 가장 일반적이고 좋은 결과를 제공합니다.
  • Custom Sort Axis (사용자 정의 정렬 축): 특정 축을 기준으로 정렬합니다.

아래 다이어그램은 Sprite Renderer 설정을 효과 목적에 맞춰 선택할 때의 판단 기준을 정리한 것입니다.

화면 결과를 먼저 정하고 렌더러 값을 선택한다

Material, SubUV, Alignment, Sort Mode는 따로 외우기보다 만들려는 효과의 움직임과 투명도 문제에 맞춰 선택합니다.

  1. 빛나는가, 비치는가, 잘리는가

    Material 불꽃은 Additive, 연기와 안개는 Translucent, 가장자리가 또렷한 파편은 Masked를 먼저 검토합니다.

  2. 한 장의 이미지인가, 프레임 묶음인가

    SubUV 연기처럼 모양이 변해야 하면 시트 분할 수와 프레임 보간을 맞춰 반복 티를 줄입니다.

  3. 카메라를 볼지, 속도를 따를지

    Alignment 먼지와 불꽃은 Facing Camera, 빗줄기와 탄흔 궤적은 Velocity 정렬이 자연스럽습니다.

  4. 투명 겹침이 깨지는지 본다

    Sort Mode 반투명 파티클이 앞뒤로 섞이면 Distance To View 또는 필요한 축 기준 정렬을 적용합니다.


직접 해보기: 스프라이트 렌더링 설정 변경

이전 절에서 만들었던 NS_BasicSpawn 시스템을 다시 열어봅시다.

개요(Overview) 패널에서 이미터 아래의 Render 섹션에 있는 Sprite Renderer 모듈을 선택합니다.

디테일(Details) 패널에서 Material 속성을 찾습니다.

현재는 기본 DefaultSpriteMaterial이 할당되어 있을 것입니다.

Material 옆의 드롭다운 메뉴를 클릭하거나 검색 버튼(돋보기 아이콘)을 클릭합니다.

검색창에 M_Dust_Particle (엔진 기본 제공 먼지 파티클 머티리얼)이나 M_FX_Smoke_SubUV (연기 스프라이트 시트 머티리얼) 등을 검색하여 할당해 보세요.

  • 만약 엔진 기본 머티리얼을 찾기 어렵다면, 콘텐츠 브라우저에서 Engine Content를 활성화(뷰 옵션)한 후 Materials 폴더에서 Particle 또는 FX로 검색하면 찾을 수 있습니다.

머티리얼을 변경하자마자 뷰포트에서 파티클의 모양과 느낌이 완전히 달라지는 것을 확인할 수 있습니다.

특히 M_FX_Smoke_SubUV 같은 머티리얼을 할당했다면, SubUV Quad4x4 (가정) 등으로 설정하고 SubUV Blending을 활성화하면 더욱 자연스러운 연기 애니메이션을 볼 수 있습니다.

Alignment 속성을 PSA Velocity로 변경해보고, 파티클이 이동 방향으로 정렬되는지 확인해 보세요.

다시 PSA Facing Camera로 되돌리는 것을 잊지 마세요.


다른 렌더러 모듈과의 조합

하나의 이미터에 Sprite Renderer 외에 다른 렌더러를 추가하여 더욱 복합적인 효과를 만들 수도 있습니다.

  • 예를 들어, 불꽃 효과를 만들 때
    • Sprite Renderer로 불꽃 이미지 자체를 렌더링하고,
    • Light Renderer를 추가하여 파티클이 주변 환경에 실제 빛을 방출하도록 설정할 수 있습니다.

렌더링 문제는 대개 머티리얼, 정렬, 정렬 순서, 보조 렌더러 중 어느 단계에서 생겼는지 나누어 보면 빠르게 좁힐 수 있습니다.

렌더링 문제는 데이터에서 투명 정렬까지 관문별로 좁힌다

파티클이 생성되어도 화면이 어색하면 데이터 존재, Material 연결, 애니메이션·방향, 투명 정렬을 앞 단계부터 통과시킨다.

  1. 1
    Particle Data

    Position·Color·Size가 유효한 값인지 확인한다.

  2. 2
    Material

    Particle Color·Opacity와 Texture가 연결됐는지 본다.

  3. 3
    SubUV / Alignment

    프레임 분할과 카메라·속도 방향을 맞춘다.

  4. 4
    Sort / Bounds

    투명 겹침 순서와 컬링 범위를 확인한다.

  5. 5
    Camera Test

    거리와 각도를 바꿔 같은 결함이 재현되는지 본다.

  6. 6
    흰 사각형

    Material·Texture를 기본 Sprite Material과 비교한다.

  7. 7
    방향이 어색함

    Alignment를 Velocity로 바꿔 속도 벡터와 대조한다.

  8. 8
    겹칠 때 깜빡임

    Sort Mode·Bounds·투명도와 파티클 수를 함께 본다.

렌더러 모듈은 여러분의 파티클 효과에 최종적인 을 입히는 단계입니다.

어떤 재질의 옷을 입히고, 어떻게 보이게 할지 결정하는 것은 여러분의 창의적인 비전에 달려 있습니다.

재질, 정렬 방식, 렌더러 종류를 효과 목적에 맞게 선택해야 합니다.

이제 나이아가라 모듈의 기본 사용법에 대한 큰 그림을 그리셨을 겁니다.


Sprite Renderer는 머티리얼, 애니메이션, 정렬, 투명 정렬을 목적에 맞게 고르는 단계입니다.

Sprite Renderer는 정렬, 크기, 머티리얼을 함께 맞춘다

Sprite가 가장 단순해 보여도 Facing, Alignment, Size, Material 선택이 화면 결과와 비용을 크게 바꾼다.

설정의미맞는 상황주의점
Facing Mode카메라를 향하는 방식연기, 불꽃, 먼지카메라 각도에서 뒤집힘 확인
Alignment속도나 커스텀 방향에 맞춤빗줄기, 속도감 있는 입자Velocity가 0일 때 방향 불안정
Size Binding파티클 크기 속성 연결수명에 따라 커지는 효과너무 큰 투명 영역은 오버드로 증가
Material색, 알파, 블렌딩 결정부드러운 반투명 표현Opaque/Translucent 비용 구분
Sorting겹침 순서 제어투명 입자 다층 표현정렬 비용과 깜박임 확인

렌더링 설정은 보이는 품질뿐 아니라 정렬, 머티리얼, 비용을 함께 바꾸므로 최종 확인 기준을 정리합니다.

Sprite Renderer 설정 판단표

렌더러는 파티클 데이터가 어떤 픽셀로 보일지를 정한다. 머티리얼, SubUV, 정렬, 정렬 순서를 목적에 맞게 나눠 본다.

  1. Material
  2. 색, 질감, 투명도
  3. 검게 보임, 안 보임
  4. Blend Mode

    알파 입력을 본다.