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

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

Shutdown (); supprimer effet; } RandomSounds.clear ();
 Moteurs-> drop (); InitialiseVariables ();} 

Tout comme le WeaponDatabase, l'IrrKlangEngineManager contient une collection d'objets, objets RandomSoundEffect dans ce cas, et va tenter de retourner un l'un utilisé de la piscine quand un objet est demandé par la fonction GetRandomSoundEffect, ou allons- créer un nouveau RandomSoundEffect, l'ajouter à la piscine, puis le retourner

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

begin ();. iter = randomSounds!. end (); ++ iter) {* RandomSoundEffect effet = * iter; if (! effect-> isStarted ()) revenir effet; } * RandomSoundEffect effet = new RandomSoundEffect (); randomSounds.push_back (effet); retourner effet;}

Afin de jouer un effet sonore nous appelons la fonction play2D du moteur sonore IrrKlang. La classe Bullet utilise cette fonction pour jouer un effet sonore à chaque fois qu'une balle est tirée

 float Bullet :: démarrage (const Vector3 position &) {Arme :: démarrage (position).; this-> billboardSet = GAMELEVEL.

GetSceneManager () -> createBillboardSet (Utilities :: GetUniqueName ("BillboardSet"), 1); this-> billboardSet-> setMaterialName ("Bullet"); this-> panneau = billboardSet-> createBillboard (Vector3 :: ZERO, couleur); this-> weaponSceneNode-> AttachObject (billboardSet); this-> weaponSceneNode-> échelle (BULLET_SCALE, BULLET_SCALE, BULLET_SCALE); IRRKLANGENGINEMANAGER.

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

Comme il a été mentionné précédemment, la classe RandomSoundEffect est utilisé pour reproduire des effets sonores ambiants à des intervalles aléatoires à travers le niveau. Il fonctionne par assis dans le fond, et chaque seconde il déterminera hasard si elle devrait jouer un effet sonore, basée sur une fréquence qui est fourni à la fonction de démarrage. Une fréquence de 10 signifie que chaque seconde il ya un 1 chance sur 10 de l'effet sonore sera joué

RandomSoundEffect.

h

 /* * * * RandomSoundEffect.h Auteur:. Matthew Casperson * Email: [email protected] * Site Web: https://www.brighthub.com/hubfolio/matthew-casperson.aspx * /# ifndef RANDOMSOUNDEFFECT_H_ # définir RANDOMSOUNDEFFECT_H_ # in

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