Choose your operating system:
Windows
macOS
Linux
목표
나이아가라 퀵스타트는 나이아가라를 이용하여 언리얼 엔진에서 비주얼 이펙트(VFX)를 만드는 방법을 잘 알 수 있도록 사용자를 위해 제작되었습니다.
목적
-
나이아가라에 사용할 메시와 머티리얼을 프로젝트에 구성하는 방법
-
나이아가라 이미터 및 시스템을 사용하여 기본 이펙트를 생성하는 방법
-
애니메이션에 이펙트가 나타나도록 캐릭터에 나이아가라 이펙트를 연결하는 방법
1 - 프로젝트 구성
이 가이드로 샘플 작업을 하는 동안에는 시작용 콘텐츠(Starter Content) 가 활성화된 상태로 블루프린트 삼인칭 템플릿(Blueprint Third Person Template) 프로젝트를 사용해야 합니다. 언리얼 엔진에서 프로젝트를 생성하지 않았다면 프로젝트 생성 을 참조하세요.
나이아가라 이펙트 생성을 시작하기 전에 먼저 이 가이드의 다음 내용에서 사용할 기본 머티리얼과 에셋을 프로젝트에 구성해야 합니다. 이 섹션에 따라 작업을 진행하고 나면 나이아가라 이펙트를 생성하는 데 필요한 모든 준비를 마치게 됩니다.
메시 모양 생성
프로젝트 구성에 가장 먼저 필요한 것은 이펙트에 사용할 메시 모양입니다. 캐릭터가 달리고 있을 때 발생하는 작은 먼지를 생성해 보겠습니다. 3D 모델링 애플리케이션에서 이 모양을 생성하고, 익스포트한 다음 UE4 프로젝트에서 임포트할 수 있습니다.
-
콘텐츠 브라우저에서 우클릭하고 새 폴더(New Folder) 를 선택하여 이 퀵스타트에 사용할 폴더를 만듭니다. 이 폴더에 에셋을 모두 넣습니다. 이름은 Quickstart 라고 지정합니다.
머티리얼 생성
이제 먼지 구름에 사용할 기본 머티리얼을 만들어보겠습니다. 다음 단계를 따릅니다.
-
콘텐츠 브라우저를 우클릭하고 머티리얼(Material) 을 선택합니다.
새 머티리얼 생성 ](Material_CreateNewMaterial.png)
-
새 머티리얼 이름을 M_DustPoof 로 지정합니다. 머티리얼 에디터에서 머티리얼을 더블클릭하여 엽니다.
-
기본 머티리얼 노드를 선택한 상태로 디테일(Details) 패널에서 머티리얼(Material) 섹션을 찾습니다. 블렌드 모드(Blend Mode) 를 반투명(Translucent) 으로 변경합니다. 양면(Two Sided) 박스를 선택합니다. 다른 세팅은 기본값으로 둡니다.
-
그래프에서 우클릭하고 검색창에 `particle`을 입력합니다. **파티클 컬러(Particle Color)** 를 선택하여 파티클 컬러 노드를 추가합니다. 파티클 컬러 노드의 상단 출력을 메인 머티리얼 노드의 **베이스 컬러(Base Color)** 입력에 연결합니다.
-
텍스처 샘플(Texture Sample) 노드를 생성합니다. T를 누른 상태로 노드 그래프 내부를 클릭하면 노드를 생성할 수 있습니다.
-
텍스처 샘플 노드를 선택한 상태로 디테일(Details) 패널에서 머티리얼 표현식 텍스처 베이스(Material Expression Texture Base) 섹션을 찾습니다. 드롭다운을 클릭하고 검색창에 노이즈(Noise) 를 입력합니다. T_Perlin_Noise_M 텍스처를 선택합니다.
-
그래프에서 우클릭하고 검색창에 `dynamic`을 입력합니다. **다이내믹 파라미터(Dynamic Parameter)** 를 선택하여 해당 노드를 추가합니다.
-
다이내믹 파라미터 노드를 선택한 상태로 디테일 패널에서 머티리얼 표현식 다이내믹 파라미터 섹션을 찾습니다. 배열 0(Array 0) 에서 이름을 Erode 로 지정합니다.
-
그래프에서 우클릭하고 검색창에 `step`을 입력합니다. **값 스텝(Value Step)** 을 선택하여 해당 노드를 추가합니다.
-
텍스처 샘플 노드의 R 출력을 드래그하여 값 스텝(Value Step) 노드의 그레이디언트(Gradient) 입력에 연결합니다.
-
다이내믹 파라미터 노드의 Erode 출력을 드래그하여 값 스텝 노드의 마스크 오프셋 값(Mask Offset Value) 입력에 연결합니다.
-
값 스텝 노드의 결과 보기(Results) 출력을 드래그하여 새 머티리얼 노드의 오파시티(Opacity) 입력에 연결합니다.
-
적용(Apply) 및 저장(Save) 을 클릭한 다음 머티리얼 에디터를 닫습니다.
섹션 결과
이제 메시 모양을 생성했고, 기본 머티리얼도 제작했습니다. 이제 나이아가라 이펙트를 만드는 데 필요한 준비를 모두 갖추었습니다.
2 - 이펙트 생성
시스템 및 이미터 생성
이제 나이아가라 시스템을 생성하겠습니다. 캐스케이드와 달리 나이아가라 이미터와 시스템은 독립되어 있습니다. 현재 권장되는 워크플로는 기존 이미터 또는 이미터 템플릿에서 시스템을 생성하는 것입니다.
-
먼저 콘텐츠 브라우저(Content Browser) 에서 우클릭하여 나이아가라 시스템을 생성한 다음 나타나는 메뉴에서 FX > 나이아가라 시스템(FX > Niagara System) 을 선택합니다. 나이아가라 이미터 마법사가 표시됩니다.
-
선택한 이미터에서 새 시스템 생성(New system from selected emitters) 을 선택합니다. 그리고 나서 다음(Next) 을 클릭합니다.
-
템플릿에서 심플 스프라이트 버스트(Simple Sprite Burst) 템플릿을 선택합니다. 더하기 기호(+) 아이콘을 클릭하여 시스템에 추가할 이미터 목록에 해당 이미터를 추가합니다. 다음, 완료(Finish) 를 클릭합니다.
-
시스템 이름을 FX_FootstepDustPoof 로 지정합니다. 나이아가라 에디터에서 더블클릭하여 엽니다.
-
새 시스템에 있는 이미터 인스턴스의 기본 이름은 SimpleSpriteBurst 로 지정되지만 이름을 변경할 수 있습니다. 시스템 개요에서 이미터 인스턴스의 이름을 클릭하면 해당 필드를 편집할 수 있습니다. 이미터의 이름을 FX_DustPoof 로 변경합니다.
-
렌더러에서 메시와 머티리얼을 설정하기 전까지는 프리뷰에 아무 것도 보이지 않습니다. 따라서 시스템 개요(System Overview) 에서 렌더(Render) 를 선택하여 선택(Selection) 패널에서 열면 됩니다.
-
휴지통(Trashcan) 아이콘을 클릭하여 스프라이트 렌더러를 삭제합니다.
-
더하기 기호(+) 아이콘을 클릭하고 목록에서 메시 렌더러(Mesh Renderer) 를 선택합니다.
-
파티클 메시(Particle Mesh) 옆에 있는 드롭다운을 클릭하고 프로젝트 구성(Project Setup) 섹션에서 만든 메시를 선택합니다.
-
머티리얼 오버라이드(Override Materials) 를 클릭하여 활성화합니다. 기본값은 0 배열 엘리먼트(0 Array elements) 입니다. 더하기 기호(+) 아이콘을 클릭하고 배열 엘리먼트(Array element) 를 선택합니다. 머티리얼 명시(Explicit Material) 옆에 있는 드롭다운을 클릭하고 프로젝트 구성(Project Setup) 섹션에서 만든 머티리얼을 선택합니다.
-
페이싱 모드(Facing Mode) 에서 드롭다운을 클릭하고 속도(Velocity) 를 선택합니다.
-
콘텐츠 브라우저(Content Browser) 에서 나이아가라 시스템을 레벨로 드래그합니다. 플레이어 캐릭터의 발 근처에 위치시키면 캐릭터와 비교해서 이펙트의 크기와 모양을 확인할 수 있습니다.
파티클 이펙트를 만들 때 레벨에 시스템을 드래그하는 작업을 권장합니다. 이렇게 하면 모든 변경 및 편집 내역을 맥락과 함께 볼 수 있습니다.
섹션 결과
이 섹션을 마치고 나면 나이아가라 시스템과 이미터 인스턴스가 생성되며, 레벨에 시스템을 드래그했기 때문에 플레이어 캐릭터 옆에서 프리뷰가 가능합니다. 다음 장에서는 나이아가라 시스템에서 세팅을 편집하여 먼지 구름 이펙트를 생성하겠습니다.
3 - 모듈 세팅 편집
나이아가라 에디터에는 각 이미터가 스택으로 나타나며 여러 개의 세팅 그룹이 포함되어 있습니다. 이제 각 그룹에서 모듈을 하나씩 편집합니다.
생성하는 이펙트 중 일부는 이미터 스폰 그룹 또는 시스템 그룹의 모듈을 포함할 수도 있습니다. 지금 생성할 이펙트는 그렇지 않으므로 이 그룹을 건너뛰면 됩니다.
이미터 업데이트 세팅
먼저 이미터 업데이트(Emitter Update) 그룹에서 모듈을 편집합니다. 이미터에 적용되는 동작과 각 프레임을 업데이트하는 동작이 있습니다.
-
시스템 개요(System Overview) 에서 이미터 업데이트(Particle Update) 그룹을 클릭하여 선택(Selection) 패널에서 엽니다.
-
Emitter State(이미터 상태) 모듈을 확장합니다. 기본적으로 라이프 사이클 모드(Life Cycle Mode) 는 셀프(Self) 여야 합니다.
-
이미터 상태(Emitter State) 세팅을 다음 값으로 변경합니다. 이렇게 하면 한 번 나타났다가 소멸되는 먼지가 설정됩니다.
파라미터
값
라이프 사이클 모드(Life Cycle Mod)
Self(셀프)
비활성 응답(Inactive Response)
완료(Complete)
루프 비헤이비어(Loop Behavior)
Once(한 번)
루프 경과시간 모드(Loop Duration Mode)
Fixed(고정)
루프 경과시간(Loop Duration)
1
-
즉각적인 스폰 버스트 (Spawn Burst Instantaneous) 모듈을 펼칩니다. 스폰 수(Spawn Count) 를 10 으로 설정합니다. 스폰 수가 10이면 충분히 보일 정도로 크지만 그럴듯하게 작은 먼지 구름이 생성됩니다.
파티클 스폰 세팅
다음으로 파티클 스폰 그룹에서 모듈을 편집합니다. 이 비헤이비어는 처음 스폰되었을 때 파티클에 적용됩니다.
-
시스템 개요(System Overview) 에서 파티클 스폰(Spawn) 그룹을 클릭하여 선택(Selection) 패널에서 엽니다.
-
Initialize Particle(파티클 초기화) 모듈을 확장합니다. 포인트 어트리뷰트(Point Attributes) 에서 수명(Lifetime) 세팅을 찾습니다. 수명(Lifetime) 필드 옆에 있는 작은 화살표를 클릭하고 동적 입력 > 범위가 지정된 균등 플로트(Dynamic Inputs > Uniform Ranged Float) 를 선택합니다. 이렇게 하면 수명 값에 최소(Minimum) 및 최대(Maximum) 필드가 추가됩니다. 그리고 각 파티클이 표시되는 기간에 일부 변화가 생깁니다. Minimum(최소) 및 Maximum(최대) 필드에 다음 값을 설정합니다.
세팅
값
최소(Minimum)
.4
최대(Maximum)
.6
-
컬러(Color) 세팅을 찾습니다. 샘플에서 컬러(Color) 는 먼지처럼 보이는 옅은 황갈색으로 설정됩니다. R , G , B 값을 다음과 같이 설정합니다.
세팅
값
빨강(Red)
1.0
초록(Green)
.85
파랑(Blue)
.57
-
메시 어트리뷰트(Mesh Attributes) 에서 메시 스케일(Mesh Scale) 세팅을 찾습니다. 이 세팅에는 X , Y 및 Z 값 필드가 있습니다. Z 값 필드 옆에 있는 작은 화살표를 클릭하고 동적 입력 > 범위가 지정된 균등 벡터(Dynamic Inputs > Uniform Ranged Vector) 를 선택합니다. 이렇게 하면 메시 스케일(Mesh Scale) 값에 최소(Minimum) 및 최대(Maximum) 벡터가 추가됩니다. 이 세팅을 통해 파티클 크기는 랜덤으로 변화를 줍니다. X, Y, Z 값을 다음과 같이 설정합니다.
세팅
최소
최대
X 값
1.0
2.0
Y 값
1.0
2.0
Z 값
1.0
2.0
-
파티클 스폰(Particle Spawn) 에서 더하기 기호(+) 아이콘을 클릭하고 오리엔테이션 > 초기 메시 오리엔테이션(Orientation > Initial Mesh Orientation) 을 선택합니다. 여기에는 파티클 메시에 대한 회전 세팅이 포함됩니다. 모양이 너무 균등해보이지 않도록 모양에 회전을 추가할 수도 있습니다. 이렇게 하면 먼지 구름이 좀 더 자연스러워 보입니다.
-
오리엔테이션 에서 오리엔테이션 벡터(Orientation Vector) 를 비활성화합니다. 이 이펙트는 필요하지 않습니다. 회전 에서 회전 을 클릭하여 활성화합니다. 회전 필드 옆에 있는 아래 방향 화살표를 클릭하고 동적 입력 > 범위가 지정된 균등 벡터(Dynamic Inputs > Uniform Ranged Vector) 를 선택합니다. 이렇게 하면 원하는 작은 랜덤 회전이 가능해집니다. 최소 및 최대 값은 기본값으로 둡니다.
-
파티클 스폰 에서 더하기 기호(+) 아이콘을 클릭하고 위치 > 원기둥 위치(Location > Cylinder Location) 를 선택합니다. 원기둥 위치는 파티클 스폰을 원기둥 모양으로 제한합니다.
-
먼지 구름을 지면에 가깝게 유지하려면 원기둥 높이(Cylinder Height) 를 1 로 변경합니다. 먼지 구름을 지면에 가깝게 유지하려면 원기둥 반경(Cylinder Radius) 을 10 으로 변경합니다.
파티클 업데이트 세팅
이제 마무리로 파티클 업데이트 그룹에서 세팅을 편집합니다. 이 비헤이비어는 파티클에 적용되며 각 프레임을 업데이트합니다.
-
휴지통 아이콘을 클릭하여 컬러 스케일 조절(Scale Color) 모듈을 삭제합니다. 이 이펙트에서는 필요가 없습니다.
-
파티클 업데이트 에서 더하기 기호(+) 아이콘을 클릭하고 머티리얼 > 다이내믹 머티리얼 파라미터 를 선택합니다. 이렇게 하면 머티리얼에서 Erode 다이내믹 파라미터에 연결됩니다.
시스템 개요의 이미터 노드에서 모듈을 드래그하여 순서를 바꿀 수 있습니다. 하지만 선택 패널에서는 모듈 순서를 바꿀 수 없습니다.
-
다이내믹 머티리얼 파라미터 모듈에서는 머티리얼에서 구성했던 Erode 파라미터가 표시되어야 합니다. Erode의 아래 방향 화살표를 클릭하고 동적 입력 > 커브에서 플로트로(Dynamic Inputs > Float from Curve) 를 선택합니다.
-
커브 선 중앙 주변에서 우클릭하고 커브에 키 추가(Add Key to Curve) 를 선택합니다. 이제 커브에 키 3개가 보여야 합니다. 먼지 구름이 발생될 때 처음에는 불투명하지만 시간이 지나면서 옅어지고 부서지도록 키를 설정합니다.
커브 옆에 있는 아이콘을 클릭하여 나이아가라 커브(Niagara Curves) 패널에 커브를 복사할 수 있습니다. 이 아이콘은 아래 그림에서와 같이 화살표로 강조 표시됩니다.
-
커브에 있는 키 3개에 다음 값을 설정합니다. 결과는 아래 이미지와 유사하게 나타나야 합니다.
키 번호
시간
값
1
0
1
2
.75
.75
3
1
0
-
파티클 업데이트 에서 더하기 기호(+) 아이콘을 클릭하고 속도 > 포인트의 속도 추가(Velocity > Add Velocity from Point) 이슈 고침(Fix Issue)
-
Add Velocity from Point(포인트의 속도 추가) 모듈에서 속도 세기(Velocity Strength) 를 2.5 로 설정합니다. 파티클이 너무 멀리 퍼지지 않도록, 달리는 캐릭터의 발걸음으로 방해되는 먼지를 나타낼 만큼만 설정합니다. 속도 세기에 대해 비교적 작은 숫자를 사용하는 이유가 여기에 있습니다.
-
파티클 업데이트 에서 더하기 기호(+) 아이콘을 클릭하고 힘 > 가속력(Forces > Acceleration Force) 이슈 고침
-
가속력(Acceleration Force) 모듈에서 가속(Acceleration) 을 X:0, Y:0, Z:200 으로 설정합니다. 이제 먼지 구름이 퍼지고 위로 올라가지만 상승 탄력이 약간 과합니다. 따라서 항력을 먼지 구름에 추가합니다.
-
파티클 업데이트 에서 더하기 기호(+) 아이콘을 클릭하고 힘 > 항력(Forces > Drag) 이슈 고침
-
항력 모듈에서 항력 을 12 로 설정합니다. 항력 세팅은 가속력과 상호 작용하며, 먼지 구름의 상승 이동이 너무 비현실적으로 보이지 않도록 유지합니다.
섹션 결과
먼지 이펙트가 생성되었으므로 이제 플레이어 스타트(Player Start) 모델 옆에 있는 레벨에서 먼지 이펙트를 볼 수 있어야 합니다. 이펙트가 예상대로 나타나지 않으면 이펙트가 마음에 들 때까지 다양한 모듈 세팅을 조정할 수 있습니다.
4 - 캐릭터에 나이아가라 이펙트 연결
이제 캐릭터의 달리기 애니메이션에 이 이펙트를 추가합니다. 이 샘플에서는 이펙트를 타사 템플릿에 포함된 일반적인 마네킹 캐릭터에 연결합니다. 하지만 이 단계를 사용하여 언리얼 엔진에서 구성한 모든 캐릭터에 나이아가라 이펙트를 추가할 수 있습니다.
-
콘텐츠 브라우저에서 마네킹 > 애니메이션(Mannequin > Animations) 으로 이동합니다. ThirdPersonRun 애니메이션을 더블클릭하고 애니메이션 에디터에서 엽니다.
-
애니메이션 타임라인(Animation timeline) 에서 일시정지(Pause) 를 클릭하여 루핑 애니메이션을 일시정지합니다. 스크럽 포인터를 사용하여 캐릭터의 오른쪽 발이 지면에 닿는 순간을 찾습니다. 해당 지점에 먼지 이펙트를 설정합니다.
-
노티파이(Notifies) 섹션을 찾습니다. 노티파이를 사용하여 이펙트 위치로 애니메이션을 마킹합니다. 타임라인의 스크럽 막대에서 아래로 이어지는 선이 표시됩니다. 선을 우클릭하고 노티파이 추가 > 나이아가라 파티클 이펙트 재생(Add Notify > Play Niagara Particle Effect) 을 선택합니다. 마커는 기본 라벨 PlayNiagaraEffect로 지정되어 애니메이션의 해당 지점에 배치됩니다.
-
PlayNiagaraEffect 노티파이가 선택된 상태로 디테일 패널에서 애님 노티파이(Anim Notify) 섹션을 찾습니다. 여기서 애니메이션에 추가할 나이아가라 시스템을 선택합니다.
-
나이아가라 시스템(Niagara System) 옆에 있는 드롭다운을 클릭하고 나이아가라에서 생성한 FX_FootstepDustPoof 시스템을 선택합니다. 노티파이에서 라벨이 FX_FootstepDustPoof 로 변경됩니다.
-
왼쪽 발에 대해서도 위의 단계를 반복합니다.
섹션 결과
이제 캐릭터의 달리기 애니메이션에 나이아가라 이펙트를 연결했습니다. 축하드립니다!
5 - 최종 결과
6 - 직접 해보세요!
이제 기본 이펙트를 생성하여 캐릭터에 연결했습니다. 이와 관련된 다른 하우투를 확인해서 이 캐릭터를 사용하여 더 많은 작업을 해보세요. 나이아가라에 더 많은 이펙트를 생성할 수도 있습니다.
-
리본 을 사용하면 캐릭터가 달릴 때 캐릭터 뒤에 트레일을 생성할 수 있습니다.
-
애니메이션 하우투 의 내용을 살펴보면 캐릭터에 추가 애니메이션을 생성하거나 수정하는 방법을 알 수 있습니다.
-
애니메이션 블루프린트 를 사용하는 방법을 배우면 캐릭터에 더 많은 작업을 할 수 있습니다.