파티클 라이트 생성 방법

나이아가라 시스템에서 파티클 라이트를 생성하는 방법입니다.

Windows
MacOS
Linux
필요한 사전지식

이 글은 다음 주제에 대한 지식이 있는 분들을 대상으로 합니다. 계속하기 전 확인해 주세요.

파티클 주변의 월드를 밝히는 기능을 파티클에 지정하면 프로젝트의 비주얼 이펙트에 사실감을 한층 더할 수 있습니다. 다음 하우투에서는 파티클과 라이트가 동시에 스폰될 수 있도록 나이아가라 이미터를 설정하는 법에 대해 살펴보겠습니다.

사전 요구사항(Prerequisite step) : 이 하우투에서는 시작용 콘텐츠(Starter Content) 에서 제공하는 M_Radial_Gradient 머티리얼을 사용했습니다. 시작용 콘텐츠에 포함된 새 프로젝트를 생성 하거나, 시작용 콘텐츠가 포함되어 생성된 프로젝트를 사용해야 합니다.

시스템 및 이미터 생성

캐스케이드와 달리 나이아가라 이미터와 시스템은 독립되어 있습니다. 현재 권장되는 워크플로는 기존 이미터 또는 이미터 템플릿에서 시스템을 생성하는 것입니다.

  1. 먼저 콘텐츠 브라우저에서 우클릭하여 나이아가라 시스템을 생성한 다음 나타나는 메뉴에서 FX > 나이아가라 시스템(FX > Niagara System) 을 선택합니다. 나이아가라 이미터 마법사가 표시됩니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  2. 선택한 이미터에서 신규 시스템 생성(New system from selected emitters) 을 선택하고 다음(Next) 을 클릭합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  3. 템플릿(Templates) 에서 분수(Fountain) 를 선택합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  4. 더하기 기호(Plus sign) ( + ) 아이콘을 클릭하여 시스템에 추가할 이미터 목록에 해당 이미터를 추가한 다음 완료(Finish) 를 클릭합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  5. 새 시스템 이름을 ParticleLight 로 지정합니다. 나이아가라 에디터에서 더블클릭하여 엽니다.

    시스템 이름 지정

  6. 새 시스템의 이미터 인스턴스 이름은 기본적으로 분수(Fountain) 입니다. 이름은 변경할 수 있습니다. 시스템 개요(System Overview) 에서 이미터 인스턴스 이름을 클릭하면 필드가 편집 가능하게 됩니다. 이미터 이름을 FX_ParticleLight 로 지정합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  7. ParticleLight 시스템을 레벨로 드래그합니다.

파티클 이펙트를 만들 때 레벨에 시스템을 드래그하는 작업은 항상 추천합니다. 이렇게 하면 모든 변경 및 편집 내역을 맥락과 함께 볼 수 있습니다. 시스템에서 변경한 내용은 레벨의 시스템 인스턴스에 자동으로 전파됩니다.

이미터 업데이트 그룹 세팅 편집

먼저 이미터 업데이트(Emitter Update) 그룹에서 모듈을 편집합니다. 이미터에 적용되는 동작과 각 프레임을 업데이트하는 동작이 있습니다.

  1. 시스템 개요(System Overview) 에서 이미터 업데이트(Particle Update) 그룹을 클릭하여 선택(Selection) 패널에서 엽니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  2. Emitter State(이미터 상태) 모듈을 확장합니다. Fountain(분수) 템플릿을 사용했기 때문에 Life Cycle Mode(라이프 사이클 모드)가 Self(셀프)로 설정됩니다. 드롭다운을 클릭하고 Life Cycle Mode(라이프 사이클 모드)를 System(시스템)으로 설정합니다. 이렇게 하면 시스템에서 라이프사이클 세팅을 계산할 수 있으며, 이를 통해 주로 성능이 최적화됩니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  3. Spawn Rate(스폰 속도) 모듈은 이미터가 활성 상태에 있는 동안 지속적인 파티클 스트림을 생성합니다. 이 모듈은 Fountain(분수) 템플릿에서 나타납니다. 스폰 속도(Spawn Rate)500 으로 설정합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

