1장 네트워크 게임의 개요
__1.1 멀티플레이어 게임의 간추린 역사
____1.1.1 로컬 멀티플레이어 게임
____1.1.2 초기 네트워크 멀티플레이어 게임
____1.1.3 MUD: 멀티 유저 던전
____1.1.4 랜 게임
____1.1.5 온라인 게임
____1.1.6 MMO 게임
____1.1.7 모바일 네트워크 게임
__1.2 [스타시즈: 트라이브스]
____1.2.1 플랫폼 패킷 모듈
____1.2.2 연결 관리자
____1.2.3 스트림 관리자
____1.2.4 이벤트 관리자
____1.2.5 고스트 관리자
____1.2.6 이동 관리자
____1.2.7 기타 시스템
__1.3 [에이지 오브 엠파이어]
____1.3.1 턴 타이머
____1.3.2 동기화
__1.4 요약
__1.5 복습 문제
__1.6 더 읽을거리
2장 인터넷
__2.1 패킷 스위칭의 기원
__2.2 TCP/IP 스택의 계층 구조
__2.3 물리 계층
__2.4 링크 계층
____2.4.1 이더넷/802.3
__2.5 네트워크 계층
____2.5.1 IPv4
____2.5.2 IPv6
__2.6 전송 계층
____2.6.1 UDP
____2.6.2 TCP
__2.7 응용 계층
____2.7.1 DHCP
____2.7.2 DNS
__2.8 NAT
____2.8.1 NAT 투과
__2.9 요약
__2.10 복습 문제
__2.11 더 읽을거리
3장 버클리 소켓
__3.1 소켓 만들기
__3.2 운영체제별 API 차이
__3.3 소켓 주소
____3.3.1 자료형 안전성
____3.3.2 문자열로 sockaddr 초기화하기
____3.3.3 소켓 바인딩하기
__3.4 UDP 소켓
____3.4.1 자료형 안전성을 보강한 UDP 소켓
__3.5 TCP 소켓
____3.5.1 연결된 소켓으로 데이터 보내고
[이 책의 내용]
ㆍ 네트워크 게임의 태동과 그 진화 과정
ㆍ 인터넷 표준과 프로토콜을 게임 개발에 사용하기
ㆍ 멀티플레이어 게임 구현에 가장 널리 이용되는 버클리 소켓 다루기
ㆍ 인터넷 전송에 효율적인 게임 데이터 포맷 정하기
ㆍ 모든 플레이어가 같은 세계를 공유하도록 게임 상태 동기화하기
ㆍ 대규모 게임 구성을 위해 네트워크 토폴로지 조직하기
ㆍ 지연 및 데이터 손실을 초래하는 레이턴시와 지터링 문제 해결하기
ㆍ 게임 서버의 규모가 대형화될 때 성능 문제 해결하기
ㆍ 보안 취약점과 소프트웨어 치트...
[이 책의 내용]
ㆍ 네트워크 게임의 태동과 그 진화 과정
ㆍ 인터넷 표준과 프로토콜을 게임 개발에 사용하기
ㆍ 멀티플레이어 게임 구현에 가장 널리 이용되는 버클리 소켓 다루기
ㆍ 인터넷 전송에 효율적인 게임 데이터 포맷 정하기
ㆍ 모든 플레이어가 같은 세계를 공유하도록 게임 상태 동기화하기
ㆍ 대규모 게임 구성을 위해 네트워크 토폴로지 조직하기
ㆍ 지연 및 데이터 손실을 초래하는 레이턴시와 지터링 문제 해결하기
ㆍ 게임 서버의 규모가 대형화될 때 성능 문제 해결하기
ㆍ 보안 취약점과 소프트웨어 치트에 대응하기
ㆍ 언리얼 4와 유니티 게임 엔진의 네트워크 기능 활용하기
ㆍ 매치 메이킹, 도전과제, 리더보드 등 게임 플랫폼 서비스에 연동하기
ㆍ 클라우드 환경에서 게임 서버 구동하기
[관련 도서]
[프로그래머를 위한 선형대수]
[게임을 움직이는 수학과 물리]
[3D 게임을 움직이는 수학과 물리]
[인프라 엔지니어의 교과서]
[옮긴이의 말]
이 책을 펼친 여러분이라면 틀림없이 누군가와 멀티플레이어 게임을 하면서 즐거운 시간을 보낸
경험이 있으실 겁니다. 그간 엄청나게 많은 게임이 세상에 선보였고 또 사라져 갔지만, 게이머들
에게 선택받고 오래 사랑받는 작품이 되기 위한 중요한 조건으로, 멋지게 구현된 멀티플레이만 한 게 또 있을까요.
한편 개발자로서 우리는 다양한 상용