본문으로 건너뛰기

안동민 개발노트

본문 시작

기본 머티리얼 설정과 적용

파티클용 머티리얼의 블렌드 모드·셰이딩 모델·Particle Color·텍스처를 설정해 기본 불꽃 표현을 완성합니다.

나이아가라 파티클 시스템에서 아무리 복잡하고 정교한 계산을 통해 파티클의 움직임을 제어하더라도, 이 파티클들이 우리의 눈에 어떻게 보일지를 결정하는 것은 전적으로 머티리얼(Material)의 역할입니다.

머티리얼은 파티클의 색상, 질감, 투명도, 그리고 빛과의 상호작용 방식 등 시각적인 모든 측면을 정의하는 핵심 요소입니다.

나이아가라에서 파티클을 렌더링하기 위한 가장 기본적인 단계는 바로 적절한 머티리얼을 설정하고 적용하는 것입니다.

이 절에서는 나이아가라 파티클에 머티리얼을 적용하는 방법과, 파티클 시스템에 최적화된 머티리얼을 만드는 기본 원칙에 대해 알아보겠습니다.

파티클 머티리얼은 계산된 속성을 화면 픽셀로 연결한다

효과 의도를 먼저 정하고 Blend·Shading을 선택한 뒤 Niagara 속성과 Renderer Binding을 연결해 실제 장면에서 투명도·조명·비용을 확인한다.

  1. 화면 의도

    연기·불꽃·충격파 중 필요한 실루엣과 투명도를 정한다.

  2. Material 설정

    Blend Mode·Shading Model·Texture·Opacity 경계를 고른다.

  3. Niagara 속성

    Color·Alpha·Size가 Spawn과 Update에서 만들어지는지 본다.

  4. Renderer 할당

    Sprite·Mesh Renderer의 Material과 Binding을 연결한다.

  5. 장면 검증

    밝고 어두운 배경, 겹침, 카메라 거리에서 결과와 비용을 잰다.

선택잘 맞는 표현먼저 확인할 비용
Additive / Unlit불꽃·마법 발광화면 겹침·과노출
Translucent / Lit연기·안개·조명 반응오버드로우·조명 계산
Masked / Lit경계가 단단한 파편마스크 경계·재질 복잡도

머티리얼이란 무엇인가요?

언리얼 엔진에서 머티리얼은 3D 오브젝트나 파티클의 표면이 빛에 어떻게 반응할지를 결정하는 데이터 에셋입니다.

이는 색상(Base Color), 거칠기(Roughness), 금속성(Metallic), 노멀(Normal) 맵, 투명도(Opacity) 등 다양한 속성을 포함하며, 최종적으로 화면에 렌더링될 픽셀의 모습을 정의합니다.

나이아가라 파티클의 경우, 대부분 2D 스프라이트 형태로 렌더링되므로, 주로 텍스처 이미지와 투명도를 다루는 머티리얼이 사용됩니다.


나이아가라에 머티리얼 적용하기

파티클에 머티리얼을 적용하는 과정은 간단합니다.

렌더러 모듈 선택: 나이아가라 에디터의 개요(Overview) 패널에서 이미터 아래의 렌더(Render) 섹션에 있는 렌더러 모듈 (가장 흔하게는 Sprite Renderer)을 선택합니다.

머티리얼 할당: 디테일(Details) 패널에서 Material 속성을 찾습니다.

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

콘텐츠 브라우저에서 사용할 머티리얼 에셋을 검색하여 선택하거나, 드롭다운 목록에서 기존 머티리얼을 찾아 할당합니다.

머티리얼을 할당하는 즉시 뷰포트에서 파티클의 시각적인 변화를 확인할 수 있습니다.


파티클용 머티리얼 제작 기본 원칙

파티클 머티리얼 제작 결정 흐름

나이아가라 머티리얼은 Blend Mode, Particle Color, 텍스처 밀도, 소팅 비용이 함께 맞아야 자연스럽습니다.

  1. 블렌드 선택

    불꽃과 빛은 Additive, 연기와 먼지는 Translucent 계열로 시작합니다. Blend

  2. 색 연결

    Particle Color를 Base/Emissive/Opacity에 연결해 나이아가라 색 제어를 받습니다. Color

  3. 파라미터 노출

    강도, 왜곡, 소멸 값을 Dynamic Parameter 또는 User Parameter와 연결합니다. Control

  4. 비용 절감

    큰 투명 면적, 고해상도 텍스처, 복잡한 노이즈를 줄입니다. Cost

  5. Particle Color

    나이아가라에서 바꾼 색과 알파가 실제 머티리얼에 반영되어야 합니다.

  6. 배경 대비

    밝은 배경과 어두운 배경에서 모두 실루엣이 읽혀야 합니다.

  7. 비용

    크기가 큰 투명 파티클은 화면 점유율이 비용을 결정합니다.

