목표
나이아가라 퀵스타트는 나이아가라를 이용하여 언리얼 엔진에서 비주얼 이펙트(VFX)를 제작하는 방법을 익힐 수 있도록 만들어졌습니다. 연기 이펙트를 제작해 캐릭터의 발걸음에 어태치해 봅니다. 결과물은 다음과 같습니다.
목적
- 나이아가라에 사용할 메시와 머티리얼로 프로젝트를 구성합니다.
- 나이아가라 시스템을 사용하여 기초적인 연기 이펙트를 생성합니다.
- 캐릭터의 달리기 애니메이션에 연기 이펙트를 어태치합니다.
1 - 프로젝트 구성하기
이 가이드에서는 시작용 콘텐츠(Starter Content) 가 활성화된 상태로 블루프린트 삼인칭 템플릿(Blueprint Third Person Template) 프로젝트를 사용합니다. 아직 언리얼 엔진에서 프로젝트를 생성하지 않았다면 프로젝트 생성을 참조하세요.
- 에픽게임즈 런처 에서 언리얼 엔진 을 실행합니다.
- 게임(Games) 을 클릭한 다음 삼인칭 템플릿(Third Person Template) 을 선택합니다. 시작용 콘텐츠(Starter Content) 를 활성화합니다.
- 필요하다면 탐색 을 통해 새 프로젝트 경로 를 설정합니다.
- 프로젝트 이름 을 입력합니다.
- 생성(Create) 을 클릭해 프로젝트를 생성합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
나이아가라 이펙트 생성을 시작하기 전에 먼저 이 가이드에서 사용할 기본 머티리얼과 에셋을 프로젝트에 구성해야 합니다. 이 섹션에 따라 작업을 진행하고 나면 나이아가라 이펙트를 생성하는 데 필요한 모든 준비를 마치게 됩니다.
메시 모양 생성 또는 임포트
프로젝트에 가장 먼저 필요한 것은 이펙트에 사용할 메시 모양입니다. 여기서는 구름 모양을 생성하거나 임포트해야 합니다. 메시 오브젝트를 언리얼 엔진으로 가져오는 방법에는 여러 가지가 있습니다.
- 원하는 3D 소프트웨어로 모델을 생성하고 .fbx 파일로 익스포트한 뒤 언리얼 엔진으로 쉽게 임포트합니다.
- Sketchfab과 같은 사이트에서 무료 구름 모델을 찾아 언리얼 엔진으로 임포트합니다.
- 모델링 모드 툴을 사용하여 언리얼 엔진에서 직접 구름을 모델링합니다.
아래 이미지와 비슷한 구름 모델을 만들거나 다운로드합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
이 튜토리얼에서 사용하는 구름 에셋은 Sketchfab에서 가져왔습니다. 모델 이름은 CLOUD high poly, 저작권을 보유한 제작자는 gaelinix 입니다. 이 모델은 크리에이티브 커먼즈 저작자 표시 라이선스에 의해 보호됩니다.
모델은 여기에서 다운로드할 수 있습니다.
직접 구름을 모델링해도 됩니다. 3DS Max나 Maya 같은 고급 3D 모델링 애플리케이션이 없더라도 Blender와 같은 오픈소스 3D 모델링 애플리케이션을 사용하면 됩니다.
모델을 생성하거나 다운로드했다면, 간편하게 정리할 수 있도록 콘텐츠(Content) 폴더에 모델을 저장할 장소를 만듭니다.
- 콘텐츠 브라우저에서 우클릭하고 새 폴더(New Folder) 를 선택해 에셋을 저장할 폴더를 만듭니다. 폴더 이름은 Cloud 로 지정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 3D 모델을 콘텐츠 브라우저로 드래그 앤 드롭해 프로젝트로 임포트합니다.
언리얼 엔진에 모델을 임포트하는 자세한 방법은 콘텐츠 임포트를 참조하세요.
머티리얼 생성 및 환경설정
구름 모델을 임포트했다면 언리얼 엔진에서 자동으로 해당 모델을 위한 머티리얼 을 생성했을 수 있습니다. 머티리얼이 생성되지 않았다면 직접 만들어야 합니다.
- 콘텐츠 드로어를 우클릭하고 머티리얼(Material) 을 선택합니다. 모델을 임포트할 때 언리얼 엔진이 머티리얼까지 임포트했다면 이 단계는 건너뛰어도 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 새 머티리얼 이름을 CloudMaterial 로 지정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
머티리얼을 더블클릭하여 머티리얼 에디터(Material Editor) 에서 엽니다.
-
기본 머티리얼 노드를 선택한 상태로 디테일(Details) 패널에서 머티리얼(Material) 섹션을 찾습니다. 블렌드 모드(Blend Mode) 를 반투명(Translucent) 으로 변경합니다. 양면(Two Sided) 박스를 체크합니다. 다른 세팅은 기본값으로 둡니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 모델을 임포트했고 해당 머티리얼을 사용하고 있다면 이미 머티리얼의 베이스 컬러(Base Color) 에 노드가 연결되어 있을 수도 있습니다. 머티리얼 컬러에는 나이아가라 시스템의 파티클 컬러(Particle Color) 세팅을 사용할 것이므로 이 노드는 삭제합니다. 베이스 컬러(Base Color) 에 아무것도 연결되어 있지 않다면 이 단계는 건너뛰어도 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 그래프에서 우클릭하고 검색창에
particle
을 입력합니다. Particle Color 를 선택하여 노드를 추가합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- Particle Color 노드의 상단 출력을 메인 머티리얼 노드의 베이스 컬러(Base Color) 입력에 연결합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 모델을 임포트했다면 자동으로 Texture Sample 노드가 생성 및 연결되었을 수 있습니다. 없다면 직접 만들어야 합니다. T 를 누른 상태로 노드 그래프 내부를 클릭하면 노드가 생성됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 연기와 비슷해 보이도록 시작용 콘텐츠(Starter Content) 에서 텍스처에 노이즈를 추가합니다. Texture Sample 노드를 선택한 상태로 디테일(Details) 패널에서 머티리얼 표현식 텍스처 베이스(Material Expression Texture Base) 섹션을 찾습니다. 머티리얼(Material) 옆의 드롭다운을 클릭하고 검색창에 Noise 를 입력합니다. T_Perlin_Noise_M 텍스처를 선택합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 그래프에서 우클릭하고 검색창에
dynamic
을 입력합니다. Dynamic Parameter 를 선택하여 해당 노드를 추가합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- Dynamic Parameter 노드를 선택한 상태로 디테일(Details) 패널에서 머티리얼 표현식 다이내믹 파라미터(Material Expression Dynamic Parameter) 섹션을 찾습니다. 배열 0(Array 0) 에서 이름을 Erode 로 지정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 그래프에서 우클릭하고 검색창에
step
을 입력합니다. Value Step 을 선택하여 해당 노드를 추가합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- Texture Sample 노드의 R 출력을 드래그하여 Value Step 노드의 그레이디언트(Gradient) 입력에 연결합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- Dynamic Parameter 노드의 Erode 출력을 드래그하여 Value Step 노드의 마스크 오프셋 값(Mask Offset Value) 입력에 연결합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- Value Step 노드의 결과(Results) 출력을 드래그하여 새 머티리얼 노드의 오파시티(Opacity) 입력에 연결합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 적용(Apply) 및 저장(Save) 을 클릭한 다음 머티리얼 에디터를 닫습니다.
섹션 결과
지금까지 구름 메시 모델을 임포트했습니다. 머티리얼도 구성했습니다. 이제 나이아가라 이펙트를 생성할 준비가 되었습니다.
2 - 이펙트 생성하기
시스템 생성
이제 나이아가라 시스템을 생성하겠습니다.
-
새 나이아가라 시스템을 생성하려면 콘텐츠 브라우저 를 우클릭한 뒤 FX > 나이아가라 시스템 으로 이동합니다.
-
왼쪽에서 템플릿(Template) 카테고리를 클릭하고 Simple Sprite Burst 시스템을 선택합니다. 생성(Create) 을 클릭합니다.
-
시스템의 이름을 FX_DustCloud 로 지정합니다. 더블클릭하여 나이아가라 에디터(Niagara Editor)에서 실행합니다.
-
새 시스템의 이미터 인스턴스 이름은 기본적으로 SimpleSpriteBurst 로 지정되지만 변경할 수 있습니다. 시스템 개요(System Overview) 에서 이미터 인스턴스 이름을 더블클릭하면 해당 필드를 편집할 수 있습니다. 이미터의 이름을 FX_DustCloud 로 지정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
나이아가라 시스템에 이미터가 하나뿐이라면 이름 변경은 선택사항입니다. 하지만 이미터가 여러 개인 나이아가라 시스템을 만드는 경우 정리와 명확성을 위해 이름을 지정하는 것이 중요합니다.
렌더 그룹 환경설정
이미터는 세로 스택으로 구성되며, 여러 그룹으로 나뉩니다. 이미터의 기본 그룹은 아래와 같습니다.
- 이미터 스폰(Emitter Spawn)
- 이미터 업데이트(Emitter Update)
- 파티클 스폰(Particle Spawn)
- 파티클 업데이트(Particle Update)
- 렌더(Render)
이미터 그룹 및 그룹 작동 방식과 관련된 자세한 설명은 나이아가라 개요 페이지를 참조하시기 바랍니다.
여기서는 3D 모델을 사용하여 이펙트를 생성하므로 렌더 그룹부터 구성해야 프리뷰를 볼 수 있습니다.
- 시스템 개요(Sytstem Overview) 에서 렌더(Render) 를 선택하여 렌더 그룹을 선택(Selection) 패널로 엽니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 3D 모델을 사용하므로 스프라이트 렌더러가 아닌 메시 렌더러가 필요합니다. 휴지통(Trashcan) 아이콘을 클릭하여 스프라이트 렌더러를 삭제합니다. 선택(Selection) 패널.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
렌더(Render) 그룹을 선택한 상태에서 디테일(Details) 패널의 더하기 표시(+) 아이콘을 클릭합니다. 목록에서 메시 렌더러(Mesh Renderer) 를 선택하여 렌더 그룹에 해당 모듈을 추가합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
페이싱 모드(Facing Mode) 에서 드롭다운을 클릭하고 속도(Velocity) 를 선택합니다.
-
메시(Meshes) 옆의 삼각형을 클릭하여 배열을 펼칩니다. 이 배열에서는 한 개나 여러 개의 메시 오브젝트를 렌더러에 추가할 수 있습니다. 인덱스 (0)(Index (0)) 옆의 드롭다운을 클릭하고 프로젝트 구성(Project Setup) 섹션에서 임포트한 메시를 선택합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 머티리얼 오버라이드 활성화(Enable Override Materials) 체크 박스를 클릭합니다. 이제 메시에 적용할 머티리얼을 지정할 수 있습니다. 기본값은 0 배열 엘리먼트(0 Array elements) 입니다. 더하기 표시(+) 아이콘을 클릭하여 배열 엘리먼트를 추가합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 명시적 매트릭스(Explicit Mat) 옆에 있는 드롭다운을 클릭하고 프로젝트 구성 섹션에서 만든 머티리얼을 선택합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 콘텐츠 브라우저(Content Browser) 에서 나이아가라 시스템을 레벨로 드래그합니다. 플레이어 캐릭터의 발 근처에 위치시키면 캐릭터와 비교해서 이펙트의 크기와 모양을 확인할 수 있습니다.
파티클 이펙트를 만들 때는 항상 시스템을 레벨로 드래그하는 게 좋습니다. 그러면 컨텍스트의 모든 변경 사항과 편집을 확인할 수 있습니다.
섹션 결과
이 섹션에서는 나이아가라 시스템과 이미터 인스턴스를 생성했으며, 플레이어 캐릭터 옆에서 시스템을 프리뷰할 수 있도록 레벨에 시스템을 드래그했습니다. 다음 장에서는 나이아가라 시스템에서 세팅을 편집하여 먼지 구름 이펙트를 생성하겠습니다.
3 - 모듈 세팅 편집하기
나이아가라 에디터에는 여러 개의 세팅 그룹과 함께 각 이미터가 스택으로 표시됩니다. 이제 각 그룹에서 모듈을 하나씩 편집합니다.
이 이펙트의 경우 이미터 스폰(Emitter Spawn) 그룹에 모듈이 없기 때문에 해당 섹션은 건너뜁니다. 이미터 그룹과 역할에 관련된 자세한 설명은 나이아가라 개요 페이지를 참조하시기 바랍니다.
이미터 업데이트 그룹 환경설정
우선 이미터 업데이트(Emitter Update) 그룹에서 모듈을 편집합니다. 이 그룹에 위치한 모듈은 시스템의 수명에 따라 프레임마다 업데이트됩니다.
- 시스템 개요(System Overview) 의 선택(Selection) 패널에서 이미터 업데이트(Emitter Update) 그룹을 클릭해 엽니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
이미터 상태(Emitter State) 모듈을 펼칩니다. 라이프 사이클 모드(Life Cycle Mode) 는 기본적으로 셀프(Self) 로 설정되어 있습니다.
-
이미터 상태(Emitter State) 세팅을 아래 값으로 변경합니다. 이렇게 하면 먼지가 한 번 나타났다가 소멸됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
파라미터 | 값 |
---|---|
라이프 사이클 모드(Life Cycle Mode) | 셀프(Self) |
비활성 응답(Inactive Response) | 완료(Complete) |
루프 비헤이비어(Loop Behavior) | 한 번(Once) |
루프 경과시간 모드(Loop Duration Mode) | 고정(Fixed) |
루프 경과시간(Loop Duration) | 1 |
- 버스트 순간 스폰(Spawn Burst Instantaneous) 모듈을 펼칩니다. 스폰 수(Spawn Count) 를 10 으로 설정합니다. 스폰 수가 10이면 육안으로 볼 수 있으면서도 적당히 작은 크기의 먼지 구름이 생성됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
파티클 스폰 그룹 환경설정
다음으로 파티클 스폰(Particle Spawn) 그룹에서 모듈을 편집합니다. 이 동작은 파티클이 처음 스폰될 때 파티클에 적용됩니다.
- 시스템 개요 의 선택 패널에서 파티클 스폰 그룹을 클릭해 엽니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 파티클 초기화(Initialize Particle) 모듈을 펼칩니다. 포인트 어트리뷰트(Point Attributes) 에서 수명 모드(Lifetime Mode) 드롭다운을 찾습니다. 드롭다운을 사용해 랜덤(Random) 을 선택합니다. 이렇게 하면 수명 값에 최소 및 최대 필드가 추가됩니다. 그리고 각 파티클의 표시 기간에 변화가 생깁니다. 최소 및 최대 필드를 아래 값으로 설정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
세팅 | 값 |
---|---|
최소(Minimum) | .4 |
최대(Maximum) | .6 |
- 컬러(Color) 세팅을 찾습니다. 이 예시에서는 컬러(Color) 를 먼지처럼 보이도록 옅은 황갈색으로 설정합니다. 색상환을 클릭한 뒤 색상 선택 툴을 사용하여 컬러를 선택합니다. 이 값은 프로젝트 구성 단계에서 이미 머티리얼에 연결한 파티클 컬러(Particle Color) 에 저장됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 메시 스케일에 랜덤한 인수를 추가해서 파티클 크기에 다양성을 더하겠습니다. 메시 어트리뷰트(Mesh Attributes) 에서 메시 스케일 모드(Mesh Scale Mode) 드롭다운을 찾습니다. 랜덤 유니폼(Random Uniform) 을 선택합니다. 최소 메시 유니폼 스케일(Mesh Uniform Scale Min) 및 최대 메시 유니폼 스케일(Mesh Uniform Scale Max) 의 값을 아래와 같이 설정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
세팅 | 값 |
---|---|
최소 메시 유니폼 스케일(Mesh Uniform Scale Min) | 1.0 |
최대 메시 유니폼 스케일(Mesh Uniform Scale Max) | 2.0 |
- 파티클 스폰(Particle Spawn) 그룹을 선택한 상태에서 더하기 표시(+) 아이콘을 클릭하여 그룹에 새 모듈을 추가합니다. 방향(Orientation) > 초기 메시 방향(Initial Mesh Orientation) 을 선택합니다. 여기에는 파티클 메시의 회전 세팅이 포함됩니다. 파티클이 너무 균등해보이지 않도록 모양에 회전을 추가할 수도 있습니다. 이렇게 하면 먼지 구름이 좀 더 자연스러워 보입니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 회전(Rotation) 에서 모듈을 클릭하여 초기 회전을 활성화합니다. 회전(Rotation) 옆의 아래 방향 화살표를 클릭한 다음, 동적 입력(Dynamic Inputs) > 랜덤 범위 벡터(Random Range Vector) 를 선택합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 최솟값과 최댓값은 초기 회전에 랜덤한 인수를 생성합니다. 최소(Minimum) 및 최대(Maximum)** 값은 기본값으로 둡니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 파티클 스폰(Particle Spawn) 그룹을 선택한 상태에서 더하기 표시(+) 아이콘을 클릭하여 새 모듈을 추가합니다. 위치(Location) > 모양 위치(Shape Location) 를 선택합니다. 모양 위치(Shape Location) 모듈을 사용하면 파티클이 탄생할 때 새로운 파티클이 생성되는 위치를 설정할 수 있습니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 이 예시에서는 모양 프리미티브(Shape Primitive) 를 원기둥(Cylinder) 으로 설정합니다. 원하는 형태에 따라 나중에 다른 예시에서 그 밖의 모양을 실험해 봐도 좋습니다. 여기서는 먼지 구름이 지면 가까이 떠 있도록 원기둥 높이(Cylinder Height) 를 1 로 변경합니다. 먼지 구름이 발보다 지나치게 커지지 않도록 하려면 원기둥 반경(Cylinder Radius) 을 10 으로 변경합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
세팅 | 값 |
---|---|
모양 프리미티브(Shape Primitive) | 원기둥(Cylinder) |
원기둥 높이(Cylinder Height) | 1.0 |
원기둥 반경(Cylinder Radius) | 10.0 |
- 파티클 스폰(Particle Spawn) 그룹을 선택한 상태에서 더하기 표시(+) 아이콘을 클릭하여 그룹에 새 모듈을 추가합니다. 속도(Velocity) > 속도 추가(Add Velocity) 를 선택합니다. 파티클 스폰(Particle Spawn) 그룹에 속도를 추가하면 파티클이 탄생하는 순간에 지정된 스피드로 파티클에 초기 속도가 추가됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 속도 모드(Velocity Mode) 를 포인트(From Point) 로 설정합니다. 이렇게 하면 나이아가라 시스템의 원점 포인트에서 바깥쪽으로 뻗어나가는 방사상 형태로 속도가 적용됩니다. 속도 스피드(Velocity Speed) 를 20 으로 설정합니다. 파티클이 너무 멀리 퍼지지 않도록, 캐릭터가 달리면서 발생하는 먼지를 표현할 수 있을 만큼만 설정합니다. 이 값은 원하는 결과물에 따라 필요한 대로 조정할 수 있습니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 파티클 스폰(Particle Spawn) 그룹을 선택한 상태에서 더하기 표시(+) 아이콘을 클릭하여 그룹에 새 모듈을 추가합니다. 힘(Forces) > 가속 힘(Acceleration Force) 을 선택합니다. 이를 사용하여 먼지 구름이 위로 올라갈 수 있도록 상승 탄력을 약간만 주면 캐릭터의 걸음에서 시작된 먼지 구름이 위로 퍼져나갑니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
속도나 힘 모듈을 추가하면 오류가 표시됩니다. 추가된 모듈이 항상 그룹 스택의 맨 아래에 위치하기 때문입니다. 이렇게 되면 새 모듈이 힘 및 속도 솔브(Solve Forces and Velocity) 모듈 뒤에 배치됩니다. 올바른 연산을 위해서는 모든 속도와 힘 모듈이 솔버 위에 위치해야 합니다.
- 이슈 고침(Fix Issue) 을 클릭해 이 오류를 해결합니다. 또는 모듈을 직접 스택 위쪽으로 드래그해서 힘 및 속도 솔브(Solve Forces and Velocity) 위로 옮겨도 됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 가속력 모듈에서 가속(Acceleration) 을 X:0, Y:0, Z:200 으로 설정합니다. 이제 먼지 구름이 퍼지며 위로 올라가는데 상승 탄력이 약간 과합니다. 파티클 업데이트 단계에서 항력을 추가해 각 프레임의 먼지 파티클이 가진 상승 탄력을 낮춥니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
파티클 업데이트 그룹 환경설정
마지막으로 파티클 업데이트(Particle Update) 그룹의 세팅을 수정합니다. 세팅된 행동은 각 프레임의 모든 파티클에 대해 계산됩니다.
- 시스템 개요 의 선택 패널에서 파티클 업데이트 그룹을 클릭해 엽니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 휴지통(Trashcan) 아이콘을 클릭해 컬러 스케일(Scale Color) 모듈을 제거합니다. 이 이펙트에는 필요하지 않습니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
파티클 업데이트(Particle Update) 그룹을 선택한 상태에서 더하기 표시(+) 아이콘을 클릭하여 새 모듈을 추가합니다. 머티리얼(Materials) > 다이내믹 머티리얼 파라미터(Dynamic Material Parameters) 를 선택합니다. 이렇게 하면 머티리얼의 Erode 다이내믹 파라미터에 연결됩니다.
시스템 개요에서 이미터의 모듈을 드래그하여 순서를 변경할 수 있습니다. 그러나 선택(Selection) 패널에서 모듈 순서를 변경할 수는 없습니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
다이내믹 머티리얼 파라미터(Dynamic Material Parameters) 모듈에 이전에 머티리얼에서 설정한 Erode 파라미터가 보일 것입니다. Erode의 아래 방향 화살표를 클릭하고 동적 입력(Dynamic Inputs) > 커브에서 플로트(Float from Curve) 를 선택합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 커브 에디터에서 드롭오프(Drop Off) 템플릿을 클릭해 커브에 해당 스타일을 적용합니다. 이렇게 하면 머티리얼이 시간에 따라 흐려집니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
파티클 업데이트(Particle Update) 그룹을 선택한 상태에서 더하기 표시(+) 아이콘을 클릭하여 그룹에 모듈을 추가합니다. 힘(Forces) > 항력(Drag) 을 선택합니다.
속도나 힘 모듈을 추가하면 오류가 표시됩니다. 추가된 모듈이 항상 그룹 스택의 맨 아래에 위치하기 때문입니다. 이렇게 되면 새 모듈이 힘 및 속도 솔브(Solve Forces and Velocity) 모듈 뒤에 배치됩니다. 이슈 고침(Fix Issue) 을 클릭해 이 오류를 해결합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
항력(Drag) 모듈에서 항력(Drag) 을 8 로 설정합니다. 항력 세팅은 가속력과 상호 작용하며, 먼지 구름의 상승이 너무 인위적으로 보이지 않도록 유지합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
섹션 결과
먼지 이펙트가 생성되었으므로 이제 플레이어 스타트(Player Start) 모델 옆의 레벨에서 먼지 이펙트를 볼 수 있어야 합니다. 이펙트가 예상대로 나타나지 않으면 마음에 들 때까지 다양한 모듈 세팅을 조정하면 됩니다.
4 - 캐릭터에 나이아가라 이펙트 어태치하기
이제 이 이펙트를 캐릭터의 달리기 애니메이션에 추가합니다. 이 예시에서는 이펙트를 삼인칭 템플릿에 포함된 일반 Quinn 캐릭터에 연결합니다. 이 방법은 언리얼 엔진에서 구성한 모든 캐릭터에 나이아가라 이펙트를 추가하는 데 사용할 수 있습니다.
- 콘텐츠 드로어(Content Drawer) 에서 콘텐츠(Content) > Characters > Mannequins > Animations > Quinn 으로 이동합니다. MF_Run_Fwd 애니메이션을 더블클릭하여 애니메이션 에디터(Animation Editor) 에서 엽니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 애니메이션 타임라인(Animation timeline) 에서 일시정지(Pause) 를 클릭하여 루핑 애니메이션을 멈춥니다. 스크럽 포인터를 사용하여 캐릭터의 오른쪽 발이 지면에 닿는 순간을 찾습니다. 해당 지점에 먼지 이펙트를 설정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 노티파이(Notifies) 섹션을 찾습니다. 노티파이를 사용하여 이펙트 위치로 애니메이션을 마킹합니다. 타임라인 정리를 위해 나이아가라 이벤트를 배치할 새 트랙을 생성합니다. 트랙(Track) 을 클릭한 뒤 노티파이 트랙 추가(Add Notify Track) 를 선택합니다. 이름을 Niagara 로 지정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 타임라인의 스크럽 막대에서 아래로 이어지는 선이 표시됩니다. 플레이헤드가 나이아가라 노티파이 트랙과 교차하는 지점을 우클릭합니다. 노티파이 추가(Add Notify) > 나이아가라 파티클 이펙트 재생(Play Niagara Particle Effect) 을 선택합니다. 마커는 디폴트 라벨 PlayNiagaraEffect로 지정되어 애니메이션의 해당 지점에 배치됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- PlayNiagaraEffect 노티파이를 선택한 상태로 디테일(Details) 패널에서 애님 노티파이(Anim Notify) 섹션을 찾습니다. 여기서 애니메이션에 추가할 나이아가라 시스템을 선택합니다. 나이아가라 시스템(Niagara System) 옆의 드롭다운을 클릭하고 나이아가라에서 생성한 FX_DustCloud 시스템을 선택합니다. 노티파이의 라벨이 FX_DustCloud 로 변경됩니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
- 왼쪽 발에 대해서도 위의 단계를 반복합니다. 타임라인에서 바로 노티파이를 복사하여 붙여넣을 수도 있습니다. 각 발이 지면에 닿는 순간에 맞춰 구름의 위치를 오프셋하여 룩을 더 다듬을 수 있습니다. 애님 노티파이(Anim Notify) 를 선택한 상태에서 위치 오프셋(Location Offset) 값을 필요에 따라 조정합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다.
-
타임라인의 재생(Play) 을 클릭하여 이펙트 프리뷰를 살펴보고 필요에 따라 값을 조정합니다.
-
애니메이션 에디터를 닫습니다. 레벨 에디터(Level Editor) 에서 플레이(Play) 버튼을 눌러 레벨 프리뷰를 봅니다. 주변을 달리며 실제로 이펙트를 확인합니다.
섹션 결과
이제 캐릭터의 달리기 애니메이션에 나이아가라 이펙트를 연결했습니다. 축하합니다!
연기 구름의 룩 다듬기
원하는 결과물을 얻기 위해 값을 더 조정하고 싶을 수도 있습니다. 이제 씬이 모두 구성되었으니 이전 단계로 돌아가 실험해볼 수 있는 몇 가지 아이디어를 소개합니다.
- 파티클 초기화(Initialize Particle) 모듈의 컬러를 조정합니다.
- 파티클 업데이트(Particle Update) 그룹에 메시 크기 스케일(Scale Mesh Size) 모듈을 추가합니다. 스케일 인수(Scale Factor) 를 커브에서 벡터(Vector from Curve) 로 설정하고, 다양한 모양을 실험하며 시간에 따른 구름의 크기를 바꿔봅니다.
- 메시 렌더러(Mesh Renderer) 에서 모델의 크기를 조정합니다.
- 애님 노티파이(Anim Notify) 에서 구름의 위치를 조정합니다.
5 - 최종 결과 검토하기
퀵스타트 가이드에서 이펙트 생성을 완료했습니다. 결과물은 다음과 유사할 것입니다.
6 - 실전 응용
지금까지 기본 이펙트를 생성하여 캐릭터에 연결했습니다. 이제 이 캐릭터를 사용해 다른 관련 튜토리얼도 시도할 수 있습니다. 나이아가라에 더 많은 이펙트를 생성할 수도 있습니다.
- 리본을 사용하면 달리는 캐릭터 뒤로 트레일을 생성할 수 있습니다.
- 애니메이션 튜토리얼에서 캐릭터에 추가 애니메이션을 생성하거나 수정하는 방법을 확인할 수 있습니다.
- 애니메이션 블루프린트 사용 방법을 배우면 캐릭터로 더 많은 작업을 할 수 있습니다.