21 #ifndef HEADER_SMOKE_HPP
22 #define HEADER_SMOKE_HPP
26 namespace scene {
class ISceneNode;
class IParticleEmitter; }
30 #include "utils/leak_check.hpp"
31 #include "utils/no_copy.hpp"
32 #include "utils/vec3.hpp"
51 scene::ISceneNode* m_parent;
59 unsigned int m_magic_number;
67 bool m_randomize_initial_y;
77 scene::ISceneNode* parent = NULL,
78 bool randomize_initial_y = false,
79 bool important = false);
81 virtual
void update (
float dt);
82 void setCreationRateAbsolute(
float fraction);
83 void setCreationRateRelative(
float f);
84 int getCreationRate();
85 float getCreationRateFloat() {
return m_min_rate;}
87 void setPosition(
const Vec3 &pos);
88 void setRotation(
const Vec3 &rot);
90 const ParticleKind* getParticlesInfo()
const {
return m_particle_type; }
94 void resizeBox(
float size);
101 void addHeightMapAffector(
Track* t);
103 bool randomizeInitialY()
const {
return m_randomize_initial_y; }
Definition: material.hpp:48
Utility class, you can inherit from this class to disallow the assignment operator and copy construct...
Definition: no_copy.hpp:26
manages smoke particle effects
Definition: particle_emitter.hpp:44
void unsetNode()
call this if the node was freed otherwise
Definition: particle_emitter.hpp:99
float m_min_rate
The irrlicht emitter contains this info, but as an int.
Definition: particle_emitter.hpp:65
STKParticle * m_node
STK particle systems.
Definition: particle_emitter.hpp:47
int m_emission_decay_rate
Decay of emission rate, in particles per second.
Definition: particle_emitter.hpp:62
scene::IParticleEmitter * m_emitter
The emitters.
Definition: particle_emitter.hpp:55
type of particles
Definition: particle_kind.hpp:42
Definition: stk_particle.hpp:39
Definition: track.hpp:115
A wrapper around bullets btVector3 to include conventient conversion functions (e....
Definition: vec3.hpp:35