나이아가라 파티클에 최적화된 머티리얼을 만들 때는 몇 가지 중요한 원칙을 고려해야 합니다.

블렌드 모드 (Blend Mode)

파티클 Blend Mode는 모양과 오버드로우 비용을 동시에 정한다

효과가 빛나는지, 부드럽게 투명한지, 잘린 실루엣인지에 따라 Blend Mode와 비용 위험이 달라진다.

Blend Mode잘 맞는 효과장점주의 비용
Additive불꽃, 스파크, 에너지 빛밝게 더해져 발광 느낌이 좋음밝은 영역이 과해질 수 있음
Translucent연기, 안개, 물방울부드러운 알파 표현정렬 문제와 오버드로우 증가
Masked잎사귀, 파편, 잘린 가장자리명확한 실루엣과 비교적 낮은 비용경계가 딱딱해질 수 있음
Opaque투명도가 필요 없는 Mesh 입자정렬 문제가 적고 예측 가능부드러운 입자 표현에는 부적합

머티리얼의 블렌드 모드는 렌더링 시 파티클이 배경과 어떻게 섞일지를 결정하는 가장 중요한 설정입니다.

대부분의 파티클 효과는 투명도를 사용하므로, 다음 세 가지 모드 중 하나를 선택하게 됩니다.

  • Translucent (반투명)
    • 특징: 파티클이 반투명하게 렌더링되어 배경이 비쳐 보입니다. 연기, 안개, 구름, 빛의 잔상 등 부드럽고 몽환적인 효과에 적합합니다.
    • 장점: 가장 자연스러운 투명도 표현이 가능합니다.
    • 단점: 렌더링 순서에 민감하며, 복잡한 투명 객체들이 겹칠 경우 시각적인 아티팩트(Sorting Issue)가 발생할 수 있습니다. 오버드로우(Overdraw) 비용이 높아 성능에 부담을 줄 수 있습니다.
    • 설정: 머티리얼 에디터의 Details 패널에서 Material 섹션의 Blend ModeTranslucent로 설정합니다. Opacity 또는 Opacity Mask 핀에 투명도 정보를 연결합니다.
  • Additive (덧셈)
    • 특징: 파티클의 색상이 배경 위에 더해지면서 렌더링됩니다. 검은색은 투명해지고, 밝은 색상은 강하게 빛나 보입니다. 불꽃, 스파크, 에너지 볼, 레이저 등 밝고 발광하는 효과에 주로 사용됩니다.
    • 장점: 렌더링 순서 문제가 거의 없으며, 강렬한 발광 효과를 쉽게 연출할 수 있습니다. 투명도 표현이 단순하여 Translucent보다 성능이 좋은 경우가 많습니다.
    • 단점: 색상이 어두워지거나 어두운 텍스처를 사용할 경우 효과가 잘 보이지 않을 수 있습니다.
    • 설정: Blend ModeAdditive로 설정합니다. Emissive Color 핀에 색상 정보를 연결합니다. Base Color는 일반적으로 검은색으로 유지합니다.
  • Masked (마스크)
    • 특징: 이미지의 알파 채널을 기준으로 완전히 불투명하거나 완전히 투명하게 렌더링됩니다. 부분적으로 투명한 중간 단계는 없습니다.
    • 장점: 렌더링 순서 문제가 없으며, 투명/불투명 영역이 명확하여 성능 부담이 적습니다.
    • 단점: 부드러운 가장자리나 반투명 표현이 불가능합니다.
    • 설정: Blend ModeMasked로 설정합니다. Opacity Mask 핀에 투명도를 결정할 그레이스케일 이미지나 계산 결과를 연결합니다. Opacity Mask Clip Value를 조절하여 투명/불투명 경계를 조절할 수 있습니다.

셰이딩 모델 (Shading Model)

대부분의 파티클 머티리얼은 빛의 영향을 받지 않도록 Unlit (언릿) 셰이딩 모델을 사용합니다.

Unlit은 자체적으로 빛을 발하는 것처럼 보이게 하며, 주변 조명 환경에 영향을 받지 않아 파티클 효과의 일관성을 유지할 수 있습니다.

  • 설정: 머티리얼 에디터의 Details 패널에서 Material 섹션의 Shading ModelUnlit으로 설정합니다.
