timeToLive = particleSystem-> getEmitter(0) -> getDuration () + particleSystem-> getEmitter
(0) -> getTimeToLive ();.} Void ParticleSystemEffect :: avstängning ( ) {sceneNode-> detachObject (particleSystem); GAMELEVEL.GetSceneManager () -> destroyParticleSystem (particleSystem); GAMELEVEL.
GetPlayerSceneNode () -> removeAndDestroyChild (sceneNode-> getName ()); InitialiseVariables (); PersistentFrameListener :: avstängning ();} void ParticleSystemEffect :: InitialiseVariables () {timeToLive = 0; sceneNode = NULL; particleSystem = null;.}
FrameStarted funktionen räkna ner timeToLive variabeln, och när den når noll avstängning funktionen kallas, ta bort partikelsystemet från nivån Omdömen
bool ParticleSystemEffect :: FrameStarted (konst FrameEvent & evt) {timeToLive - = evt.timeSinceLastFrame; if (timeToLive
Precis som fiender, vapen och andra föremål som svarar på Ogre ram händelser finns ParticleSystemEffect objekt i en pool, med dem som har avslutat vara i ett svävande tillstånd tills de återanvänds. Den ParticleSystemEffectManager klassen upprätthåller denna pool av ParticleSystemEffect objekt. Koden för att skapa ParticleSystemEffect objekt, lagra dem i en pool och returnera oanvända objekt är densamma som den motsvarande koden i WeaponDatabase och EnemyDatabase klasser.
I själva verket ParticleSystemEffectManager klassen gör ingenting men behålla denna pool av ParticleSystemEffect objekt.
ParticleSystemEffectManager.h Omdömen
/* * ParticleSystemEffectManager.h * * Författare: Matthew Casperson * Email: [email protected] * Hemsida: https://www.brighthub.com/hubfolio/matthew -casperson.aspx * /# ifndef PARTICLESYSTEMEFFECTMANAGER_H_ # definierar PARTICLESYSTEMEFFECTMANAGER_H_ # include "ParticleSystemEffect.h" #include "lista" typedef std :: lista ParticleSystemEffectList, #define PARTICLESYSTEMEFFECTMANAGER ParticleSystemEffectManager :: instansrätten () klass ParticleSystemEffectManager {public: ~ ParticleSystemEffectManager (); statisk ParticleSystemEffectManager & instansrätten () {statisk ParticleSystemEffectManager instans; retur exempel; } Void start (); void avstängning (); ParticleSystemEffect * GetParticleSystemEffect (); skyddad: ParticleSystemEffectManager (); ParticleSystemEffect * CreatePa
iPhone Ringa ett telefonnummer Del 1
- Genomförande Databas i Sybase
- Pass SCJP exam
- Att få klarhet för Team Arbeta med Sharepoint Web Parts
- Hyra DotNetNuke utvecklare för Custom DNN Development
- Pekare till medlems Operatörer i C ++
- Windows Presentation Foundation (WPF)
- Fastställande Primär Keys I databasen Entities
- Heltal och flyter på Objekttyper i C ++
- Databas Design
- Variabler som Synonymer i Php
Att bygga din allra första C # …