*   >> Lectura Educación Artículos >> science >> programación

Hacer un juego en 3D con Ogre - Adición de sonido Effects

Apagar (); eliminar el efecto; } RandomSounds.clear ();
 Motor-> drop (); InitialiseVariables ();} 

Al igual que el WeaponDatabase, el IrrKlangEngineManager contiene una colección de objetos, objetos RandomSoundEffect en este caso, e intentará volver uno no utilizada de la piscina cuando se solicita un objeto a través de la función GetRandomSoundEffect, o lo hará crear un nuevo RandomSoundEffect, añadirlo a la piscina, y luego devolverlo

 RandomSoundEffect * IrrKlangEngineManager :: GetRandomSoundEffect () {for (RandomSoundEffectList :: const_iterator iter = randomSounds.

begin ();. iter = randomSounds!. end (); ++ iter) {RandomSoundEffect * Efecto = * iter; if (! efecto-> IsStarted ()) Efecto de regreso; } RandomSoundEffect * Efecto = new RandomSoundEffect (); randomSounds.push_back (efecto); efecto de retorno;}

Con el fin de reproducir un efecto de sonido que llamamos la función play2D del motor de sonido IrrKlang. La clase Bullet utiliza esta función para reproducir un efecto de sonido cada vez que se dispara una bala

 float Bullet :: inicio (const Vector3 y posición) {Arma :: inicio (posición).; this-> billboardset = GAMELEVEL.

GetSceneManager () -> createBillboardSet (Utilidades :: GetUniqueName ("billboardset"), 1); this-> billboardSet-> setMaterialName ("Bullet"); this-> cartelera = billboardSet-> createBillboard (Vector3 :: CERO, color); this-> weaponSceneNode-> attachObject (billboardset); this-> weaponSceneNode-> escala (BULLET_SCALE, BULLET_SCALE, BULLET_SCALE); IRRKLANGENGINEMANAGER.

GetSoundEngine () -> play2D (BULLET_SOUNDFX); volver timeBetweenShots;}

Como se mencionó anteriormente, la clase RandomSoundEffect se utiliza para reproducir los efectos de sonido ambiental a intervalos aleatorios en todo el nivel. Su acción consiste en sentarse en el fondo, y cada segundo que determinará al azar si se debe jugar un efecto de sonido, con base en una frecuencia que se suministra a la función de inicio. Una frecuencia de 10 significa que cada segundo hay un 1 en 10 posibilidades se jugará el efecto de sonido

RandomSoundEffect.h

 /* * * RandomSoundEffect.h.

* Autor: Mateo Casperson * Email: [email protected] * Sitio web: https://www.brighthub.com/hubfolio/matthew-casperson.aspx * /# ifndef RANDOMSOUNDEFFECT_H_ # definir RANDOMSOUNDEFFECT_H

Page   <<  [1] [2] [3] >>
Copyright © 2008 - 2016 Lectura Educación Artículos,https://lectura.nmjjxx.com All rights reserved.