네트워크: 온라인 게임 제작의 기초(1)
1. 온라인 게임의 통신 방식
- 동기 방식: 통신할 단말 사이에 데이터를 주고 받아 각 단말의 처리결과가 완전히 일치하는 통신 방식
- 턴 동기: 턴 방식 게임에서 턴 플레이어의 행동을 상대에게 보내고 그 정보를 바탕으로 처리
- 키 입력 동기: 컨트롤의 입력 정보를 서로 전송하여 같은 프레임의 데이터를 처리하여 단말을 같은 상태로 동기화
- 비동기 방식: 최서 정보만으로 각 단말의 상태를 일치시키는 방식
- 장점: 멈추는 일 없이 게임을 할 수 있음
- 단점: 단말간의 처리가 완전히 일치하지 않음 → 단말끼리 동기해야 할 물건이나 이벤트 상태를 일치시켜 일관성을 유지
2. 온라인 게임에서 고려해야 할 통신의 제약
- 통신 지연: 지연은 항상 발생하며, 우저가 지연을 체감할 수 없게 게임을 디자인해야 함
- 데이터 소실
- 회선 끊김: 남은 플레이어로 게임을 계속할지 끊어진 플레이어의 게임 결과를 어떻게 해야할지 등을 고민해야 함
3. 데이터의 흐름을 시간축으로 그려보자
단말기 간 데이터 송수신의 지연 현상 원인은 송신에 걸리는 시간과 수신한 데이터를 처리하는게 원인이 된다.
이때 아래와 같이 시간축을 그려 생각하면, 필요한 정보를 파악하기 용이하다.
4.범용적으로 사용한 용어 정리
- 단말: 네트워크에 연결된 컴퓨터와 게임기, 휴대전화와 템플릿 단말 등 게임을 플레이하는 기기
- 플레이어: 단말로 플레이하는 사람
- 캐릭터: 플레이어가 조종하는 캐릭터
- 로컬 단말: 자신이 플레이하는 단말
- 리모트 단말: 통신 상대의 단말
- 로컬 캐릭터: 로컬 단말에서 조종하는 자신의 캐릭터
- 리모트 캐릭터: 리모트 단말에서 통신 상대방이 조종하는 로컬 단말의 캐릭터
- 게임 서버: 게임 플레이 중에 단말과 접속해서 게임 데이터를 일원적으로 관리하거나 호스트와 게스트의 데이터를 중계하는 서버
- 게임 클라이언트: 게임 서버와 통신해서 게임을 플레이하는 단말
댓글남기기