언리얼 엔진

UE5) 나이아가라 시스템

zzugest1 2025. 3. 12. 01:12

나이아가라 시스템이란 언리얼 엔진에서 제공하는 비주얼 이펙트 기능이다. 게임에서 무기를 휘두를때나 타격이 있을 때 등 여러 상황에서 이펙트를 넣으면 시각적 효과가 커질 것이다. 

 

https://zzugest1.tistory.com/71

 

UE5) 소켓

게임을 플레이할때 캐릭터는 여러 무기들을 들고 공격을 하는 경우가 대부분이다. 캐릭터에게 무기를 주어줘야할 경우엔 '소켓'을 이용해야 한다.  캐릭터 클래스의 컴포넌트 -> 캐릭터의 메시

zzugest1.tistory.com

 

캐릭터에게 무기를 주어준 다음 이를 휘두룰 때 이펙트가 발생하도록 만들기 위해 나이아가라 시스템을 다운 받아준다.

 

 

나이아가라 시스템 파일은 다운받으면 콘텐츠 드로어에서 이름 그대로 나이아가라 시스템 파일이라 적혀있고 이를 클릭해 확인하면 위와 같이 어떤 이펙트인지 확인할 수 있다.

 

 

캐릭터 블루프힌트 클래스의 이벤트 그래프로 가서 마우스 왼쪽버튼 클릭시 펀치를 날릴 때 펀치 애니메이션과 'Spawn System at Location'을 검색해 노드를 이어준다음 System Temlpate 부분에 다운받은 나이아가라 시스템을 넣어주면 된다.

 

 

펀치시 이펙트가 생성되는데 캐릭터의 바닥에서 생성되는 것을 볼 수 있다. 이는 Spawn System at Location 함수의 Location과 Rotation이 기본값으로 되어있기 때문이다. 무기를 휘두룰 때 무기에 이펙트가 생기게 하려면 이 함수의 Spawn위치를 무기의 위치로 만들면 된다.

 

 

그러기 위해 우선 블루프린트 클래스 생성 -> 액터로 생성한 다음 무기의 파일에 맞게(여기선 스테틱 메시) 컴포넌트에 메시를 추가해준다.

 

캐릭터의 컴포넌트

그 다음 캐릭터의 컴포넌트에서 메시에 무기를 드래그해 자손으로 만들어준다.

 

 

캐릭터의 컴포넌트에서 무기를 드래그해 이벤트 그래프에 무기를 불러올 수 있다. 무기의 위치 정보를 받기 위해 'Get Actor Transform' 함수를 불러온다. 하지만 이 함수는 Target이 액터 오브젝트이고 무기(Dagger)는 자손 액터 오브젝트이다. 이 둘이 바로 연결이 안되기 때문에 무기에서 'Get Child Actor'를 검색해 이어주면 무기의 위치 정보를 받을 수 있다.  

 

무기를 휘두룰 때 이펙트 발생

 

위와 같이 펀치 키를 눌렀을 때 이펙트가 무기 따라 발생하는 것을 볼 수 있다. 이렇게 나이아가라 시스템을 이용해 여러 상황에서 알맞은 이펙트를 발생시킬 수 있다.

'언리얼 엔진' 카테고리의 다른 글

UE5) 애니메이션 몽타주 노티파이(2)  (0) 2025.04.24
UE5) 애니메이션 몽타주 노티파이  (0) 2025.04.22
UE5) 소켓  (0) 2025.03.10
UE5) 애니메이션 몽타주  (0) 2025.03.10
UE5) 플레이어 점프 구현  (0) 2025.03.06