Ознакомление с процессом разработки игры в 3D-графике с определенным игровым процессом и возможностью взаимодействия по сети. Описание библиотеки DirectX. Рассмотрение основных правил и руководства пользователя разрабатываемого компьютерного приложения.
Все, кто имеет дело с компьютером, так или иначе сталкивались с компьютерными играми, и подавляющее большинство может сходу назвать несколько игр, которые им особенно понравились. Когда можно слить воедино сценарий, графику, музыку, искусно задуманный и умело запрограммированный алгоритм - создать единый фантастический мир, живущий по законам, которые ты же для него и придумал. Разработчики, ввиду обостряющейся конкуренции старающиеся предложить пользователям все максимально качественное и красивое (читай ресурсоемкое), стимулируют развитие рынка комплектующих ПК для конечного пользователя, а также дают "покупочную" мотивацию многим потребителям.Перед тем как приступить к описанию теоретической части, необходимо ввести некоторые понятия, используемые в компьютерной графике и необходимые для создания приложения: Объекты в трехмерном пространстве позиционируются в трехмерной системе координат (в данной работе - левосторонней Декартовой системе координат). Как правило, один объект содержит в себе вершинный и индексный буферы, текстуру и материал. Вершина - это базовый элемент трехмерного мира, описывающийся положением (координатами) в трехмерной системе координат, нормалью к полигону, составной частью которого является вершина и текстурными координатами. Полигон - геометрический примитив, задающий количество последовательно соединяемых вершин не лежащих на одной прямой. Текстурные координаты - определяют соответствие между текселями текстуры и пикселями поверхности полигона, на который эта текстура будет отображена.Требуется разработать программное приложение, представляющее собой игру в 3D графике с определенным игровым процессом и возможностью взаимодействия по сети. Реализовать ряд визуальных эффектов. Приложение должно содержать: · Меню с возможностью выбора создания сервера или клиента, а также выбор уровня.Первоочередной задачей для реализации задуманного является выбор графической библиотеки, способной обеспечить требуемые функциональные возможности программного средства. OPENGL (Open Graphics Library - открытая графическая библиотека, графическое API) - спецификация, определяющая независимый от языка программирования кросс-платформенный программный интерфейс для написания приложений, использующих двумерную и трехмерную компьютерную графику. OPENGL ориентируется на следующие две задачи: Скрыть сложности адаптации различных 3D-ускорителей, предоставляя разработчику единый API. Скрыть различия в возможностях аппаратных платформ, требуя реализации недостающей функциональности с помощью программной эмуляции. С одной стороны, императивный подход требует от программиста глубокого знания законов трехмерной графики и математических моделей, с другой стороны - дает свободу внедрения различных инноваций.DIRECTX - совокупность технологий, разработанных корпорацией Microsoft с целью превратить Windows в оптимальную платформу для мультимедийных приложений и компьютерных игр с полноцветной графикой, видео, трехмерной анимацией и объемным звуком. DIRECTX дает возможность разработчикам игровых программ и приложений мультимедиа создавать продукты, не привязанные жестко к тем или иным аппаратным средствам, пользователи же могут приобретать игры и программы мультимедиа для Windows, не беспокоясь об их несовместимости с аппаратурой своего компьютера. Каждую программу разработчикам приходилось комплектовать множеством видео-и аудиодрайверов (с тем, чтобы охватить как можно больше установленных у пользователей аппаратных компонентов) и при этом применять расширители DOS для преодоления барьера в 640 Кбайт. Пытаясь поправить ситуацию, Microsoft разработала для создателей компьютерных игр и графических приложений технологию WING, которая обеспечивала более быстрое выполнение графических операций, чем интерфейс GDI (Graphics Device Interface) Windows. Технология DIRECTX, теперь уже версии 11.0, позволяет программистам создавать в Windows приложения со встроенным доступом к аппаратным средствам.На рисунке 2.1 показана упрощенная модель графического конвейера, которая условно делится на две части: обработка геометрии и обработка фрагментов (пикселей). На первой стадии графического конвейера выполняется преобразование координат (применение мировой, видовой и проекционной матриц) вершины, перевод вершины в пространство отсечения, расчет освещения, применение материалов, определение цвета каждой вершины с учетом всех источников света и генерация текстурных координат. Растеризатор делит треугольник на фрагменты (пиксели), для которых интерполируются текстурные координаты и цвет. Затем для каждого фрагмента происходит выполнение следующих операций: проверка принадлежности пикселя, наложение текстур (заданные для фрагмента координаты текстуры определяют интерполированный цвет из элементов текстурного изображения - текселей, значение этого цвета комбинируется с цветом фрагмента), применение эффектов тумана, альфа-тест, тест шаблона (stencil-test), тест глубины, смешивание, дизеринг и логические операции.
План
Содержание
Введение
1. Постановка задачи
1.1Основные понятия
1.2Цель работы
2. Выбор средств разработки
2.1Обзор и выбор графической библиотеки
2.2Описание библиотеки DIRECTX
2.3Графический конвейер
2.4HLSL
2.5Обзор и выбор алгоритмов визуализации
3. Программная реализация
3.1Игровой процесс
3.2Организация приложения
3.3MENUSTRATEGY
3.4LEVELLOADERSTRATEGY
3.5GAMEPLAYSTRATEGY
3.6Визуализация
3.7Класс игрока
3.8Сетевое взаимодействие
3.9Система частиц
4. Руководство пользователя
5. Безопасность жизнедеятельности
5.1Характеристика вредных факторов при работе с ПК
5.2Размещение и оснащение рабочих мест с ПК
5.3Причина и профилактика зрительного утомления
5.4Пожарная безопасность
6. Оценка эффективности разработки
Заключение
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы