반응형
공격 로직
플레이어의 공격 키 입력 -> (서버) 공격 가능 상태 확인 -> (멀티 캐스트) 상태 변화 및 애니메이션 호출
데미지 처리
애니메이션을 이용하여 Anim Notify 호출 -> (Local) Multi Sphere Trace For Objects를 통하여 타격 확인 -> 타격된 대상을 Cast를 이용하여 플레이어인지 확인 -> (서버) 데미지 처리 및 넉백 처리 -> (멀티 캐스트) 상태 업데이트
문제점
문제점 1 - AnimNotify 호출 과정에서 1회 호출이 아닌 N회 호출
해결법 :
Notify Begin와 End를 설정하고 Begin 함수의 첫 호출에서 Bool 변수를 True로 End에서 False로 변경한다.
-> 공격자에게 이를 설정할 경우 한 번에 연속적인 공격 구현이 어려움
-> 피격대상에게 설정할 경우(전제가 잘못됨) 여러 대상이 공격했을 경우의 처리도 이상해짐
-> 애초에 AnimNotify에서 여러 번 호출되는 것이 아닌 Multi Sphere Trace For Objects함수에서 발생된 결과값만큼 함수가 호출이 되었던 문제.
=> Multi Sphere Trace For Objects함수에서 발생하는 결과값을 Set자료구조를 이용하여 데이터를 Unique하게 만듦.
=> 데이터 정리 후 데미지 처리 함수 1회 처리
반응형
'Unreal Engine 5 > MMORPG 개발' 카테고리의 다른 글
| 시간 흐름 제어 (2) | 2024.11.24 |
|---|---|
| Behavior Tree (0) | 2024.11.24 |
| Networking content (0) | 2024.11.24 |
| 언리얼 엔진 5 경로 관련 참고 사이트 (0) | 2024.10.03 |
| Damage Indicator Object Pooling (0) | 2024.08.18 |