#include <particleSystem.h>
Inheritance diagram for ParticleSystem:
Private Member Functions | |
bool | birth_particle (void) |
void | kill_particle (int pool_index) |
void | birth_litter (void) |
void | resize_pool (int size) |
PT (BaseParticleFactory) _factory | |
PT (BaseParticleEmitter) _emitter | |
PT (BaseParticleRenderer) _renderer | |
PT (PandaNode) _render_parent | |
PT (PandaNode) _render_node | |
PT (PandaNode) _spawn_render_node | |
void | spawn_child_system (BaseParticle *bp) |
ParticleSystem (const ParticleSystem ©) | |
~ParticleSystem (void) | |
INLINE void | set_pool_size (int size) |
INLINE void | set_birth_rate (float new_br) |
INLINE void | set_litter_size (int new_ls) |
INLINE void | set_litter_spread (int new_ls) |
INLINE void | set_local_velocity_flag (bool lv) |
INLINE void | set_system_grows_older_flag (bool sgo) |
INLINE void | set_system_lifespan (float sl) |
INLINE void | set_system_age (float age) |
INLINE void | set_active_system_flag (bool a) |
INLINE void | set_spawn_on_death_flag (bool sod) |
INLINE void | set_spawn_render_node (PandaNode *node) |
INLINE void | set_template_system_flag (bool tsf) |
INLINE void | set_render_parent (PandaNode *node) |
INLINE void | set_renderer (BaseParticleRenderer *r) |
INLINE void | set_emitter (BaseParticleEmitter *e) |
INLINE void | set_factory (BaseParticleFactory *f) |
INLINE int | get_pool_size (void) const |
INLINE float | get_birth_rate (void) const |
INLINE int | get_litter_size (void) const |
INLINE int | get_litter_spread (void) const |
INLINE bool | get_local_velocity_flag (void) const |
INLINE bool | get_system_grows_older_flag (void) const |
INLINE float | get_system_lifespan (void) const |
INLINE float | get_system_age (void) const |
INLINE bool | get_active_system_flag (void) const |
INLINE bool | get_spawn_on_death_flag (void) const |
INLINE PandaNode * | get_spawn_render_node (void) const |
INLINE bool | get_i_was_spawned_flag (void) const |
INLINE int | get_living_particles (void) const |
INLINE PandaNode * | get_render_parent (void) const |
INLINE BaseParticleRenderer * | get_renderer (void) const |
INLINE BaseParticleEmitter * | get_emitter (void) const |
INLINE BaseParticleFactory * | get_factory (void) const |
INLINE void | add_spawn_template (ParticleSystem *ps) |
INLINE void | clear_spawn_templates (void) |
INLINE void | render (void) |
INLINE void | induce_labor (void) |
void | update (float dt) |
Private Attributes | |
pdeque< int > | _free_particle_fifo |
int | _particle_pool_size |
int | _living_particles |
float | _birth_rate |
float | _tics_since_birth |
int | _litter_size |
int | _litter_spread |
float | _system_age |
float | _system_lifespan |
ParticleSystemManager * | _manager |
bool | _template_system_flag |
bool | _active_system_flag |
bool | _local_velocity_flag |
bool | _system_grows_older_flag |
bool | _spawn_on_death_flag |
pvector< PT(ParticleSystem) | _spawn_templates ) |
bool | _i_was_spawned_flag |
PUBLISHED | __pad0__: ParticleSystem(int pool_size = 0) |
Friends | |
class | ParticleSystemManager |
|
Definition at line 85 of file particleSystem.cxx. References _active_system_flag, _birth_rate, _i_was_spawned_flag, _litter_size, _litter_spread, _living_particles, _local_velocity_flag, _spawn_on_death_flag, _system_grows_older_flag, _system_lifespan, _tics_since_birth, and set_pool_size(). Referenced by spawn_child_system(). |
|
Definition at line 119 of file particleSystem.cxx. References _template_system_flag, and set_pool_size(). |
|
|
|
Definition at line 207 of file particleSystem.cxx. References _litter_size, _litter_spread, birth_particle(), and I_SPREAD. Referenced by update(). |
|
Definition at line 137 of file particleSystem.cxx. References _free_particle_fifo, _living_particles, _local_velocity_flag, _particle_pool_size, Physical::_physics_objects, NodePath::get_mat(), Physical::get_physical_node(), BaseParticle::init(), and BaseParticle::set_alive(). Referenced by birth_litter(). |
|
|
|
Referenced by ParticleSystemManager::do_particles(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Referenced by ParticleSystemManager::do_particles(). |
|
Referenced by ParticleSystemManager::do_particles(). |
|
Referenced by ParticleSystemManager::do_particles(). |
|
|
|
Definition at line 293 of file particleSystem.cxx. References _free_particle_fifo, _living_particles, Physical::_physics_objects, _spawn_on_death_flag, BaseParticle::die(), BaseParticle::set_alive(), and spawn_child_system(). Referenced by resize_pool(), and update(). |
|
|
|
|
|
|
|
|
|
|
|
Referenced by spawn_child_system(). |
|
Referenced by ParticleSystemManager::do_particles(). |
|
Definition at line 323 of file particleSystem.cxx. References _free_particle_fifo, _particle_pool_size, Physical::_physics_objects, BaseParticle::get_alive(), and kill_particle(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Referenced by ParticleSystem(), and ~ParticleSystem(). |
|
|
|
|
|
|
|
|
|
Referenced by ParticleSystemManager::do_particles(). |
|
|
|
|
|
|
|
Definition at line 229 of file particleSystem.cxx. References _manager, _spawn_templates, PandaNode::add_child(), ParticleSystemManager::attach_particlesystem(), PhysicsManager::attach_physical(), NodePath::get_mat(), PandaNode::get_num_parents(), PandaNode::get_parent(), Physical::get_physical_node(), Physical::get_physics_manager(), ParticleSystem(), Physical::PhysicalNode, and PT(). Referenced by kill_particle(). |
|
Definition at line 463 of file particleSystem.cxx. References _birth_rate, _living_particles, _particle_pool_size, Physical::_physics_objects, _tics_since_birth, birth_litter(), BaseParticle::get_age(), BaseParticle::get_alive(), BaseParticle::get_lifespan(), kill_particle(), BaseParticle::set_age(), and BaseParticle::update(). Referenced by ParticleSystemManager::do_particles(). |
|
Definition at line 153 of file particleSystem.h. |
|
Reimplemented from Physical. Definition at line 101 of file particleSystem.h. |
|
Definition at line 83 of file particleSystem.h. Referenced by ParticleSystem(). |
|
Definition at line 63 of file particleSystem.h. Referenced by ParticleSystem(), and update(). |
|
Definition at line 59 of file particleSystem.h. Referenced by birth_particle(), kill_particle(), and resize_pool(). |
|
Definition at line 96 of file particleSystem.h. Referenced by ParticleSystem(). |
|
Definition at line 65 of file particleSystem.h. Referenced by birth_litter(), and ParticleSystem(). |
|
Definition at line 66 of file particleSystem.h. Referenced by birth_litter(), and ParticleSystem(). |
|
Definition at line 62 of file particleSystem.h. Referenced by birth_particle(), kill_particle(), ParticleSystem(), and update(). |
|
Definition at line 84 of file particleSystem.h. Referenced by birth_particle(), and ParticleSystem(). |
|
Definition at line 73 of file particleSystem.h. Referenced by spawn_child_system(). |
|
Definition at line 61 of file particleSystem.h. Referenced by birth_particle(), resize_pool(), and update(). |
|
Definition at line 89 of file particleSystem.h. Referenced by kill_particle(), and ParticleSystem(). |
|
Definition at line 91 of file particleSystem.h. Referenced by spawn_child_system(). |
|
Definition at line 67 of file particleSystem.h. |
|
Definition at line 85 of file particleSystem.h. Referenced by ParticleSystem(). |
|
Definition at line 68 of file particleSystem.h. Referenced by ParticleSystem(). |
|
Definition at line 75 of file particleSystem.h. Referenced by ~ParticleSystem(). |
|
Definition at line 64 of file particleSystem.h. Referenced by ParticleSystem(), and update(). |