Motor-> dråpe (); InitialiseVariables ();}Akkurat som WeaponDatabase inneholder IrrKlangEngineManager en samling av gjenstander, RandomSoundEffect objekter i denne saken, og vil forsøke å returnere en ubrukt en fra bassenget når et objekt er forespurt gjennom GetRandomSoundEffect funksjon, eller vil opprette en ny RandomSoundEffect, legge det til bassenget, og deretter returnere den
RandomSoundEffect * IrrKlangEngineManager :: GetRandomSoundEffect () {for (RandomSoundEffectList :: const_iterator ITER = randomSounds.begin ();. ITER = randomSounds!. end (); ++ ITER) {RandomSoundEffect * effekt = * ITER; if (! effekt-> IsStarted ()) returnerer effekt; } RandomSoundEffect * effekt = new RandomSoundEffect (); randomSounds.push_back (effekt); returnere effekt;}
For å spille en lydeffekt vi kaller play2D funksjonen fra IrrKlang lydprosessor. The Bullet klassen bruker denne funksjonen til å spille av en lyd effekt når en kule er avfyrt
float Bullet :: Startup (konst Vector3 & stilling) {Weapon :: Startup (posisjon).; this-> billboardSet = GAMELEVEL.GetSceneManager () -> createBillboardSet (Utilities :: GetUniqueName ("BillboardSet"), 1); this-> billboardSet-> setMaterialName ("Bullet"); this-> billboard = billboardSet-> createBillboard (Vector3 :: ZERO, farge); this-> weaponSceneNode-> attachObject (billboardSet); this-> weaponSceneNode-> skala (BULLET_SCALE, BULLET_SCALE, BULLET_SCALE); IRRKLANGENGINEMANAGER.GetSoundEngine () -> play2D (BULLET_SOUNDFX); returnere timeBetweenShots;}
Som nevnt tidligere, RandomSoundEffect klassen brukes til å spille av lydeffektene på tilfeldige intervaller gjennom nivået.
Det fungerer ved å sitte i bakgrunnen, og hvert sekund vil det tilfeldig avgjøre om det bør spille en lydeffekt, basert på en frekvens som er levert til oppstartsfunksjonen. En frekvens på 10 betyr at hvert sekund er det en 1 i 10 sjanse lydeffekten vil bli spilt
RandomSoundEffect.h
/* * RandomSoundEffect.h * * Forfatter:. Matthew Casperson * E-post: [email protected] * Nettside: https://www.brighthub.com/hubfolio/matthew-casperson.aspx * /# ifndef RANDOMSOUNDEFFECT_H_ # definere RANDOMSOUNDEFFECT_H_ # include "PersistentFrameListener.h" class RandomSoundEffect: public PersistentFrameListener {public: RandomSoundEffect (); ~ RandomSoundEffect (); ugyldig Startup (s
Ny funksjon av Adobe Flash CS4
- C ++ - Ta tyren ved hornene
- PHP-funksjonen Basics
- Å gjøre en Space Invaders-klone med taste - Den første fiende
- Pakker og Subtyper
- Windows List Box Notifications
- Virus Programmering: Batch File programmering
- C Pointers
- Hvordan planlegge Out Rutiner for en strukturert Computer Program
- Forhåndsdefinerte Unntak Object i Php
- Nybegynnere guide til c ++