TCP 게임 트러블 슈팅2

김민재·2024년 10월 30일
0

문제 발생 경위

게임 시작시 플레이어의 위치를 받아서 넣어주는 과정에서 유니티쪽에서 이를 Deserialize 하는 과정에서 에러가 발생했다.

문제 발생 이유

패킷을 보내는 과정에서

데이터를 넣을 때 쓰는 JSON 타입의 파일을 유니티에서 Deserialize할 수 없는 에러가 발생했다.

이 에러를 확인해본 결과 유니티에서 이것을 해결하기 위해서는 2가지 방법이 있었다.

1. 버퍼를 보내줄 때 encode방식으로 보내주기


내가 사용한 방식이 이 방식인데 버퍼에 실기전에 데이터를 미리 인코딩하여 보내주는 방식이다.

2. JSONUtility 사용하기

클라이언트에서 사용할 수 있는 방법으로써

JsonUtility.FromJson<>(jsonString)
UserLocation userLocation = JsonUtility.FromJson<UserLocation>(jsonString);

이 코드를 이용하여 JSON파일을 구조체로 변환하여 데이터를 처리할 수 있게된다고 한다.

profile
ㅇㅇ

0개의 댓글