나이아가라 핵심 개념

언리얼의 파티클 에디터인 Niagara, 나이아가라로 파티클 작업을 할 때의 중요한 개념입니다.

Windows
MacOS
Linux

나이아가라 에디터를 사용하면 언리얼 엔진 프로젝트의 필요에 맞는 다양한 비주얼 이펙트를 만들 수 있습니다. 나이아가라는 강력하고 유연해서 프로젝트에 필요한 어떤 비주얼 이펙트 유형도 처리할 수 있습니다. 여기서는 일반적인 관점에서 나이아가라가 캐스케이드와 다른 점, 나이아가라 에디터의 모든 부분이 어떻게 조합되는지도 살펴보겠습니다.

파티클 이펙트의 모듈식 접근법

캐스케이드의 기본 개념은 이펙트를 가급적 모듈식으로 만드는 것이었습니다. 그래서 캐스케이드에서는 새 이펙트를 만들 때 기본 모듈 세트를 제공한 뒤 모듈을 추가하는 툴을 제공하거나, 아티스트가 필요한 비주얼 이펙트에 따라 완전 새로운 이미터를 추가하는 방식을 사용했습니다. 이 시스템은 수 년 동안 잘 작동하기는 했지만, 특정 작업에 시간이 많이 걸리고 오류가 발생하기 쉬운 문제가 있었습니다. 예를 들면 이펙트 사이 데이터 공유나 다수의 이펙트를 한 번에 업데이트하기가 힘들었습니다.

캐스케이드 파티클 시스템 은 이미터 컬렉션으로 이루어져 있습니다.

나이아가라는 모듈 방식을 완전 포용하는 것으로 이를 해결합니다. 나이아가라는 파티클 시스템을 이루는 이미터를 개별 단위로 분리합니다. 파티클 시스템에 각 이미터를 넣는 대신, 다수의 Niagara Emitter (나이아가라 이미터)로 Niagara System (나이아가라 시스템)을 구축합니다. 이 나이아가라 이미터 각각은 하나의 효과를 제어하는데, 여기에 익숙한 모듈을 사용합니다. 예로 Lifetime (수명), Location (위치), Size (크기) 같은 것이며, 이 모듈들이 파티클의 모양과 작동 방식을 조정합니다. 하지만 나이아가라 이미터는 콘텐츠 브라우저에 저장되는 독립 액터이므로, 어떤 나이아가라 시스템을 만들 때도 업데이트 및 공유 가능합니다. 이미터 수정에 시간이 덜 든다는 뜻입니다.

NiagaraSystemWithEmitters.jpg

나이아가라 이미터 집합으로 구성된 나이아가라 시스템.

나이아가라 이미터

나이아가라 이미터에는 프로젝트에 원하는 특수 효과를 만들기 위한 여러가지 세팅이 들어있습니다. 이 문서의 나이아가라 이미터 마법사 섹션에는 이미터를 만들 때의 여러가지 옵션을 자세히 설명합니다 나이아가라 이미터 모듈 섹션에는 '선택된 이미터' 패널의 기본 섹션과, 각 섹션이 언제 실행되고 어떤 일을 하는지 설명합니다.

나이아가라 이미터 마법사

새 나이아가라 이미터를 만들 때, 이미터 생성에 선택할 수 있는 옵션 창이 표시됩니다.

  • 템플릿 세트에서 새 이미터를 생성할 수 있습니다. 이 템플릿에는 자주 사용되는 이미터 여러 유형이 제공됩니다. 큰 개발사에서 근무하는 경우, 아트 리드가 이 템플릿을 관리하여 모범 사례를 템플릿에 적용할 수 있습니다. 템플릿은 언리얼 엔진이 처음인 경우 좋은 시작점이 되기도 합니다.
    NiagaraEmitter_FountainTemplate.png

  • 기존 이미터 목록에서 새 이미터를 만들 수 있습니다. 한 시스템이든 여러 시스템이든, 비슷한 이미터를 여럿 만들어야 하는 경우 좋습니다.
    NiagaraEmitter_CopyExistingEmitters.png

  • 완전히 빈 이미터를 새로 만들 수 있습니다.
    NiagaraEmitter_BlankEmitter-opt.png

