*   >> Lecture Éducation Articles >> science >> la programmation

Faire un jeu 3D avec Ogre - Ajout de son Effects

clude "PersistentFrameListener.h« classe RandomSoundEffect: PersistentFrameListener {public: RandomSoundEffect (); RandomSoundEffect ~ (); annuler démarrage (std :: string filename, la fréquence de int); void shutdown (); bool frameStarted (const FrameEvent & EVT); protégé: InitialiseVariables void (); std :: string filename; fréquence int; flotter timeToNextCheck;}; # endif

RandomSoundEffect.cpp

 #include "RandomSoundEffect.h" #include "IrrKlangEngineManager.h" #include "stdlib.

h" RandomSoundEffect :: RandomSoundEffect () {InitialiseVariables () ;} RandomSoundEffect :: ~ RandomSoundEffect () {} vides RandomSoundEffect :: InitialiseVariables () {filename = ""; fréquence = 0; timeToNextCheck = 0;} RandomSoundEffect vide :: démarrage (std :: string filename, la fréquence de int) {PersistentFrameListener :: démarrage (); this-> nom = nom de fichier; this-> fréquence = fréquence;} vide RandomSoundEffect :: shutdown () {InitialiseVariables (); PersistentFrameListener :: shutdown ();} bool RandomSoundEffect :: frameStarted (const FrameEvent & EVT) {timeToNextCheck - = evt.

timeSinceLastFrame; si (timeToNextCheck play2D (filename.c_str ());} return true;.}

Enfin, le DotSceneLoader est modifié pour créer des objets RandomSoundEffect, nous permet de définir le niveau des effets sonores à partir du fichier XML Si aucun attribut de fréquence est livré , est supposé l'effet sonore à jouer en continu;..

sinon un objet est créé RandomSoundEffect Vous pouvez afficher le fichier XML fourni avec la démo pour voir comment cela est mis en œuvre

La démo fait usage de la nouvelle possibilité de jouer Effets sonores en ajoutant un certain nombre ambiantes bruits comme une boucle continue d'un effet de pluie sonore, et un certain nombre d'effets sonores du tonnerre aléatoire Un système pluie de particules a également été ajouté -. l'DotSceneLoader avait déjà la possibilité d'ajouter un système de particules, cette ne nécessite aucune modification de code.


Page   <<  [1] [2] [3] 
Copyright © 2008 - 2016 Lecture Éducation Articles,https://lecture.nmjjxx.com All rights reserved.