82 void Update(Ogre::Real time_elapsed);
A particle emitter.
Definition: ParticleEmitter.h:27
A particle renderer.
Definition: ParticleRenderer.h:28
A particle system.
Definition: ParticleSystem.h:26
A particle technique.
Definition: ParticleTechnique.h:28
bool particle_emitter_pool_increased_
Indicates if the particle emitte quota has been increased.
Definition: ParticleTechnique.h:205
void EmissionChange()
Marks all emitters as emittables.
Definition: ParticleTechnique.cpp:219
ParticleTechnique()
Constructor.
Definition: ParticleTechnique.cpp:23
ParticleRenderer * renderer_
The technique renderer.
Definition: ParticleTechnique.h:175
int emitted_emitter_quota_
The particle emitter quota.
Definition: ParticleTechnique.h:200
int GetNumEmittableEmitters() const
Counts the number of emitters assigned to the techniques.
Definition: ParticleTechnique.cpp:213
void ExecuteEmitParticles(ParticleEmitter *emitter, int requested, Ogre::Real time_elapsed)
Initializes the particles of an emitter for emission.
Definition: ParticleTechnique.cpp:233
virtual ~ParticleTechnique()
Destructor.
Definition: ParticleTechnique.cpp:31
int visual_particle_quota_
The visual particle quota.
Definition: ParticleTechnique.h:180
int GetVisualParticlesQuota() const
Retrieves the visual particles quota.
Definition: ParticleTechnique.h:146
void SetRenderer(ParticleRenderer *renderer)
Sets the renderer for the technique.
Definition: ParticleTechnique.cpp:174
ParticleSystem * GetParentSystem() const
Retrieves the parent system.
Definition: ParticleTechnique.h:61
void CopyAttributesTo(ParticleTechnique *technique)
Copy the technique attributes to another technique.
Definition: ParticleTechnique.cpp:36
void DestroyAllEmitters()
Destroys all the technique's emitters.
Definition: ParticleTechnique.cpp:207
void DestroyRenderer()
Destroys the technique renderer.
Definition: ParticleTechnique.cpp:181
bool visual_particle_pool_increased_
Indicates if the visual particle quota has been increased.
Definition: ParticleTechnique.h:185
ParticleRenderer * CreateRenderer(const Ogre::String &renderer_type)
Creates a renderer.
Definition: ParticleTechnique.cpp:164
void ResetVisualParticles()
Locks all particles and removes all their additional data.
Definition: ParticleTechnique.cpp:266
ParticleSystem * parent_system_
The parent particle system.
Definition: ParticleTechnique.h:170
ParticlePoolMap< ParticleEmitter > particle_emitter_pool_
Particle emitter pool.
Definition: ParticleTechnique.h:210
void Update(Ogre::Real time_elapsed)
Updates the technique.
Definition: ParticleTechnique.cpp:111
std::vector< ParticleEmitter * > emitters_
List of particle emitters.
Definition: ParticleTechnique.h:215
ParticlePool< VisualParticle > visual_particles_pool_
The visual particle pool.
Definition: ParticleTechnique.h:190
std::vector< VisualParticle * > visual_particles_
List of visual particles.
Definition: ParticleTechnique.h:195
void AddEmitter(ParticleEmitter *emitter)
Adds a particle emitter to the technique.
Definition: ParticleTechnique.cpp:199
void SetParentSystem(ParticleSystem *parent_system)
Sets the parent system for the technique.
Definition: ParticleTechnique.h:52
void Initialize()
Initializes the tehnique.
Definition: ParticleTechnique.cpp:64
void UpdateRenderQueue(Ogre::RenderQueue *queue)
Adds the technique to the scene render queue.
Definition: ParticleTechnique.cpp:58
ParticleEmitter * CreateEmitter(const Ogre::String &emitter_type)
Creates a particle emitter for the technique.
Definition: ParticleTechnique.cpp:188
Ogre::String String
Definition: TypeDefine.h:37