TA: 나이아가라 빔 이펙트
TA: 나이아가라 빔 이펙트
빔 이미터
게임에서 많이 보이는 빔/레이저 형식의 이펙트는 나이아가라에선 빔을 이용해 만들 수 있다. 리본 이미터와 같은 머티리얼을 활용하지만 몇가지 차이점이 있다.
| 구분 | 리본 이미터 | 빔 이미터 |
|---|---|---|
| 기본 목적 | 움직이는 파티클의 궤적 표현 | 시작점과 끝점을 연결 |
| 파티클 배치 | 시간에 따라 순차적으로 생성 | 두 점 사이에 한 번에 배치 |
| 형태 기준 | 이전 파티클의 위치 | Source–Target 또는 베지어 곡선 |
| 대표 효과 | 꼬리, 이동 궤적, 연기, 검기 | 레이저, 번개, 광선, 연결선 |
| 움직임 | 파티클이 이동하면서 형태 생성 | 양 끝점 변화에 따라 전체 형태 갱신 |
| 길이 제어 | 파티클 수명·속도·스폰율 | 시작점과 끝점 거리 |
| 흔적 유지 | 지나간 경로가 일정 시간 남음 | 보통 현재 두 점 사이만 표시 |
주요 모듈
따로 있는 이미터는 아니고, 리본 이미터를 기본으로 하기에 몇개의 빔을 위한 모듈을 추가하는 방식으로 구성하게 된다.
- Emitter Update
- Beam Emitter Setup
- 빔의 시작점과 끝점을 지정한다.
- Spawn Burst Instantaneous
- 생성할 파티클 수를 결정하는, 다른 이미터에서의 역할과 같다.
- 리본에서 부드럽게 꺾이는 경로를 결정했던 것처럼, 빔 이미터에서도 경로상의 촘촘함/외곽의 부드러움을 결정할 수 있다.
- 다만 직선/제한적인 곡선으로 사용되는 빔 특성상, 리본보다는 스폰수에 따른 부드러움은 덜 느껴질 수 있으니, 성능과의 타협을 위해 적절한 스폰 수를 조절하는게 좋다.
- Beam Emitter Setup
- Particle Spawn
- Initialize Particle
- Particle Lifetime
- 다른 이미터에서처럼 빔 파티클이 남아있는 시간을 결정한다.
- 단발성 빔은 짧아도 큰 문제는 없으나, 지속형 빔의 경우 끊겨보이지 않게 적절히 높은 값을 설정해주어야 한다.
- Particle Lifetime
- Spawn Beam
- 실제 빔을 스폰하는 역할을 한다. 이전에 정해준 시작점과 끝점, 경로 설정에 맞추어 빔을 소환한다.
- Beam Width
- 빔의 두께를 결정할 수 있다.
- 커브나 수식을 바탕으로 빔의 모양을 전체적 혹은 위치별로 변형하는 것도 가능하다.
- Initialize Particle
- Particle Update
- Update Beam
- 기존에 정한 시작점과 끝점의 위치에 따라 빔의 위치를 업데이트한다. 모듈 내부에서 설정해줄 것은 따로 없다.
- 플레이어를 따라 움직이는등 동적으로 시작점과 끝점이 달라진다면 필요하다.
- Scale Beam Width
- 빔의 두께는 변화시킨다. 시간이나 위치등에 따라 동적으로 두께를 조절해야 할 때 유용하다.
- Update Beam
- Render
- Ribbon Renderer
- 리본을 기반으로 하기에 당연히 필수적인 이미터이다. 어떤 빔 형상을 나타낼지 머티리얼을 정하고 관련 설정을 세팅할 수 있다.
- 내부에서 Ribbon Width나 Ribbon Tessellation을 건드리면 기존 리본 이미터처럼 모습에 영향을 줄 수 있다.
- Ribbon Renderer
This post is licensed under CC BY 4.0 by the author.