색상 속성은 Renderer Binding과 Material Graph를 모두 지난다

Niagara에서 Color를 바꿔도 renderer와 머티리얼이 그 채널을 읽지 않으면 화면은 변하지 않는다.

  1. Niagara 속성

    · WRITE Niagara 속성 Particles.Color Spawn·Update 모듈이 RGBA 기록

  2. Sprite Renderer

    · BIND Sprite Renderer Color Binding이 어떤 particle attribute를 보낼지 결정

  3. Particle Color

    · READ Particle Color Material node가 전달된 RGB·A를 읽음

  4. Texture·Mask

    · COMBINE Texture·Mask 색과 alpha를 텍스처 채널과 곱해 모양 결정

  5. Material Pins

    · OUTPUT Material Pins Emissive·Opacity·Opacity Mask의 목적에 맞게 연결

  6. Additive

    Source+Dest. 빛 효과에 적합하지만 밝은 배경에서 약해지고 겹치면 밝아진다.

  7. Translucent

    연속 Opacity. 부드러운 투명도 대신 정렬과 overdraw를 검증한다.

  8. Masked

    Opacity Mask 임계값의 이진 컷아웃. 부드러운 중간 alpha는 없다.

파티클 컬러 노드 (Particle Color)

나이아가라 시스템에서 파티클의 색상을 동적으로 제어하려면, 머티리얼 내에서 Particle Color 노드를 사용해야 합니다.

이 노드는 나이아가라 시스템에서 Particles.Color 속성으로 설정된 현재 파티클의 색상(RGB)과 알파(A) 값을 머티리얼로 가져옵니다.

  • 사용법: 머티리얼 에디터에서 우클릭하고 Particle Color를 검색하여 추가합니다.
  • 연결: Particle Color 노드의 RGB 출력은 머티리얼의 Base Color 또는 Emissive Color 입력에 연결하고, Alpha 출력은 Opacity 또는 Opacity Mask 입력에 연결합니다.
  • 활용: 나이아가라에서 Initialize Particle이나 Scale Color 모듈을 통해 파티클의 색상을 변경하면, Particle Color 노드를 통해 이 변경 사항이 머티리얼에 반영되어 최종 렌더링에 적용됩니다.

머티리얼을 만들 때는 블렌드 모드, 셰이딩 모델, 파티클 컬러 연결을 한 세트로 점검해야 나이아가라의 색상 제어가 화면까지 이어집니다.

Niagara 색상은 속성에서 Binding을 거쳐 Material 픽셀이 된다

색상이 보이려면 Particles.Color 생성, Renderer Binding, Particle Color 노드, RGB·Alpha 출력이 끊김 없이 이어져야 한다.

  1. Color 생성

    Initialize·Scale Color가 Particles.Color의 RGB와 Alpha를 쓴다.

  2. Renderer Binding

    Sprite Renderer가 Color Binding으로 해당 속성을 읽는다.

  3. Particle Color

    Material 노드가 Renderer에서 전달된 RGBA를 받는다.

  4. 출력 연결

    RGB는 Emissive/Base Color, Alpha는 Opacity에 연결한다.

  5. Blend 결과

    Additive·Translucent·Masked에 맞춰 최종 픽셀을 합성한다.

  6. 안 보임

    Alpha와 Opacity·Opacity Mask 연결을 확인한다.

  7. 빛이 약함

    RGB→Emissive와 Additive 조합을 확인한다.

  8. 색이 고정됨

    Renderer Color Binding과 Particle Color 사용을 확인한다.

파티클 머티리얼은 블렌드 모드와 Particle Color 연결이 결과를 크게 바꾸므로, 적용 전후 체크리스트로 점검합니다.

파티클 머티리얼 적용 체크

Sprite Renderer에 머티리얼을 넣을 때는 Blend Mode, Shading Model, Particle Color 연결이 화면 결과를 좌우합니다.

  1. 블렌드 모드

    Blend Additive는 밝게 누적되고 Translucent는 알파 표현이 쉬우며 Opaque는 비용이 낮습니다.

  2. Particle Color

    Color 나이아가라의 Color와 Alpha를 머티리얼 Base Color 또는 Emissive에 연결합니다.

  3. 텍스처 알파

    Texture 흰 경계가 보이면 텍스처 알파와 프리멀티플라이 상태를 확인합니다.

  4. Renderer 적용

    Bind Sprite Renderer의 Material 슬롯이 의도한 머티리얼 인스턴스를 가리키는지 봅니다.

  5. 나이아가라 Color 값이 머티리얼에서 덮이지 않는지 확인합니다.

  6. 투명도

    Alpha가 0이어도 Emissive가 남아 보이지 않는지 봅니다.

  7. 비용

    큰 반투명 스프라이트는 오버드로가 급증할 수 있습니다.

