Программирование стратегических игр с DirectX 9.0


             Источник: https://novostiu.ru   

Программирование стратегических игр с DirectX 9.0


Геометрия используемая для двухмерной визуализации в трехмерном пространстве
Загрузка текстур

Функция vRender()
Функция vDrawInterfaceObject()
Отображение текстуры в трехмерном пространстве на экране
Расположение текстур на титульном экране
Горячие точки или как я научился любить щелчки мыши
Обнаружение активных зон
Окно программы D3D_MouseZones
Архитектура проекта D3D_MouseZones
Заголовочный файл Main h
Глобальные данные активных зон

Файл программы Main cpp
Функция WinMain()
Первый экран программы D3D_MouseZones
Функция vSetupMouseZones()
Функция MouseZoneClass vFreeZones()
Функция MouseZoneClass vInitialize()
Функция MouseZoneClass iAddZone()
Функция vCheckInput()
Управление щелчками мыши
Вычисление смещения клиентской области окна на рабочем столе

Различия между клиентской областью и пространством рабочего стола
Перемещение окна на рабочем столе
Вычисление местоположения указателя мыши
Функция MouseZoneClass bCheckZones()
Обнаружение сообщений кнопок мыши
Выход из программы
Динамическое отображение меню
Заголовочный файл MouseZoneClass h
Структура данных stHotSpot
Взаимосвязь между структурой данных и активной зоной

Закрытые члены данных класса MouseZoneClass
Функции класса MouseZoneClass
Файл MouseZoneClass cpp
Функция MouseZoneClass MouseZoneClass()
Функция MouseZoneClass ~MouseZoneClass()
Функция MouseZoneClass vInitialize()
Функция MouseZoneClass vFreeZones()
Функция MouseZoneClass iAddZone()
Функция MouseZoneClass iRemoveZone()
Функция MouseZoneClass bCheckZones()

Подсветка пунктов меню
Архитектура проекта D3D_MouseZoneHighlights
Заголовочный файл Main h
Главное меню с подсветкой кнопки Options
Файл программы Main cpp
Как определить подсвечиваемую активную зону
Как создать подсвечиваемую активную зону
Как отобразить подсветку активной зоны
Изображения меню для реализации подсветки
Итоги

Звуковые API
Архитектура DirectMusic
Загрузчик DirectMusic
Исполнитель DirectMusic
Сегменты DirectMusic
Как воспроизвести файл WAV
Проект DMusic_PlaySound
Поток выполнения программы DMusic_PlaySound
Заголовочный файл Main h
Этапы инициализации DirectMusic

Функция vPlaySound()
Воспроизведение звука
Как воспроизвести файл MIDI
Окно программы DMusic_PlayMIDI
Как воспроизвести файл MP3
Окно программы DShow_PlayMP3
DirectShow
Проект DShow_PlayMP3
Заголовочный файл Main h
Граф фильтров

Граф фильтров MP3
Управление аудиовизуальным потоком
События аудиовизуального потока
Позиционирование аудиовизуального потока
Файл программы Main cpp
Функция bPlayTitleMusic()
Инициализация DirectShow
Этапы инициализации DirectShow
Загрузка музыкального файла
Установка темпа воспроизведения

Воспроизведение музыки
Перехват фоновых событий
Функция vCheckMusicStatus()
Проверка кода события
Остановка музыки
Перемотка музыки
Запуск музыки
Поток исполнения программы воспроизведения MP3
Реализация классов звуковой системы
Класс звуковой системы

Структура класса звуковой системы
Определение класса звуковой системы
Определение класса звукового фрагмента
Взаимодействие класса звуковой системы и класса звукового фрагмента
Реализация класса звуковой системы
Деструктор SoundSystem ~SoundSystem()
Функция SoundSystem hrInitSoundSystem()
Функция SoundSystem hrLoadSound()
Функция SoundSystem hrPlaySound()
Реализация класса звукового фрагмента

Взаимодействие объектов классов звуковой системы и звукового фрагмента
Пример использования класса звуковой системы
Окно программы DSound_SoundSystem
Инициализация класса звуковой системы
Воспроизведение звуковых фрагментов
Работа программы использующей класс звуковой системы
Использование класса звуковой системы в меню
Структура реализации звуковой системы в заголовочном файле проекта D3D_MenuSounds
Структура реализации звуковой системы в главном файле проекта D3D_MenuSoundsSound
Итоги

Проектирование подразделений
Название подразделения
Способ передвижения
Передвижение по земле
Передвижение по воздуху
Передвижение по воде
Полеты в космосе
Скорость передвижения
Скороость передвижения
Тип атаки

Два типа подразделений используют один тип атаки
Тип защиты
Два подразделения с различными типами защиты
Содержание