파티클 스폰 그룹 세팅 편집

다음으로 파티클 스폰 그룹에서 모듈을 편집합니다. 이 비헤이비어는 처음 스폰되었을 때 파티클에 적용됩니다.

  1. 시스템 개요(System Overview) 에서 파티클 스폰(Spawn) 그룹을 클릭하여 선택(Selection) 패널에서 엽니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  2. Initialize Particle(파티클 초기화) 모듈을 확장합니다. 이 모듈은 연관된 파라미터 여러 개를 한 모듈에서 함께 수집하여 스택의 복잡도를 최소화합니다. 포인트 어트리뷰트(Point Attributes) 에서 수명(Lifetime) 파라미터를 찾습니다. 이 파라미터는 파티클이 사라지기 전까지 표시되는 시간을 결정합니다. 이 이펙트에서 범위가 지정된 균등 플로트(Uniform Ranged Float) 라는 다이내믹 입력을 사용하여 파티클을 얼마나 오래 표시할 수 있는지 무작위로 설정할 수 있습니다. Uniform Ranged Float(범위가 지정된 균등 플로트)는 분수 템플릿의 Lifetime(수명) 파라미터에 이미 적용되어 있습니다. 최소(Minimum)최대(Maximum) 에 다음 값을 설정합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

    세팅

    Minimum(최소)

    1.75

    Maximum(최대)

    2.5

  3. 마찬가지로 포인트 어트리뷰트(Point Attributes) 에서 컬러(Color) 파라미터를 찾습니다. 여기서는 스폰 시 파티클의 초기 코드를 설정합니다. RGB 필드에 다음 값을 설정합니다.

    언리얼 엔진의 색 선택 툴은 RGB 컬러 값을 0과 1 사이의 정수로 정규화합니다. 컬러 값을 1보다 크게 설정하면 이미시브 컬러가 됩니다. 파티클은 레벨에 시스템이 배치될 때 컬러를 빛나게 합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

    세팅

    빨강(Red)

    .1

    초록(Green)

    .3

    파랑(Blue)

    50

  4. 스프라이트 어트리뷰트(Sprite Attributes) 에서 스프라이트 크기(Sprite Size) 파라미터를 찾아 박스를 선택하여 활성화합니다. 분수 파티클 크기에 무작위 이펙트가 더해지도록 다이내믹 입력을 추가할 수 있습니다. 맨 처음 추가할 것은 Vector 2D from Float(플로트의 벡터 2D) 입니다. 스프라이트 크기(Sprite Size) 옆에 있는 아래 방향 화살표를 클릭하고 Dynamic Inputs > Vector 2D from Float(다이내믹 입력 > 플로트의 벡터 2D) 를 선택합니다. 이렇게 하면 Sprite Size(스프라이트 크기)의 XY 필드가 단일 Value(값) 필드로 바뀝니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  5. 이제 값(Value) 옆에 있는 아래 방향 화살표를 클릭하고 범위가 지정된 균등 플로트(Uniform Ranged Float) 를 선택합니다. 이렇게 하면 Value(값)에 Minimum(최소)Maximum(최대) 필드가 추가됩니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  6. 스프라이트 크기(Sprite Size)최소(Minimum)최대(Maximum) 값에 다음을 설정합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

    세팅

    Minimum(최소)

    2.5

    Maximum(최대)

    8.0

  7. 구체 위치(Sphere location) 는 스프라이트 스폰 시 모양과 원점을 제어합니다. 구체 모양의 크기는 반경을 표시하여 설정할 수 있습니다. 구체 위치(Sphere location) 모듈은 분수 템플릿에 포함되어 있습니다. 구체 반경(Sphere Radius)15 로 설정합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  8. 분수 템플릿에는 원뿔에 속도 추가(Add Velocity in Cone) 모듈도 포함되어 있습니다. 여기서는 스폰 시 파티클에 움직임을 더할 수 있습니다. 원뿔의 포인트는 파티클 스폰 포인트로 X , Y , 및 Z 값을 설정하여 원뿔이 확장할 방향을 결정합니다. 속도 세기(Velocity Strength) 에는 범위가 지정된 균등 플로트(Uniform Ranged Float) 라는 다이내믹 입력이 적용되어 있습니다. 최소(Minimum)최대(Maximum) 에 다음 값을 설정합니다. 다른 세팅은 기본값으로 둡니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

    세팅

    Minimum(최소)

    300

    Maximum(최대)

    600

파티클 업데이트 그룹 세팅 편집

이제 다음으로 파티클 업데이트(Particle Update) 그룹에서 모듈을 편집합니다. 이 비헤이비어는 이미터의 파티클에 적용되며 각 프레임을 업데이트합니다.

  1. 시스템 개요(System Overview) 에서 파티클 업데이트(Particle Update) 그룹을 클릭하여 선택(Selection) 패널에서 엽니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  2. 중력(Gravity Force) 모듈은 중력이 오브젝트에 어떤 영향을 주는지 시뮬레이션합니다. 항력(Drag) 모듈은 파티클에 항력을 적용하여 파티클 속도를 낮춥니다. Gravity Force(중력)와 Drag(항력) 기본 세팅은 이 이펙트에서 작동하므로 그대로 두어도 됩니다.

  3. 콜리전을 설정하지 않으면 이펙트에서 파티클은 레벨에서 마루나 다른 딱딱한 오브젝트에 충돌하면 떨어집니다. 콜리전(Collision) 모듈을 추가하려면 파티클 업데이트(Particle Update) 에서 더하기 기호(Plus sign) (+) 아이콘을 클릭한 다음 콜리전 > 콜리전(Collision > Collision) 을 선택합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  4. 콜리전(Collision) 모듈은 Solve Forces and Velocity(힘 및 속도 해결) 모듈 다음으로 스택 맨 아래 삽입됩니다. 이렇게 하면 오류가 발생합니다. 이슈 고침(Fix Issue) 을 클릭하여 콜리전 모듈을 이동하여 오류를 해결합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  5. Collision(콜리전) 모듈의 기본 세팅을 그대로 둡니다.

라이트 렌더러 추가

이제 분수 이펙트에 라이트 렌더러를 추가합니다.

  1. 시스템 개요(System Overview) 에서 렌더(Render) 그룹을 클릭하여 선택(Selection) 패널에서 엽니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  2. 렌더(Render) 에서 더하기 기호(Plus sign) ( + )을 클릭하고 라이트 렌더러(Light Renderer) 를 선택합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  3. 반경 스케일(Radius Scale)5.0 으로 설정합니다. 이렇게 하면 파티클 스폰 포인트로부터 라이트가 얼마나 퍼지는지 결정합니다.

    이미지를 클릭하면 전체 크기로 확대됩니다.

  4. Color Add(컬러 추가) 값을 사용하면 이펙트에서 방출된 라이트 컬러를 변경할 수 있습니다. 이러한 값은 X , YZ 로 레이블링되지만 각각 X=빨강(Red) , Y=초록(Green) , Z=파랑(Blue) 로 각각 RGB 값으로 대응됩니다. 라이트 컬러를 파티클 컬러와 일치하게 하려면 값을 다음으로 지정합니다.

    세팅

    Red(빨강)

    0

    Green(초록)

    0

    Blue(파랑)

    15

최종 결과

축하합니다! 이제 파티클 라이트를 포함하고 씬에서 라이트를 방출하는 이펙트 생성이 완료되었습니다.

태그
Select Skin
Light
Dark

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

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

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

네이버 카페
공식 포럼