• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

이동 동기화 관련 문의

21.04.25 11:34 작성 조회수 186

0

안녕하세요. 좋은 강의 잘 보고 있습니다.

이동을 할때 패킷을 한칸 이동하는 애니메이션이 끝날때 보내는 것으로 설명하신거 같은데요. 이동 시작할때 보내는 것과 차이가 있을까요?

예를 들면, 나와 상대의 위치 사이에 한칸의 빈 공간이 있고, 거의 동시에 (상대가 미세하게 먼저 이동) 빈 공간으로 이동한 경우라 하면...

이동 애니메이션이 끝났을 때 패킷을 보내게 되면 나의 캐릭터가 빈공간에 거의 도착을 했을 때 상대 이동 패킷을 서버에서 받게 되므로 내 위치가 원래 위치로 복귀하게 되고 상대가 이동을 시작하게 되는 것 같네요.

만약 이동 시작할 때 패킷을 보내는 경우라면 나의 캐릭터가 이동중에 패킷을 받게 되므로 상대 캐릭터도 이동하여 빈공간에서 겹쳐보이다가 서버 판정으로 내 캐릭터가 원래 위치로 복귀하게 될 거 같네요. 

이렇게 생각하는게 맞는건가요?

답변 1

답변을 작성해보세요.

1

애니메이션 자체는 그냥 클라에서 보여주기 위한 용도이라서 딱히 상관없습니다.
실제 관건은 클라에서 선처리하고 서버에 허락을 구할 것인지,
아니면 서버에 선 허락을 구하고 클라에서 후처리를 할 것인지입니다.
두 방법 모두 가능한데 전자는 가위 눌리는 롤백 현상이 필연적으로 발생하고
후자는 약간의 답답한 렉이 느껴지게 됩니다.
완벽한 방법은 없으니 게임의 사양에 따라 적절히 골라주시면 되겠습니다.