Аннотация 2
Введение 4
1 Анализ предметной области 5
1.1 Постановка задачи 5
1.2 Анализ инструментов для разработки 5
1.3 Вывод 9
2 Проектирование игры 11
2.1 Концепция игры 11
2.2 Общая программная структура 18
2.3 Концепция сетевого модуля 24
2.4 Программная структура сетевого модуля 25
2.5 Вывод 33
3 Разработка игры 34
3.1 Структура и состав проекта 34
3.2 Подробное описание алгоритма 38
3.2.1 Основной класс (Glb) 38
3.2.2 Сетевые классы (NetShared, NetServer, NetClient) 42
3.2.3 Вспомогательные классы (env, g_*, fetchserver) 58
3.2.4 Текстовые уведомления (notifier) 60
3.2.5 Классы главного и игрового меню 62
3.2.6 Игровая логика и игровой интерфейс 67
3.2.7 Игровая арена 78
3.3 Инструкция по сборке 79
3.4 Демонстрация разработанной игры 83
3.5 Вывод 86
Заключение 87
Список использованных источников 88
Современная индустрия развлечений находится в состоянии постоянного, беспрерывного развития. Корпорации финансируют разные проекты в стадии зачатия, покупают и перепродают их, в надежде, что в конце концов некоторые из них перевернут всю индустрию с ног на голову, а значит и принесут крупную прибыль, вернут должное инвесторам. Одно из наиболее активных, прибыльных и при этом затратных видов развлечений являются компьютерные игры.
С таким крупным оборотом денег и огромным числом заинтересованных лиц, игровая индустрия должна была разработать некоторый стандартизированный вид, что и произошло. В основе средней компьютерной игры ложится ряд принципов, реализующихся в соответствующем этой средней игре игровом движке. Так как игровой движок реализует все эти стандарты, его можно использовать для разработки разных игр, однако одни игровые движки более специализированные, чем другие. Некоторые из них заточены под определенный жанр игр, другие представляют собой всеохватывающий комплекс инструментов для разработки игры любого жанра. Эти фундаментальные особенности можно реализовывать самостоятельно, то есть, можно создать собственный игровой движок, а можно просто прибегнуть к уже готовому движку для корпоративной и любительской разработки компьютерных игр.
Несмотря на постоянное развитие, сетевые компоненты компьютерных игр, работающих и играющихся в реальном времени, по сей день прибегают к архитектурам, которые были разработаны и доведены до ума в конце девяностых и в начале нулевых. Как показала многолетняя практика, клиент- серверной архитектуры с рассылкой снимков игрового мира достаточно для большей части экшн-ориентированных компьютерных игр.
В результате выполнения выпускной квалификационной работы была реализована сетевая компьютерная игра типа «шутер», цель достигнута, задачи решены.
Перечень решенных задач:
• Анализ предметной области, постановка задачи и выбор инструментов для разработки;
• Проектирование игры, ее игровой части ее сетевого модуля;
• Разработка игры.