
개요
나이아가라 스켈레탈 메시 정보를 활용한 번개 제작법 영상을 소개한다.
영상 정보
- 영상 제목: Electrocuting Lightning Effect in UE5 Niagara
- 채널명: Motion Dreams
- 영상 링크: https://youtu.be/Q6ESKPp8TE0
핵심 요약 (Conclusion)
- 언리얼 엔진 5(UE5)의 나이아가라(Niagara) 시스템을 활용하여 캐릭터 몸 전체에 번개가 튀며 감전되는 효과(Electrocuting Lightning Effect)를 제작하는 실전 가이드입니다.
- 스켈레탈 메시 위치 샘플링: Sample Skeletal Mesh 모듈을 사용해 캐릭터 표면의 무작위 두 지점을 실시간으로 추출하고, 이를 빔(Beam)의 시작점(Beam Start)과 끝점(Beam End)으로 지정하여 캐릭터 몸 위에서 번개가 연결되는 구조를 구축합니다.
- 디테일한 변형과 왜곡: 커브(Curve) 기반의 Beam Width 및 Jitter Position 모듈을 활용해 번개의 굵기 테이퍼링(Tapering)과 위치 파형(Distortion)을 구현하고, Sampled Normal 속성을 연결하여 자연스러운 곡률(Tangent)을 부여합니다.
- 다층 레이어링 및 발광: 마스터 번개 이미터 외에 두께가 얇은 2차 빔 레이어, 번개 위치에서 터져 나가는 스파크 이미터(Spawn Particles from Other Emitter), 표면에서 피어오르는 연기 이미터(SubUV Animation)를 추가하여 복합적인 효과를 연출합니다.
- 몽타주 연동 및 제어: 애니메이션 몽타주(Animation Montage)에 Timed Niagara Effect 노티파이 상태를 적용하고, 이미터의 루프 주기(Loop Duration)와 횟수(Loop Count)를 상호 계산하여 애니메이션 재생 시간에 맞춰 감전 효과가 정확히 지속되도록 맞춥니다.
타임라인별 상세 정리
1. 개요 및 캐릭터 애니메이션 몽타주 설정 (00:00:00 ~ 00:01:05)
- 씬 기본 구조 구성 [00:09]: 언리얼 엔진의 서드퍼슨 템플릿(Third Person Template)을 기반으로 설정합니다. 특정 키 입력 시 캐릭터가 감전되어 사망하는 애니메이션이 재생되도록 블루프린트를 구성합니다.
- 애니메이션 몽타주 생성 [00:24]: 감전 시퀀스를 제어하기 위해 애니메이션 우클릭 메뉴에서 '애니메이션 몽타주 생성(Create Animation Montage)'을 실행합니다. 몽타주 내부의 애니메이션 노티파이(Anim Notify)를 통해 나이아가라 이펙트를 자동으로 트리거하는 방식을 사용합니다. [00:32]
- 나이아가라 시스템 생성 [00:47]: 콘텐츠 브라우저에서 Minimal 템플릿 기반의 나이아가라 시스템을 생성하고 이름을 NS_Electrocute로 지정합니다. [00:57]
2. 스켈레탈 메시 표면 샘플링 및 빔(Beam) 연결 기초 (00:01:06 ~ 00:03:55)
- 첫 번째 이미터 설정 [01:06]: 이미터 이름을 Lightning1으로 변경합니다.
- Sample Skeletal Mesh 모듈 추가 [01:15]:
- 시작점과 끝점 파라미터 추출 [02:01]: Sample Skeletal Mesh 모듈을 그대로 복사/붙여넣기하여 2개를 만듭니다. 각 모듈이 내보내는 Sampled Position 파라미터를 각각 번개의 시작점(Start)과 끝점(End) 좌표로 사용합니다. [02:18]
- 빔 파티클 구성 [02:27]:
- Spawn Burst Instantaneous 모듈을 추가하고 버스트 수량을 10으로 설정합니다. [02:37]
- Particle Spawn 단계에 Beam Emitter Setup 및 Spawn Beam 모듈을 추가하고, Render 단계에 Ribbon Renderer를 활성화(기존 Sprite Renderer는 비활성화)하여 빔 형태로 보이게 만듭니다. [02:48]
- Beam Start 좌표에는 첫 번째 표면 샘플링 위치를, Absolute Beam End를 활성화한 후 Beam End 좌표에는 두 번째 표면 샘플링 위치를 할당합니다. [03:14]
- 이로써 스켈레탈 메시 표면의 무작위 두 지점을 연결하는 기초 빔 구조가 완공됩니다. [03:32]
3. 나이아가라 이미터 주기 설정 및 애니메이션 몽타주 노티파이 연결 (00:03:56 ~ 00:06:10)
- 타이밍 및 생사 주기 제어 [03:56]:
- 색상 및 라이트 발광 [04:49]: Initialize Particle에서 Color를 Direct Set 기반의 푸른색 계열로 설정하고, Emissive 강도 값을 100으로 높여 강력한 인텐시티를 부여합니다. [04:57]
- 몽타주 노티파이 연결 [05:06]:
4. 빔 테이퍼(Taper) 제어 및 Jitter Position을 이용한 왜곡(Distortion) 구현 (00:06:11 ~ 00:08:02)
- Beam Width 테이퍼 설정 [06:11]:
- Jitter Position 노이즈 왜곡 [06:59]:
- 테셀레이션 제어 [08:04]: Ribbon Renderer에서 Tessellation을 해제(Disable)하거나 수동 조절하여 곡선의 완화 현상을 줄이고 꺾임이 부각되는 날카로운 번개 형태를 완성합니다. [08:13]
5. 스켈레탈 메시 노멀을 활용한 번개 곡률(Curvature) 추가 및 Light Renderer 적용 (00:08:03 ~ 00:09:43)
- Sampled Normal을 이용한 굴곡 표현 [08:21]:
- Sample Skeletal Mesh 모듈이 자동으로 출력하는 Sampled Normal 파라미터를 사용합니다. [08:32]
- Beam Emitter Setup에서 Use Beam Tangent를 활성화합니다. [08:38]
- Beam Start Tangent 및 End Tangent에 Multiply Vector by Float 노드를 적용하고, Vector 항목에는 표면 노멀(Normal) 파라미터를, Float 항목에는 무작위 수치를 지정하여 번개 줄기가 캐릭터 몸 밖으로 둥글게 부풀어 오르는 자연스러운 탄젠트 곡률을 생성합니다. [09:05]
- Light Renderer 배치 [09:44]: 나이아가라 랜더러에 Light Renderer를 추가함으로써 번개가 칠 때마다 주변 캐릭터 피부와 배경 지오메트리에 실시간 조명이 투영되도록 설정합니다. [09:57]
6. 디테일 레이어 추가 및 커스텀 번개 머티리얼(M_Lightning) 제작 (00:09:44 ~ 00:11:27)
7. 파티클 연동 스파크(Sparks) 이미터 및 충돌/반사(Collision) 설정 (00:11:28 ~ 00:13:51)
8. 스타터 콘텐츠 연기(Smoke) 이미터 구성 및 SubUV 애니메이션 적용 (00:13:52 ~ 00:16:44)
- 스타터 콘텐츠 텍스처 활용 [13:52]: 프로젝트에 스타터 콘텐츠를 추가하고, Particles 폴더에 포함된 8x8 스프라이트 시트 텍스처인 Smoke_SubUV1을 활용합니다. [14:02]
- 연기 이미터 설정 [14:18]:
- SubUV 스프라이트 애니메이션 [15:27]:
- 스케일 및 회전 변형 [16:03]: Scale Sprite Size 및 Sprite Rotation Rate 모듈을 통해 피어오를수록 크기가 2배로 확산되고 무작위 회전이 들어가도록 세부 연출을 다듬습니다. [16:18]
댓글