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

Использование класса звуковой системы в меню


Вы помните программу с меню игры Battle Armor, которую я описывал в 6 главе? Пришло время добавить к ней звуки и музыку. Откройте находящийся на компакт-диске проект с именем D3D_MenuSounds и следуйте за мной. Вместо того, чтобы вываливать на вас новые курганы кода, я просто проведу обзор внесенных изменений с высоты птичьего полета.

В файл Main.h я добавил директиву включения заголовочного файла класса звуковой системы. Кроме того, я создал глобальный объект класса звуковой системы и несколько объектов звуковых фрагментов. Все это показано на рис. 7.13.


Рис. 7.13. Структура реализации звуковой системы в заголовочном файле проекта D3D_MenuSounds

В файл Main.cpp были добавлены вызовы функций для инициализации звуковой системы, загрузки звуковых файлов и их воспроизведения. Данные изменения иллюстрирует рис. 7.14.


Рис. 7.14. Структура реализации звуковой системы в главном файле проекта D3D_MenuSoundsSound

Как видно на рис. 7.14 при инициализации звуковой системы происходит обращение к методу инициализации объекта звуковой системы. Затем этот же объект используется для загрузки звуковых файлов. Как только эти задачи выполнены, загруженные звуковые фрагменты можно воспроизводить, когда это потребуется.

Чтобы добавить воспроизведение файлов MP3 я просто скопировал в программу работы с меню функции bPlayTitleMusic(), vStopTitleMusic() и vCheckMusicStatus(). Эти действия и добавление вызова, начинающего воспроизведение музыки в код инициализации и составляют весь секрет трюка.

Если вы еще не сделали это, запустите программу D3D_MenuSounds и пощелкайте по разным кнопкам меню. Музыка MP3 воспроизводится в фоновом режиме, а при щелчке по некоторым кнопкам меню воспроизводится WAV-файл. Обратите внимание, что звук в WAV-файле достаточно тихий и вам, возможно, придется прислушаться, чтобы расслышать его на фоне музыки. Я советую вам попробовать поместить в программу свои собственные музыку и звуки (ха, вы можете добавить даже несколько звуков, чтобы закрепить полученные навыки).

Вот и все, что я собирался рассказать вам о реализации звукового сопровождения и воспроизведении MP3-файлов в программах. Конечно, есть еще масса вещей, которые придется учесть, например, определить какой звук воспроизводить и когда. Но об этом мы поговорим в другой раз.

netlib.narod.ru< Назад | Оглавление | Далее >



Содержание раздела