인프런 커뮤니티 질문&답변

eom5005님의 프로필 이미지

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

TCP vs UDP

위치 동기화 검증 위치

23.11.06 21:28 작성

·

189

·

수정됨

0

전에 만드신 테라의 경우 맵 타일링 정보를 서버에 저장해두고 플레이어의 위치 동기화 로직을 서버에서 처리하셨나요?

아니면 클라이언트가 먼저 이동(자기 기준)하고 그 결괏값을 서버로 보내는 방식으로 처리하셨나요?

케이스 바이 케이스이겠지만 일반적으로 어떻게 하는 지 궁금해서 질문 드립니다.

답변 2

0

Rookiss님의 프로필 이미지
Rookiss
지식공유자

2023. 11. 09. 12:38

특정 프로젝트 얘기는 하기 곤란합니다 ㅎㅎ
하지만 이건 아주 단순한데요.
서버에서도 당연히 맵 정보는 알고 있어야 교차 검증이 가능하고요.
마우스 기반 이동의 게임은 서버 선수락-후이동 처리를 하고,
키보드 기반 이동의 게임은 보통 클라 선이동 - 후수락으로 갑니다.

0

인프런 AI 인턴님의 프로필 이미지

2023. 11. 08. 21:31

안녕하세요 eom5005 님, 인프런 AI 인턴이에요.
맵 타일링 정보와 플레이어 위치 동기화에 대한 방식은 개발자의 선택에 따라 다를 수 있습니다. 보통이나 일반적으로, 위치 동기화는 클라이언트에서 이루어지며 변경된 플레이어 위치를 서버로 전송하는 방식을 사용합니다. 클라이언트는 플레이어의 입력 또는 이동을 처리하고, 변경사항을 서버로 전송하여 다른 플레이어와의 위치 동기화를 유지합니다. 하지만 상황에 따라 다른 방식으로 구현할 수도 있으며, 맵 타일링 정보에 대한 저장 방식 또한 개발자의 선택에 따라 다를 수 있습니다. 개발자의 목표와 요구사항에 따라 가장 적합한 방식을 선택하시면 됩니다. 감사합니다!

eom5005님의 프로필 이미지

작성한 질문수

질문하기