텍스처 (Texture)

파티클의 모양과 질감을 결정하는 데 사용됩니다.

보통은 알파 채널이 있는 텍스처(TGA, PNG 등)를 사용합니다.

  • : 텍스처를 임포트할 때, 투명도를 위해 Alpha 채널을 사용하는 경우, Compression Settings에서 VectorDisplacementmap 또는 UserInterface2D를 사용하여 Alpha 채널이 올바르게 처리되도록 할 수 있습니다.

직접 해보기: 간단한 불꽃 머티리얼 만들기

간단한 Additive 블렌드 모드를 사용하는 불꽃 머티리얼을 만들어 보겠습니다.

새 머티리얼 생성: 콘텐츠 브라우저에서 우클릭 > Material을 선택하고 M_SimpleFire와 같이 이름을 지정합니다.

더블 클릭하여 머티리얼 에디터를 엽니다.

블렌드 모드 설정
  • Details 패널에서 Material 섹션의 Blend ModeAdditive로 변경합니다.
  • Shading ModelUnlit으로 변경합니다.

파티클 컬러 노드 추가: 머티리얼 그래프에서 우클릭하고 Particle Color를 검색하여 추가합니다.

색상 및 투명도 연결
  • Particle Color 노드의 RGB 출력 핀을 Emissive Color 입력 핀에 연결합니다.
  • Particle Color 노드의 Alpha 출력 핀을 Opacity 입력 핀에 연결합니다.
기본 불꽃 텍스처 추가 (선택 사항)
  • (만약 불꽃 텍스처가 있다면) 콘텐츠 브라우저에서 T_Smoke_SubUV (엔진 기본 제공) 또는 유사한 불꽃/연기 텍스처를 머티리얼 그래프로 드래그 앤 드롭합니다.
  • Texture Sample 노드의 RGB 출력을 Particle Color 노드의 RGB 입력에 곱셈(Multiply) 노드를 사용하여 연결하고, Alpha 출력을 Particle Color 노드의 Alpha 입력에 곱셈(Multiply) 노드를 사용하여 연결합니다. 이렇게 하면 나이아가라에서 설정하는 색상과 투명도가 텍스처에 적용됩니다.

저장: 머티리얼을 저장합니다.

나이아가라 시스템에 적용: 이전에 만든 NS_BasicSpawn (또는 새 시스템)을 열고, Sprite Renderer 모듈의 Material 속성에 M_SimpleFire를 할당합니다.

나이아가라 에디터에서 Initialize Particle 또는 Scale Color 모듈을 사용하여 파티클의 색상을 주황색이나 노란색 계열로 변경해보고, 수명에 따라 알파 값을 조절하여 사라지도록 하면 더욱 불꽃 같은 효과를 볼 수 있습니다.

불꽃 머티리얼 최종 점검표

파티클 머티리얼은 블렌드, 셰이딩, 파티클 컬러 연결이 맞아야 나이아가라 값이 화면에 자연스럽게 반영됩니다.

  1. Blend
    Translucent/Additive

    Blend 연기처럼 겹치는 효과는 Translucent, 불꽃처럼 빛이 더해지는 효과는 Additive를 우선 검토합니다.

  2. Shading
    Unlit 기준

    Shading 파티클 자체가 빛나는 느낌이면 Unlit과 Emissive 연결을 기본값으로 둡니다.

  3. Color
    Particle Color

    Color 나이아가라의 색·알파 변경이 머티리얼에 전달되도록 Base/Emissive/Opacity에 반영합니다.

  4. Emitter Color 변경 확인

  5. 알파

    Fade In/Out 반응 확인

  6. 텍스처

    장자리 뭉침 점검

  7. 밝기

    Emissive 과다 노출 확인


머티리얼 설정은 나이아가라 효과의 시각적인 정체성을 부여하는 가장 중요한 단계입니다.

적절한 블렌드 모드, 셰이딩 모델, 그리고 Particle Color 노드 활용은 여러분의 파티클 효과를 한층 더 전문적으로 보이게 할 것입니다.

기본 머티리얼 설정과 적용은 데이터 입력, 이미터 책임, 렌더 비용, 재현 기준으로 점검합니다.