지금 e스킬과 a스킬은 공중에 떳다가 다시 바닥으로 내려오는 스킬입니다
그런데 공중에 떳다가 적 머리위에 안착해버려 어색한 연출이 나옵니다
스킬을 쓰면 캐릭터가 적 머리위의 캡슐컴포넌트 위에 착지해서 이상하게 튕겨나갑니다
제가 생각한 해결법은 캐릭터가 애니메이션을 실행하면
원하는 노티파이구역에서 캐릭터의 콜리전을 잠시 적 (pawn)의 상태를 무시해버리게 만들고
적을 튕겨내는 콜리전을 스폰
애니메이션이 끝나면 다시 원래상태인 block으로 되돌려 원래상태로 되돌려서
충돌처리를 자연스럽게 구현해보겠습니다
우선 pawn을 무시하기전에 적이 가지고있는 콜리전에 다른게 섞여있는지확인을 해주고 섞여있다면 전부 pawn으로 변경해줍니다
오브젝트 타입을 전부 Pawn으로 변경해줍니다
그러면 캐릭터가 Pawn을 무시하면 적을 통과합니다
노티파이에서 SetCollisionResponseToChannel로 채널을 변경해서 ECC_Pawn에대한걸 무시하게 변경해줍니다
밑의 함수는 다시 블록하게해 원래대로 되돌리는 함수입니다
넉백하는 액터부터 스폰하는 함수를 캐릭터에서 짜주겠습니다
스폰시킬액터참조 tsubclassof와 스폰시킬함수를 만들고
그러면 내려찍을때 AnimNotify_IgnorePawn()노티파이를 호출해 적을 통과하고
바닥에 착지하면 AnimNotify_SpawnKnockbackCollision()를 호출해 적을 날려보내고
AnimNotify_SetCollisionOrigin()를 호출해 원래상태로 되돌립니다
'Unreal5 프로젝트 다이어리' 카테고리의 다른 글
Unreal - Radial Blur 기법 (신속 블러) (0) | 2025.04.22 |
---|---|
Unreal - 대쉬 공격 만들기 (Sweep 처리방식) (0) | 2025.04.22 |
Unreal - 공중 공격 - (2) (0) | 2025.04.20 |
Unreal - 공중 공격 - (1) (0) | 2025.04.15 |
Unreal - 모션워핑(Motion Warping) (0) | 2025.04.12 |