Multiplayer Game Programming: Architecting Networked Games (Game Design)
Networked multiplayer games are a multibillion dollar business: some games now attract tens of millions of players. In this practical, code-rich guide, Joshua Glazer and Sanjay Madhav guide you through every aspect of engineering them. Drawing on their immense experience as both game developers and instructors, the authors lead you through building a robust multiplayer architec...
Networked multiplayer games are a multibillion dollar business: some games now attract tens of millions of players. In this practical, code-rich guide, Joshua Glazer and Sanjay Madhav guide you through every aspect of engineering them. Drawing on their immense experience as both game developers and instructors, the authors lead you through building a robust multiplayer architecture, and creating every engine-level system. You’ll learn through in-depth working code examples for two complete games: an action game and a real time strategy (RTS) game.
First, Madhav and Glazer review the essentials of networking and network programming from the standpoint of game developers. Next, they walk through managing game data transmission, updating game objects across the network, and organizing the devices that join your game. You’ll learn how to ensure reliable performance despite the Internet’s inherent inconsistencies, and how to design game code for maximum security and scalability. The authors conclude by addressing two increasingly crucial issues: incorporating gamer services and hosting your games in the cloud.
This guide’s content has been extensively tested through the authors’ multiplayer game programming courses at USC. It is equally valuable both to students and to working game programmers moving into networked games.
Coverage includes
How games have evolved to meet the challenges of networked environments Using Internet communication protocols and standards in game development Working with Berkeley Socket, the most widely used networking construct in multiplayer gaming Formatting game data for efficient Internet transmission Synchronizing states so all players share the same world Organizing networking topologies for large-scale games Overcoming latency and jitter problems that cause delays or lost data Scaling games without compromising performance Combating security vulnerabilities and software cheats Leveraging the networking functionality of the popular Unreal 4 and Unity game engines Integrating gamer services such as matchmaking, achievements, and leaderboards Running game servers in the cloud
About the Website C++ source code for all examples is available at github.com/MultiplayerBook . Instructors will also find a full set of PowerPoint slides and a sample syllabus.
Joshua Glazer是Naked Sky Entertainment的CTO和创始人之一。Naked Sky Entertainment是一个游戏开发工作室,开发了很多游戏,如RoboBlitz、MicroBot、Twister Mania和手机端游戏Max Axe、Scrap Force。他为许多项目提供咨询,包括Epic Games公司的《虚幻引擎》(Unreal Engine)、Riot Games公司的《英雄联盟》(League of Legends)、THQ公司《毁灭全人类》(Destroy All Humans),还包括艺电(Electronic Arts)、Midway、微软(Microsoft)和派拉蒙电影公司(Paramount Pictures)等公司的很多项目。Joshua也是南加州大学(USC)的兼职讲师,讲授多人游戏编...
Joshua Glazer是Naked Sky Entertainment的CTO和创始人之一。Naked Sky Entertainment是一个游戏开发工作室,开发了很多游戏,如RoboBlitz、MicroBot、Twister Mania和手机端游戏Max Axe、Scrap Force。他为许多项目提供咨询,包括Epic Games公司的《虚幻引擎》(Unreal Engine)、Riot Games公司的《英雄联盟》(League of Legends)、THQ公司《毁灭全人类》(Destroy All Humans),还包括艺电(Electronic Arts)、Midway、微软(Microsoft)和派拉蒙电影公司(Paramount Pictures)等公司的很多项目。Joshua也是南加州大学(USC)的兼职讲师,讲授多人游戏编程和游戏引擎开发。
Sanjay Madhav是南加州大学(USC)的gao级讲师,讲授游戏编程、游戏引擎、数据结构和编译器知识。他在艺电(Electronic Arts)、Neversoft和Pandemic Studio做过开发zhe,涉足的游戏有《荣誉勋章:血战太平洋》(Medal of Honor: Pacific Assault)、《托尼霍克极限滑板8》(Tony Hawk's Project 8)、《指环王:征服》(Lord of the Rings: Conquest)和《破坏者》(The Saboteur)等。他也是《Game Programming Algorithms and Techniques》的作者之一。