나이아가라 이미터 모듈

나이아가라 이미터를 생성 또는 열 때, 선택된 이미터 탭에서 찾을 수 있는 기본 모듈이 몇 가지 포함되어 있습니다. 이 탭 안에는 다음과 같은 옵션을 펼치고 편집할 수 있습니다. 이 모듈 각각은 이미터 스폰 방식과 수명에 걸친 작동 방식에 영향을 줍니다.

NiagaraEmitter.png

이미터 스폰

Emitter Spawn (이미터 스폰) 섹션은 이미터가 시작될 때 실행됩니다. 일회성 구성 작업을 한 뒤 나중에 스크립트에서 사용할 수 있다는 점에서 블루프린트의 컨스트럭션 스크립트와 비슷합니다. 개별 파티클을 참조할 수는 없지만, 이미터 변수, 이미터 모듈 실행, 파티클 스크립트에 사용될 변수 구성은 가능합니다.

이미터 업데이트

Emitter Update (이미터 업데이트) 섹션은 이미터가 활성 상태인 매 프레임마다 실행됩니다. 사용자는 스폰시킬 파티클 수, 파티클 업데이트 스크립트에 사용할 상수 값 계산, 기타 이미터에 대한 프레임 당 "틱" 로직을 여기서 결정할 수 있습니다. 중요한 점은 여기에 Emitter Lifecycle (이미터 수명) 모듈이 있어야 각 이미터에 모든 수명 로직이 확실히 실행되도록 할 수 있습니다. 그래야 시스템이 정상 종료됩니다.

파티클 스폰

Particle Spawn (파티클 스폰) 섹션은 파티클이 태어날 때마다 실행됩니다. 사용자는 여기서 파티클의 초기 상태를 설정할 수 있습니다. 이미터가 Interpolated Spawn (보간 스폰)을 사용하도록 설정되지 않은 경우, 파티클이 렌더링되는 첫 프레임 상태는 이 섹션의 출력이 결정합니다. 보간 스폰이 발생하면, 파티클은 이전 프레임부터의 시간 범위에서 고르게 퍼집니다. 발생하지 않으면, 순간적인 버스트가 발생하하고 업데이트 스크립트가 각 파티클에 대해 실행되면서, 생성 이후 일정 프레임 동안 진행됩니다. 이를 통해 사용자는 부드러운 흔적을 만들 수 있고, 파티클 업데이트 스크립트에 파티클이 렌더링되는 첫 프레임 상태를 정의할 수도 있습니다. 각 파티클 구분을 위해 무작위성이 필요하다면, 스폰 스크립트에 난수를 선택하고, 그 값을 저장한 뒤 이후 업데이트 "틱"에 사용하면 됩니다.

파티클 업데이트

Particle Update (파티클 업데이트) 섹션은 개별 파티클의 수명에 걸친 동작을 제어합니다. 사용자는 이 섹션에서 물리 시뮬레이션 특성, 렌더링 특성 등을 변경할 수 있습니다. 사용자가 데이터를 다른 이미터를 방송하려는 경우, 이벤트를 방출하는 모듈은 이 섹션에서 발생할 수 있습니다. 중요한 점은 이 섹션에 Update Age (나이 업데이트) 모듈이 있어야 각 파티클이 계속해서 나이를 먹고 결국 수명이 다하면 소멸되도록 할 수 있습니다.

이벤트 핸들러 추가

Add Event Handler (이벤트 핸들러 추가) 섹션은 이 이미터가 콜리전 또는 다른 이미터에서 받은 이벤트에 반응하는 방식을 결정합니다.

렌더

