icon
2장 : 나이아가라의 기본 구성 요소

이미터의 개념과 설정


이제 나이아가라 에디터의 맛보기를 경험하셨으니, 본격적으로 나이아가라 시스템을 구성하는 가장 중요한 요소 중 하나인 이미터(Emitter) 에 대해 자세히 알아보겠습니다. 이미터는 파티클 시스템의 심장과 같습니다. 마치 엔진이 자동차를 움직이게 하듯, 이미터는 파티클을 생성하고 생명을 불어넣는 역할을 담당합니다.


이미터란 무엇인가요?

이미터는 나이아가라 시스템 내에서 특정 파티클의 종류와 그 파티클이 어떻게 생성되고, 존재하며, 사라지는지를 정의하는 독립적인 단위입니다. 하나의 나이아가라 시스템은 여러 개의 이미터를 포함할 수 있습니다. 예를 들어, 불꽃 효과를 만든다고 가정해봅시다. 불꽃 심지에서 올라오는 연기, 터져서 흩날리는 불꽃, 그리고 잔재로 남는 재. 이 세 가지는 모두 다른 특성을 가진 파티클이며, 각각의 효과를 하나의 이미터가 담당할 수 있습니다.

이미터는 크게 두 가지 유형으로 나눌 수 있습니다.

  • 독립적인 이미터(Stand-alone Emitter): 자체적으로 하나의 .uasset 파일로 존재하며, 여러 나이아가라 시스템에서 재사용될 수 있습니다. 이는 특정 효과(예: 폭발의 섬광, 연기 기둥)를 표준화하여 다양한 시스템에 적용할 때 매우 유용합니다.
  • 시스템 내장 이미터(Embedded Emitter): 특정 나이아가라 시스템 내에 종속되어 생성되는 이미터입니다. 해당 시스템에서만 사용되며, 주로 시스템의 특정 부분을 구성할 때 사용합니다.

이 장에서는 주로 시스템 내에 포함된 이미터를 기준으로 설명하겠지만, 독립적인 이미터도 동일한 원리로 작동합니다.


이미터의 주요 설정과 모듈

이미터는 크게 네 가지 핵심 섹션으로 구성되며, 각 섹션에 다양한 모듈(Module) 을 추가하여 파티클의 동작을 정의합니다. 나이아가라 에디터의 개요(Overview) 패널에서 이미터를 클릭하면 이 섹션들을 확인할 수 있습니다.

이미터 업데이트 (Emitter Update)

  • 이 섹션의 모듈들은 이미터 자체에 영향을 미 미치며, 파티클이 생성되기 전에 또는 이미터의 수명 주기 동안 한 번 실행되거나 매 프레임 업데이트됩니다.
  • Emitter State: 이미터의 루핑(Looping) 방식, 지속 시간, 활성화/비활성화 시점 등을 설정합니다. 예를 들어, 이미터가 계속해서 파티클을 생성할지, 아니면 일정 시간만 생성하고 멈출지 등을 여기서 결정합니다.
  • Spawn Rate 또는 Spawn Burst: 파티클이 얼마나 자주, 또는 한 번에 몇 개씩 생성될지를 정의합니다.
    • Spawn Rate: 초당 몇 개의 파티클을 생성할지 지정합니다. 지속적으로 파티클을 뿜어내는 연기나 물줄기 같은 효과에 사용됩니다.
    • Spawn Burst Instantaneous: 한 번에 지정된 수의 파티클을 생성합니다. 폭발처럼 짧은 순간에 많은 파티클이 필요한 효과에 적합합니다.

스폰 (Spawn)

  • 이 섹션의 모듈들은 각 파티클이 생성되는 순간에 단 한 번만 실행됩니다.
  • Initialize Particle: 생성되는 파티클의 기본적인 속성(예: 수명, 초기 색상, 초기 크기)을 정의합니다. 이 모듈은 대부분의 이미터에 필수적으로 포함됩니다.
  • Set New or Existing Parameter Randomly: 파티클의 특정 속성(예: 초기 속도, 초기 회전)에 무작위 값을 부여하여 파티클마다 미묘한 차이를 줄 때 사용합니다. 이는 효과를 더욱 자연스럽고 다채롭게 만듭니다.
  • Add Velocity: 파티클이 생성될 때 초기 속도를 부여하여 특정 방향으로 움직이도록 합니다.

파티클 업데이트 (Particle Update)

  • 이 섹션의 모듈들은 파티클이 살아있는 동안 매 프레임 실행됩니다. 파티클의 움직임, 색상 변화, 크기 변화 등 동적인 요소를 제어하는 핵심적인 부분입니다.
  • Add Velocity / Force: 중력(Gravity Force), 바람(Wind Force) 등 외부 힘을 적용하여 파티클의 움직임을 변화시킵니다.
  • Scale Color: 파티클의 수명에 따라 색상이 변하도록 설정합니다. (예: 뜨거울 때는 붉은색, 식을수록 푸른색으로 변화하는 불꽃)
  • Scale Sprite Size: 파티클의 수명에 따라 크기가 변하도록 설정합니다. (예: 사라질수록 점점 작아지는 연기)
  • Solve Forces and Velocity: 이전에 적용된 모든 힘과 속도 변화를 통합하여 최종 파티클의 위치를 계산합니다. 이 모듈은 보통 파티클 업데이트 섹션의 마지막에 위치합니다.

렌더 (Render)

  • 이 섹션의 모듈들은 파티클이 최종적으로 화면에 어떻게 그려질지를 정의합니다.
  • Sprite Renderer: 파티클을 2D 이미지(스프라이트) 형태로 렌더링합니다. 가장 일반적으로 사용되는 렌더러입니다.
  • Mesh Renderer: 파티클을 3D 메시(Mesh) 형태로 렌더링합니다. 예를 들어, 파티클 하나하나를 작은 돌멩이나 캐릭터 모델로 표현할 때 사용합니다.
  • Ribbon Renderer: 파티클의 경로를 따라 연속적인 선(리본) 형태로 렌더링합니다. 마법 주문의 궤적이나 물줄기 같은 효과에 적합합니다.
  • Light Renderer: 파티클이 주변 환경에 빛을 방출하도록 합니다.

이미터 추가 및 제거

나이아가라 시스템에 새로운 이미터를 추가하거나 기존 이미터를 제거하는 것은 매우 간단합니다.

  • 추가: 개요 패널에서 System 항목 아래의 + 버튼을 클릭하거나, 이미터 목록의 하단에 있는 + 버튼을 클릭하여 원하는 이미터(독립적인 이미터 에셋 또는 템플릿 이미터)를 추가할 수 있습니다.
  • 제거: 제거하고 싶은 이미터를 선택한 후 Delete 키를 누르면 됩니다.

이미터는 나이아가라 시스템의 설계에서 가장 중요한 단위입니다. 각 이미터가 어떤 파티클을, 어떻게 생성하고, 어떤 방식으로 움직이며, 최종적으로 어떻게 보이는지를 정의하는가를 이해하는 것이 나이아가라를 마스터하는 첫걸음입니다. 앞으로 다양한 예제를 통해 이미터의 각 섹션과 모듈들을 심도 있게 다루어 볼 예정입니다.