*   >> Чтение Образование Статьи >> science >> programming

Создание игры 3D с Огре - Добавление звука Effects

<р> Скачать демо и исходники ДЛЯ WINDOWS

<р> Скачать демо и исходники для Linux

<р> вернуться на главную учебник

< р> Ogre не имеет поддержки для звуков - это графический рендеринг только двигатель. Звуковые эффекты в игре будет любезно предоставлены звука двигателя IrrKlang, который сделан ребятами, которые сделали Irrlicht 3D-движок. IrrKlang является твердой двигатель, и мы будем иметь, чтобы сделать очень мало, чтобы получить его и работает.

<Р> Мы обернуть двигатель IrrKlang в класс вызова IrrKlangEngineManager.

Это очень тонкая обертка, что в основном начинается звуковой движок, выставляет так звуковой эффект может быть воспроизведен, и очищает его. Кроме того IrrKlangEngineManager будет поддерживать ссылки на все случаи RandomSoundEffect, который является классом, который мы создадим, чтобы добавлять случайные шумы окружающей среды на уровне.

IrrKlangEngineManager.h

 /* * IrrKlangEngineManager .h * * Автор: Мэтью Касперсон * E-mail: * Веб-сайт [email protected]: https://www.brighthub.com/hubfolio/matthew-casperson.

aspx * /# IfNDef IRRKLANGENGINEMANAGER_H_ # определить IRRKLANGENGINEMANAGER_H_ # включить "список" # включают в себя "irrKlang.h" #include "RandomSoundEffect.h" ЬурейеЕ STD :: список RandomSoundEffectList; использование имен irrklang; #define IRRKLANGENGINEMANAGER IrrKlangEngineManager :: Экземпляр () класса IrrKlangEngineManager {общественности: ~ IrrKlangEngineManager (); статическая IrrKlangEngineManager & экземпляра () {статического экземпляра IrrKlangEngineManager; вернуться экземпляр; } Недействительным запуска (); Выключение недействительными (); ISoundEngine * GetSoundEngine () {возвращение строительства двигателя;} RandomSoundEffect * GetRandomSoundEffect (); защищены: IrrKlangEngineManager (); недействительными InitialiseVariables (); ISoundEngine * двигатель; RandomSoundEffectList randomSounds;}; # ENDIF <р> IrrKlangEngineManager.

cpp

 #include "IrrKlangEngineManager.h" IrrKlangEngineManager :: IrrKlangEngineManager () {InitialiseVariables ();} IrrKlangEngineManager :: ~ IrrKlangEngineManager () {} недействительным IrrKlangEngineManager: :. InitialiseVariables () {двигателя = NULL;} <р> Функция запуска инициализирует двигатель IrrKlang, и сохраняет указатель на него 

 недействительным IrrKlangEngineManager :: Ввод в эксплуатацию () {двигателя = createIrrKlangDevice ();} < P> Функция отключения выключается и удаляет все объекты RandomSoundEffect и разрушает звуко

Page   <<       [1] [2] [3] >>
Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.