이펙트아카데미 특강/외주/커뮤니티
언리얼 - 나이아가라 파티클 위치 및 곡선(Arc) 제어과정
이 영상 핵심 주제는 "물리(Physics) 시뮬레이션에 의존하지 않고, 수식(Math)과 커브(Curve)를 사용하여 A 지점에서 B 지점으로 정확하게 꽂히는 곡선(Arc) 이동 이펙트 구현"입니다.
전체 작업 과정은 크게 기본 설정, 이동 로직(핵심), 트레일 및 디테일 설정으로 나뉩니다.
---
1. 렌더러 및 기본 스폰 설정 (Renderer & Spawn)
가장 먼저 파티클이 어떻게 보일지와 언제 생성될지를 정의합니다.
Renderer 구성:
Sprite Renderer: 발사체의 머리 부분(빛나는 구체)을 담당합니다.
Ribbon Renderer: 발사체가 지나간 자리에 남는 궤적(Trail)을 담당합니다. 리본을 사용하려면 파티클 ID가 지속되어야 하므로 설정에 주의가 필요합니다.
Spawn 설정:
지속적으로 나가는 것이 아니라 한 번에 발사되는 연출을 위해 `Spawn Rate` 대신 `Spawn Burst Instantaneous`를 사용합니다.
생성 개수(Spawn Count)를 설정하여 한 번에 몇 개의 발사체가 나갈지 정합니다.
2. 핵심 이동 로직: 위치 및 곡선 제어 (Position & Arc Logic)
이 영상에서 가장 중요한 부분입니다. 단순히 `Velocity(속도)`와 `Gravity(중력)`를 줘서 날리는 방식은 목표 지점에 정확히 떨어지게 하기 어렵습니다. 따라서 선형 보간(Lerp)과 커브를 이용한 수식으로 위치를 직접 제어합니다.
스크래치 패드(Scratch Pad) 활용: 나이아가라 내에서 커스텀 모듈(스크립트)을 작성합니다.
Lerp (선형 보간) 이동:
시작점(Start Point)과 도착점(End Point) 변수를 만듭니다.
파티클의 수명 주기(`Normalized Age`, 0~1 사이 값)를 `Alpha` 값으로 사용하여, 시간이 지남에 따라 시작점에서 도착점으로 직선 이동하게 만듭니다.
수식: `CurrentPosition = Lerp(Start, End, Age)`
곡선(Arc) 추가:
직선 이동에 위쪽 방향(Up Vector)으로의 오프셋(Offset)을 더해줍니다.
이때 커브(Curve) 또는 Sine 함수를 사용하여, 시작과 끝에서는 0이고 중간에서 가장 높이 솟아오르는 값을 만들어줍니다.
결과적으로 파티클은 무지개처럼 둥근 궤적을 그리며 이동하게 됩니다.
3. 회전 및 방향 정렬 (Orientation)
파티클이 곡선으로 이동할 때, 머리 부분이 진행 방향을 바라보게 해야 자연스럽습니다.
Update Mesh Orientation (또는 Sprite Rotation):
파티클의 Velocity(속도) 벡터를 계산하거나, 이전 프레임 위치와 현재 위치의 차이를 이용해 진행 방향 벡터를 구합니다.
이 벡터를 기준으로 스프라이트나 메쉬의 회전을 정렬(Align)시켜, 발사체가 진행 방향으로 뚫고 나가는 듯한 모습을 만듭니다.
4. 변수 제어 및 폴리싱 (Variables & Polish)
이펙트를 더 풍성하고 사용하기 쉽게 만듭니다.
User Parameters (사용자 변수):
시작점, 도착점, 곡선의 높이(Arc Height) 등을 `User Parameter`로 노출시킵니다.
이렇게 하면 레벨 에디터(Viewport) 상에서 이펙트 액터의 변수만 조절하여, 몬스터가 쏘는 위치나 타겟 위치를 실시간으로 바꿀 수 있습니다.
Color & Scale Curve:
발사체가 생성될 때는 크고 밝게, 사라질 때는 작고 희미하게 변하도록 `Scale Alpha`나 `Color` 모듈에 커브를 적용합니다.
Ribbon Width:
트레일(리본)의 꼬리 부분이 자연스럽게 얇아지도록 리본 폭(Width)도 커브로 제어합니다.
---
요약 및 활용 포인트
이 튜토리얼의 방식은 "유도 미사일"이나 "마법 화살"처럼 목표물이 확정된 상태에서 날아가는 발사체를 만들 때 매우 유용한 기법입니다.
장점: 물리 엔진을 쓰지 않으므로 성능이 가볍고, 100% 정확하게 타겟 위치에 도달함을 보장할 수 있습니다.
핵심 기술: `Scratch Pad`를 이용한 벡터 연산(Lerp)과, 이를 시각적으로 제어하기 위한 `Curve` 활용 능력이 핵심입니다.
에반 언리얼5 이펙트 그룹과정[12월 시작] : https://cafe.naver.com/unrealfx/20727
KUPAFX Stylized 유니티 이펙트 취업과정 : https://cafe.naver.com/unrealfx/21249
트리키 언리얼+후디니 활용 게임 VFX 연출과정 : https://cafe.naver.com/unrealfx/25629
max님의 쌩기초 메쉬활용 이펙트과정 1달특강 : https://cafe.naver.com/unrealfx/24469
eVan텍스쳐 단품과정 : https://cafe.naver.com/unrealfx/24468
rak 유니티 UI연출이펙트 : https://gamefx.co.kr/bbs/page.php?hid=Rak_intro