Программирование многопользовательских игр: проектирование сетевых игр (игровой дизайн) на русском
Multiplayer Game Programming: Architecting Networked Games (Game Design) (B0189RXWJQ)
Купить и скачать электронную книгу в форматах PDF, EPUB, FB2, MOBI
Josh Glazer | #258: Программирование компьютерных игр
Практическое руководство по созданию надежных сетевых многопользовательских игр
Многопользовательские сетевые игры — это многомиллиардный бизнес: некоторые игры сейчас привлекают десятки миллионов игроков. В этом практическом руководстве с большим количеством кода Джошуа Глейзер и Санджай Мадхав проведут вас через все аспекты их разработки. Опираясь на свой огромный опыт как разработчиков игр и преподавателей, авторы проведут вас через создание надежной многопользовательской архитектуры и разработку каждой системы на уровне движка. Вы будете учиться на подробных работающих примерах кода для двух полноценных игр: экшен-игры и стратегии в реальном времени (RTS).
Сначала Мадхав и Глейзер рассматривают основы работы с сетями и сетевого программирования с точки зрения разработчиков игр. Затем они подробно рассказывают об управлении передачей игровых данных, обновлении игровых объектов в сети и организации устройств, подключающихся к вашей игре. Вы узнаете, как обеспечить надежную работу, несмотря на присущие Интернету нестабильность, и как проектировать игровой код для максимальной безопасности и масштабируемости. В заключение авторы рассматривают два все более важных вопроса: интеграцию игровых сервисов и размещение игр в облаке.
Содержание данного руководства было тщательно протестировано в рамках курсов по программированию многопользовательских игр, проводимых авторами в Университете Южной Калифорнии. Оно одинаково полезно как для студентов, так и для работающих программистов, переходящих к разработке сетевых игр.
Покрытие включает в себя
- Как игры эволюционировали, чтобы соответствовать вызовам сетевой среды.
- Использование протоколов и стандартов интернет-коммуникаций в разработке игр.
- Работа с Berkeley Socket, наиболее распространенной сетевой инфраструктурой в многопользовательских играх.
- Форматирование игровых данных для эффективной передачи через Интернет.
- Синхронизация состояний, чтобы все игроки находились в одном и том же мире.
- Организация сетевых топологий для крупномасштабных игр
- Преодоление проблем с задержкой и дрожанием, которые приводят к задержкам или потере данных.
- Масштабирование игр без ущерба для производительности.
- Борьба с уязвимостями в системе безопасности и программным мошенничеством.
- Использование сетевых возможностей популярных игровых движков Unreal 4 и Unity.
- Интеграция игровых сервисов, таких как подбор игроков, достижения и таблицы лидеров.
- Запуск игровых серверов в облаке
О сайте. Исходный код на C++ для всех примеров доступен по адресу github.com/MultiplayerBook . Преподаватели также найдут там полный набор слайдов PowerPoint и пример программы курса.