오늘 한일
- TCP게임 서버 만들기
TCP 게임 서버를 만들어 유니티로 만든 클라이언트에서 플레이어의 위치를 서버를 통해 공유해 보았다.
https://github.com/HyuneonY/tcp-game-server
TCP 서버 구현 코드
접속하기 버튼을 눌렀을 때 IP와 PORT로 서버에 접속 후 게임 세션을 생성해 주고 Device Id를 서버에 보내주어 게임 세션에 저장해주었다.
플레이어의 위치 정보를 서버에 보내주고 서버에서 각각의 플레이어의 위치 정보를 업데이트 한후 클라이언트에 자신을 제외한 모든 플레이어의 위치를 보내주게 하였다.
어려웠던 점
- 클라이언트가 모두 구현되어 있는 상태에서 서버를 구현해야 해서 유니티에서 클라이언트의 C#으로 작성되어있는 코드를 분석하는 것이 어려웠다. (코드를 보고 분석하고 흐름을 이해하는 방법을 연습해야겠다.)
- TCP 통신에서 패킷을 전송하고 받을 때에 대한 이해가 잘 안되어있었고 패킷의 구조에 대해 잘 몰랐었는데 이번 프로젝트로인해 TCP 통신에 대해 많이 배운 것 같다. (다른 TCP 서버도 구현해보고 여러 패킷 구조 설계를 해보면 좋을 것 같다.)
오늘의 TIP
- 프로토콜 버퍼(Protocol Buffers, Protobuf)는 구조화된 데이터를 직렬화하는 방식이다. 유선이나 데이터 저장을 목적으로 서로 통신할 프로그램을 개발할 때 유용하다.
'TIL' 카테고리의 다른 글
TIL#56(메모리) (0) | 2024.07.10 |
---|---|
TIL#55(CPU) (1) | 2024.07.09 |
TIL#53(Unity와 Socket서버 연결하기) (0) | 2024.07.03 |
TIL#52(Wireshark) (0) | 2024.07.02 |
TIL#51(서브넷 마스크와 IPv4 주소) (0) | 2024.07.01 |