[UE4] 나이아가라(Niagara) 출력하기 (UNiagaraComponent, UNiagaraSystem)
Hammer 무기의 스킬을 구현할 때 발사되는 나이아가라 이펙트를 출력하기 위한 기능을 구현해보았다.
🌈 나이아가라 애셋 수정

우선 출력하고싶은 나이아가라 애셋을 가져온 후, Initialize Particle의 색상을 변경시켜 커스텀하였다.
✨ Aura 클래스

나이아가라를 출력하기 위해 CAura 클래스를 생성하였다.
나이아가라에 충돌됐을 때 Hit 데미지를 입힐 수 있으니 HitData를 생성하였고, 충돌처리 간격 변수(DamageInterval)도 선언해주었다.
이후 클래스의 구조는 Root 아래 Niagara 컴포넌트와 Box Collision 컴포넌트를 추가하였다.

Cpp 파일에선 각각의 컴포넌트를 초기화하고, 위에서 수정해놨던 나이아가라 시스템을 불러와서 저장해주었다.
🔨 SubAction_Hammer

Hammer 무기의 스킬 발동 시 나이아가라를 출력할것이기 때문에 UCSubAction_Hammer 클래스에서 AuraClass와 AuraLocation을 선언해주었다.

SubAction이 시작될 때(Begin) Aura의 Transform을 초기화시켜주었다.
Owner의 위치에 AuraLocation만큼 위치를 더해 출력하고, 방향은 Owner의 전방방향을 향하도록 설정해주었다.
이후, SpawnActor로 AuraClass를 전달하여 Aura를 생성해주었으며 일회성 Spawn이므로 별도의 객체로 Aura를 받진 않았다.

컴파일 후 CAura 클래스를 기반으로 블루프린트를 생성한 뒤,

BP_CSubAction_Hammer 블루프린트에 만든 CAura를 할당해주었다.
이후 프로그램을 실행시켜보면 성공적으로 플레이어의 앞 방향으로 나이아가라가 출력되는 모습을 확인할 수 있었다.
