19 #ifndef HEADER_SMOKE_HPP 20 #define HEADER_SMOKE_HPP 24 namespace scene {
class ISceneNode;
class IParticleEmitter; }
28 #include "utils/leak_check.hpp" 29 #include "utils/no_copy.hpp" 30 #include "utils/vec3.hpp" 49 scene::ISceneNode* m_parent;
57 unsigned int m_magic_number;
65 bool m_randomize_initial_y;
75 scene::ISceneNode* parent = NULL,
76 bool randomize_initial_y = false,
77 bool important = false);
79 virtual
void update (
float dt);
80 void setCreationRateAbsolute(
float fraction);
81 void setCreationRateRelative(
float f);
82 int getCreationRate();
83 float getCreationRateFloat() {
return m_min_rate;}
85 void setPosition(
const Vec3 &pos);
86 void setRotation(
const Vec3 &rot);
88 const ParticleKind* getParticlesInfo()
const {
return m_particle_type; }
92 void resizeBox(
float size);
99 void addHeightMapAffector(
Track* t);
101 bool randomizeInitialY()
const {
return m_randomize_initial_y; }
type of particles
Definition: particle_kind.hpp:41
Definition: script_track.cpp:471
A wrapper around bullets btVector3 to include conventient conversion functions (e.g.
Definition: vec3.hpp:34
scene::IParticleEmitter * m_emitter
The emitters.
Definition: particle_emitter.hpp:53
Definition: three_d_animation.hpp:32
void unsetNode()
call this if the node was freed otherwise
Definition: particle_emitter.hpp:97
Definition: stk_particle.hpp:32
Utility class, you can inherit from this class to disallow the assignment operator and copy construct...
Definition: no_copy.hpp:25
STKParticle * m_node
STK particle systems.
Definition: particle_emitter.hpp:45
Definition: material.hpp:47
float m_min_rate
The irrlicht emitter contains this info, but as an int.
Definition: particle_emitter.hpp:63
Definition: script_track.cpp:52
int m_emission_decay_rate
Decay of emission rate, in particles per second.
Definition: particle_emitter.hpp:60