2026/07/15 2

[Unreal Engine 네트워크] HasAuthority()와 IsLocallyControlled()는 무엇이 다른가?

Unreal Engine 멀티플레이를 처음 구현할 때 가장 혼동하기 쉬운 함수가 다음 두 가지다.HasAuthority()IsLocallyControlled()두 함수 모두 “이 코드를 여기서 실행해도 되는가?”를 판단할 때 사용하지만, 확인하는 대상은 완전히 다르다.HasAuthority()는 Actor의 상태를 결정할 권한을 확인한다.IsLocallyControlled()는 Pawn을 현재 컴퓨터에서 직접 조종하는지 확인한다.이 차이를 명확히 이해하지 못하면 다음과 같은 문제가 발생한다.클라이언트에서만 Actor가 사라짐호스트에서는 UI가 보이지만 원격 클라이언트에서는 보이지 않음모든 플레이어 화면에 동일한 UI가 나타남서버와 클라이언트의 Actor 상태가 달라짐리슨 서버에서는 정상인데 전용 서버에서..

[UE5] 애니메이션 문제처럼 보였던 이동 버그를 무기 충돌에서 찾아내기까지

오늘은 캐릭터의 전투 디테일을 개선하면서 다음 기능을 정리했다.권총과 라이플 재장전 애니메이션 분리조준 중 달리기 상태 전환무기 장착 위치 및 트레이서 이펙트 점검이동 중 발생하던 캐릭터 위치 보정 현상 해결애니메이션 노티파이를 이용한 발소리 구현사망 몽타주 이후 캐릭터 숨김 및 결과 UI 연결결과 UI 종료 후 기존 GameMode 리스폰 흐름 유지단순히 기능을 추가하는 작업보다, 서로 다른 시스템이 영향을 주면서 발생한 문제의 원인을 추적하는 과정이 핵심이었다.1. 아래를 조준하면 캐릭터가 뒤로 가속되는 현상문제 상황캐릭터가 아래를 조준한 상태에서 전진 입력을 하면 다음 현상이 발생했다.전진 키를 눌렀는데 캐릭터가 뒤로 이동일반적인 이동 속도보다 훨씬 빠르게 밀림재장전 중 이동하면 원래 위치로 돌아가..