Render (렌더) 섹션은 다음 모듈 하나 이상을 포함합니다:

  • Niagara Light Renderer Properties 나이아가라 라이트 렌더러 프로퍼티: 이 모듈은 Light Rendering (라이트 렌더링) 및 Sort Order (소트 순서) 세팅을 포함합니다.

  • Niagara Mesh Renderer Properties 나이아가라 메시 렌더러 프로퍼티: 이 모듈은 Mesh Rendering (메시 렌더링), Sorting (소팅), Bindings (바인딩), Sort Order (소트 순서) 세팅을 포함합니다.

  • Niagara Ribbon Renderer Properties 나이아가라 리본 렌더러 프로퍼티: 이 모듈은 Ribbon Rendering (리본 렌더링) 및 Sort Order (소트 순서) 세팅을 포함합니다.

  • Niagara Sprite Renderer Properties 나이아가라 스프라이트 렌더러 프로퍼티: 이 모듈은 Sprite Rendering (스프라이트 렌더링), Sorting (소팅), Sub UV (서브 UV), Bindings (바인딩), Sort Order (소트 순서) 세팅을 포함합니다.

위에 표시된 각 섹션에 변수, 파라미터, 또는 모듈을 추가하려면 더하기 (+) 아이콘, 제거하려면 휴지통 아이콘을 클릭합니다.

나이아가라 시스템

프로젝트에 나이아가라 이미터를 사용하려면, 반드시 나이아가라 시스템 안에 넣어야 합니다. 나이아가라 시스템은 이펙트를 만드는 데 사용된 개별 나이아가라 이미터를 표시하는 데 사용됩니다. 이렇게 하면 여러가지 나이아가라 이미터를 섞어 맞추는 작업이나, 기존 이미터만 사용해서 완전 새로운 이펙트를 만드는 것이 매우 쉽습니다.

나이아가라 시스템을 만들려면 나이아가라 시스템 마법사를 사용합니다. 마법사에 나열된 여러 옵션을 사용하여 프로젝트에 가장 적합한 나이아가라 시스템을 보다 쉽게 만들 수 있습니다.

  • 템플릿 목록에서 시스템을 만들 수 있습니다. 이 템플릿에는 일반적으로 사용되는 여러 유형의 시스템이 있습니다. 큰 개발사에서 근무하는 경우, 아트 리드가 그 템플릿을 선정하는 식으로 모범 사례를 구축할 수 있습니다. 언리얼 엔진이 처음인 경우, 좋은 시작점이 되기도 합니다.
    NiagaraSystem_TemplateOptions.png

  • 만들어 둔 어떤 이미터에서도 새 시스템을 만들 수 있습니다. 필요한 이미터가 이미 있는 경우 이 옵션을 사용하세요.
    NiagaraSystem_CreateFromEmitter.png

  • 프로젝트에 이미 존재하는 시스템을 복사할 수 있습니다.
    NiagaraSystem_CopyFromExisting.png

  • 빈 시스템을 만들 수 있습니다.
    NiagaraSystem_BlankSystem.png

나이아가라 시스템나이아가라 이미터 를 추가하려면, 콘텐츠 브라우저에서 나이아가라 이미터를 끌어 타임라인트랙 섹션에 놓으면 됩니다.

이미터를 시스템에 추가한 뒤 프로퍼티를 변경할 수 있습니다. 타임라인에서 이미터를 찾아 선택하면, 선택된 이미터 패널에 그 이미터의 모듈과 프로퍼티가 표시됩니다. 여기서 이미터의 프로퍼티를 조정할 수 있습니다.

새로운 언리얼 엔진 4 문서 사이트에 오신 것을 환영합니다!

문서 사이트에 대한 의견을 모을 수 있는 피드백 시스템을 포함해서 여러가지 새로운 기능을 준비하고 있습니다. 아래 Documentation Feedback 포럼(영문) 또는 언리얼 엔진 네이버 공식 카페(한글) 중 편하신 곳에 의견이나 문제점을 알려 주세요.

새 시스템이 준비되면 알려 드리겠습니다.

네이버 카페
공식 포럼