Game Develop

[UE5] 몬스터를 공중에 띄우고 싶을 때. 본문

UnrealEngine5/이것저것

[UE5] 몬스터를 공중에 띄우고 싶을 때.

MaxLevel 2024. 10. 1. 03:39

 

액션성을 중요시하다보니, 어퍼기를 이용해 몬스터를 공중에 띄우는 기능이 있다.

 

그냥 막연히 AddImpulse를 이용해서 데이터테이블에 지정된 값만큼 z축으로 띄우게 했었는데, 가만히 살펴보니 액터(몬스터)의 CharacterState에 따라서 값이 달라지는 걸 알 수 있었다.

 

OnGround상태일 때랑 Falling 상태일 때 띄워지는 정도가 달랐던 것.

그래서 ChatGPT한테 물어보니, Falling상태일 땐 중력값에 의해 속도가 -z축쪽으로 힘이 가해지니, +z축으로 힘을 가한 내 AddImpulse 함수랑 충돌해서 더 적게 띄워진 것이였다.

 

또한 AddImpulse 는 액터의 질량에도 영향을 받는다고 한다.

 

이렇게 현재 액터에 가해지고있는 속도나 액터의 질량을 무시하고싶으면 LaunchCharacter를 쓰면 된다.

중력의 경우도 함수가 호출되고 바로 이후의 즉각적인 중력은 무시한다고 한다.

 

그러니 자신의 프로젝트의 기획의도에 맞게 알맞은것을 사용하면 된다.