작성
·
276
0
리슨 서버(호스트)의 액터가 공격하면 Notify는 정상적으로 한번 호출되는데
클라이언트의 액터가 공격요청을하면 서버에서 Notify로그가 두 번 호출됩니다. (두번 공격 되는 현상)
5.4.3에서만 일어나는 문제일까요? 프로젝트를 다운 받아서 버전이랑 헤더 수정만 하고 실행해도 똑같은 현상이 발생하네요.
리슨 서버 액터에서 공격시 출력 로그
클라에서 공격시 출력 로그
답변 4
1
저는 에디터 개인설정 -> 멀티플레이어 옵션 -> '단일 프로세스 하 실행' 체크 해제 상태에서 실행 시
해당 문제가 해결되었습니다.
실제 게임 패키징시 컴퓨터 1대 당 1개의 프로세스로 실행된다고 생각하면 괜찮지 않을까 싶기는 한데
클라이언트 상의 animation notify가 모종의 이유로 Server에서 무시되어서 해결 된 것처럼 보이는 것 일수도 있고, 찝찝하기는 하네요.
여러 방법으로 해결할 수 있는 신기한 버그네요....
강의때는 5.4로 하더라도 다른 작업시에는 버전을 바꿔서 해야할듯 쉽네요...
5.4버전이 mixamo 모델링이랑 자동으로 리타게팅이 되어서 좋았는데 한편으로 아쉽네요
1
안녕하세요. 우선 5.1에서는 해당 현상이 발생하지 않은 것을 확인했습니다.
서버와 클라에서 애님 노티파이가 한 번씩 호출되었지만 5.4의 경우 서버에서 애님 노티파이가 이후에 한 번 더 호출되는 것을 확인했습니다.
지금으로서는 확실하진 않지만, 버전 업 되면서 클라에서 자체적으로 서버에 동기화를 진행하는게 아닌가 생각되는데요, 이 부분은 조금 시간이 걸리겠지만 변경사항을 살펴보겠습니다.
다만 수업은 Multicast의 동작만 살펴보고, 이후에 사용을 권장하는 것은 아니다보니, 우선 학습을 진행하시는데 크게 지장은 없을 것으로 보여집니다.
0
Notify 두 번 호출 되는 문제를 찾았습니다.
Montage Tick Type을 Queued를 Branching Point로 변경하니 문제가 해결되었습니다.
아님 MeshComponent의 Visibility Base Anim Tick Option을 Always Tick Pose에서 Always Tick Pose and Refresh Bone으로 해도 해결이 된다하네요.
아마 서버에서 호출되었는데 일종의 버그?로 호출되지 않아 다시 호출한거 같네요.
아래는 문제를 해결하는데 도움을 준 홈페이지 링크입니다.
좋은 정보 감사합니다! 온라인 게임이라면 멀티 클라를 돌리는 분들도 꽤 될테니 정확한 해결책은 아니겠네요.