Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ParticleSystem Class Reference

Contains and manages a particle system. More...

#include <particleSystem.h>

Inheritance diagram for ParticleSystem:

Physical TypedReferenceCount TypedObject ReferenceCount List of all members.

Public Member Functions

 ParticleSystem (int pool_size=0)
 Default Constructor.

 ParticleSystem (const ParticleSystem &copy)
 Copy Constructor.

 ~ParticleSystem (void)
 You get the ankles and I'll get the wrists.

void set_pool_size (int size)
void set_birth_rate (float new_br)
void set_litter_size (int new_ls)
void set_litter_spread (int new_ls)
void set_local_velocity_flag (bool lv)
void set_system_grows_older_flag (bool sgo)
void set_system_lifespan (float sl)
void set_system_age (float age)
void set_active_system_flag (bool a)
void set_spawn_on_death_flag (bool sod)
void set_spawn_render_node (PandaNode *node)
void set_template_system_flag (bool tsf)
void set_render_parent (PandaNode *node)
void set_renderer (BaseParticleRenderer *r)
void set_emitter (BaseParticleEmitter *e)
void set_factory (BaseParticleFactory *f)
int get_pool_size (void) const
float get_birth_rate (void) const
int get_litter_size (void) const
int get_litter_spread (void) const
bool get_local_velocity_flag (void) const
bool get_system_grows_older_flag (void) const
float get_system_lifespan (void) const
float get_system_age (void) const
bool get_active_system_flag (void) const
bool get_spawn_on_death_flag (void) const
PandaNodeget_spawn_render_node (void) const
bool get_i_was_spawned_flag (void) const
int get_living_particles (void) const
PandaNodeget_render_parent (void) const
BaseParticleRendererget_renderer (void) const
BaseParticleEmitterget_emitter (void) const
BaseParticleFactoryget_factory (void) const
void add_spawn_template (ParticleSystem *ps)
void clear_spawn_templates (void)
void render (void)
 Populates an attached GeomNode structure with the particle geometry for rendering.

void induce_labor (void)
 Forces the birth of a particle litter this frame by resetting _tics_since_birth.

void update (float dt)
 Updates the particle system.

PhysicsManagerget_physics_manager (void) const
PhysicalNodeget_physical_node (void) const
PhysicsObjectget_phys_body (void) const
void clear_linear_forces (void)
 Erases the linear force list.

void clear_angular_forces (void)
 Erases the angular force list.

void clear_physics_objects (void)
 Erases the object list.

void add_linear_force (LinearForce *f)
 Adds a linear force to the force list.

void add_angular_force (AngularForce *f)
 Adds an angular force to the force list.

void add_physics_object (PhysicsObject *po)
 Adds an object to the physics object vector.

void remove_linear_force (LinearForce *f)
 removes a linear force from the force list

void remove_angular_force (AngularForce *f)
 removes an angular force from the force list

int get_num_linear_forces (void) const
PointerTo< LinearForceget_linear_force (int index) const
int get_num_angular_forces (void) const
PointerTo< AngularForceget_angular_force (int index) const
const pvector< PointerTo<
PhysicsObject > > & 
get_object_vector (void) const
const pvector< PointerTo<
LinearForce > > & 
get_linear_forces (void) const
const pvector< PointerTo<
AngularForce > > & 
get_angular_forces (void) const
virtual TypeHandle get_type (void) const
virtual TypeHandle force_init_type ()
int get_type_index () const
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type.

bool is_of_type (TypeHandle handle) const
 Returns true if the current object is or derives from the indicated type.

bool is_exact_type (TypeHandle handle) const
 Returns true if the current object is the indicated type exactly.

int get_ref_count () const
 Returns the current reference count.

int ref () const
 Explicitly increments the reference count.

int unref () const
 Explicitly decrements the reference count.

void test_ref_count_integrity () const
 Does some easy checks to make sure that the reference count isn't completely bogus.


Static Public Member Functions

TypeHandle get_class_type (void)
void init_type (void)

Protected Attributes

pvector< PointerTo< PhysicsObject > > _physics_objects
pvector< PointerTo< LinearForce > > _linear_forces
pvector< PointerTo< AngularForce > > _angular_forces
PhysicsObject_phys_body

Private Member Functions

bool birth_particle (void)
 A new particle is born.

void kill_particle (int pool_index)
 Kills a particle, returns its slot to the empty stack.

void birth_litter (void)
 spawns a new batch of particles

void resize_pool (int size)
 Resizes the particle pool.

void spawn_child_system (BaseParticle *bp)
 Creates a new particle system based on local template info and adds it to the ps and physics managers.


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
PointerTo< BaseParticleFactory_factory
PointerTo< BaseParticleEmitter_emitter
PointerTo< BaseParticleRenderer_renderer
ParticleSystemManager_manager
bool _template_system_flag
PointerTo< PandaNode_render_parent
PointerTo< PandaNode_render_node
bool _active_system_flag
bool _local_velocity_flag
bool _system_grows_older_flag
bool _spawn_on_death_flag
PointerTo< PandaNode_spawn_render_node
pvector< PointerTo< ParticleSystem > > _spawn_templates
bool _i_was_spawned_flag

Friends

class ParticleSystemManager
class PhysicsManager
class PhysicalNode

Detailed Description

Contains and manages a particle system.

Definition at line 53 of file particleSystem.h.


Constructor & Destructor Documentation

ParticleSystem::ParticleSystem int  pool_size = 0  ) 
 

Default Constructor.

Definition at line 49 of file particleSystem.cxx.

ParticleSystem::ParticleSystem const ParticleSystem &  copy  ) 
 

Copy Constructor.

Definition at line 94 of file particleSystem.cxx.

References _birth_rate, _emitter, _factory, _i_was_spawned_flag, _living_particles, _local_velocity_flag, _render_node, _render_parent, _renderer, _spawn_on_death_flag, _system_grows_older_flag, _system_lifespan, and _tics_since_birth.

ParticleSystem::~ParticleSystem void   ) 
 

You get the ankles and I'll get the wrists.

Definition at line 131 of file particleSystem.cxx.

References _free_particle_fifo, _living_particles, and _particle_pool_size.


Member Function Documentation

void Physical::add_angular_force AngularForce f  )  [inline, inherited]
 

Adds an angular force to the force list.

Definition at line 88 of file physical.I.

References Physical::_linear_forces.

void Physical::add_linear_force LinearForce f  )  [inline, inherited]
 

Adds a linear force to the force list.

Definition at line 75 of file physical.I.

References Physical::_linear_forces, INLINE, and PT.

void Physical::add_physics_object PhysicsObject po  )  [inline, inherited]
 

Adds an object to the physics object vector.

Definition at line 145 of file physical.I.

References Physical::_physical_node.

void ParticleSystem::add_spawn_template ParticleSystem *  ps  )  [inline]
 

Definition at line 276 of file particleSystem.I.

References _litter_spread, and INLINE.

void ParticleSystem::birth_litter void   )  [private]
 

spawns a new batch of particles

Definition at line 226 of file particleSystem.cxx.

References _spawn_templates, PandaNode::get_num_parents(), PandaNode::get_parent(), and Physical::get_physical_node().

bool ParticleSystem::birth_particle void   )  [private]
 

A new particle is born.

This doesn't allocate, resets an element from the particle pool.

Definition at line 153 of file particleSystem.cxx.

void Physical::clear_angular_forces void   )  [inline, inherited]
 

Erases the angular force list.

Definition at line 47 of file physical.I.

References Physical::_physics_objects, and INLINE.

void Physical::clear_linear_forces void   )  [inline, inherited]
 

Erases the linear force list.

Definition at line 33 of file physical.I.

References Physical::_angular_forces, and INLINE.

void Physical::clear_physics_objects void   )  [inline, inherited]
 

Erases the object list.

Definition at line 61 of file physical.I.

References Physical::_linear_forces.

Referenced by set_renderer().

void ParticleSystem::clear_spawn_templates void   )  [inline]
 

Definition at line 287 of file particleSystem.I.

References _renderer, and INLINE.

virtual TypeHandle Physical::force_init_type void   )  [inline, virtual, inherited]
 

Reimplemented from TypedReferenceCount.

Definition at line 113 of file physical.h.

bool ParticleSystem::get_active_system_flag void   )  const [inline]
 

Definition at line 391 of file particleSystem.I.

References _render_parent, and INLINE.

Referenced by ParticleSystemManager::do_particles().

PointerTo< AngularForce > Physical::get_angular_force int  index  )  const [inline, inherited]
 

const pvector< PointerTo< AngularForce > >& Physical::get_angular_forces void   )  const [inline, inherited]
 

float ParticleSystem::get_birth_rate void   )  const [inline]
 

Definition at line 314 of file particleSystem.I.

References _living_particles, and INLINE.

TypeHandle Physical::get_class_type void   )  [inline, static, inherited]
 

Reimplemented from TypedReferenceCount.

Definition at line 102 of file physical.h.

References TypedReferenceCount::get_class_type().

BaseParticleEmitter * ParticleSystem::get_emitter void   )  const [inline]
 

Definition at line 358 of file particleSystem.I.

References _system_lifespan, and INLINE.

BaseParticleFactory * ParticleSystem::get_factory void   )  const [inline]
 

Definition at line 369 of file particleSystem.I.

References _system_age, and INLINE.

bool ParticleSystem::get_i_was_spawned_flag void   )  const [inline]
 

Definition at line 457 of file particleSystem.I.

PointerTo< LinearForce > Physical::get_linear_force int  index  )  const [inline, inherited]
 

const pvector< PointerTo< LinearForce > >& Physical::get_linear_forces void   )  const [inline, inherited]
 

Referenced by BaseIntegrator::~BaseIntegrator().

int ParticleSystem::get_litter_size void   )  const [inline]
 

Definition at line 325 of file particleSystem.I.

References _active_system_flag.

int ParticleSystem::get_litter_spread void   )  const [inline]
 

Definition at line 336 of file particleSystem.I.

int ParticleSystem::get_living_particles void   )  const [inline]
 

Definition at line 380 of file particleSystem.I.

References _i_was_spawned_flag.

bool ParticleSystem::get_local_velocity_flag void   )  const [inline]
 

Definition at line 402 of file particleSystem.I.

int Physical::get_num_angular_forces void   )  const [inline, inherited]
 

Definition at line 245 of file physical.I.

int Physical::get_num_linear_forces void   )  const [inline, inherited]
 

Definition at line 222 of file physical.I.

const pvector< PointerTo< PhysicsObject > >& Physical::get_object_vector void   )  const [inline, inherited]
 

Referenced by LinearIntegrator::~LinearIntegrator().

PhysicsObject * Physical::get_phys_body void   )  const [inline, inherited]
 

Definition at line 167 of file physical.I.

References Physical::_angular_forces, and INLINE.

PhysicalNode * Physical::get_physical_node void   )  const [inline, inherited]
 

Definition at line 178 of file physical.I.

References Physical::_linear_forces, and INLINE.

Referenced by birth_litter(), and BaseIntegrator::~BaseIntegrator().

PhysicsManager * Physical::get_physics_manager void   )  const [inline, inherited]
 

Definition at line 156 of file physical.I.

int ParticleSystem::get_pool_size void   )  const [inline]
 

Definition at line 303 of file particleSystem.I.

References _factory, and INLINE.

int ReferenceCount::get_ref_count  )  const [inline, inherited]
 

Returns the current reference count.

Definition at line 183 of file referenceCount.I.

Referenced by RenderState::determine_bin_index(), RenderEffects::determine_show_bounds(), FontPool::ns_garbage_collect(), TexturePool::ns_garbage_collect(), MaterialPool::ns_get_material(), and TexturePool::ns_release_texture().

PandaNode * ParticleSystem::get_render_parent void   )  const [inline]
 

Definition at line 479 of file particleSystem.I.

BaseParticleRenderer * ParticleSystem::get_renderer void   )  const [inline]
 

Definition at line 347 of file particleSystem.I.

References _system_grows_older_flag, and INLINE.

bool ParticleSystem::get_spawn_on_death_flag void   )  const [inline]
 

Definition at line 413 of file particleSystem.I.

PandaNode * ParticleSystem::get_spawn_render_node void   )  const [inline]
 

Definition at line 468 of file particleSystem.I.

float ParticleSystem::get_system_age void   )  const [inline]
 

Definition at line 446 of file particleSystem.I.

Referenced by ParticleSystemManager::do_particles().

bool ParticleSystem::get_system_grows_older_flag void   )  const [inline]
 

Definition at line 424 of file particleSystem.I.

Referenced by ParticleSystemManager::do_particles().

float ParticleSystem::get_system_lifespan void   )  const [inline]
 

Definition at line 435 of file particleSystem.I.

Referenced by ParticleSystemManager::do_particles().

virtual TypeHandle Physical::get_type void   )  const [inline, virtual, inherited]
 

Reimplemented from TypedReferenceCount.

Definition at line 110 of file physical.h.

int TypedObject::get_type_index  )  const [inline, inherited]
 

Returns the internal index number associated with this object's TypeHandle, a unique number for each different type.

This is equivalent to get_type().get_index().

Definition at line 71 of file typedObject.I.

References TypeHandle::get_name(), TypedObject::get_type(), and INLINE.

void ParticleSystem::induce_labor void   )  [inline]
 

Forces the birth of a particle litter this frame by resetting _tics_since_birth.

Definition at line 52 of file particleSystem.I.

References INLINE, and resize_pool().

void Physical::init_type void   )  [inline, static, inherited]
 

Reimplemented from TypedReferenceCount.

Definition at line 105 of file physical.h.

References TypedReferenceCount::get_class_type(), and TypedReferenceCount::init_type().

bool TypedObject::is_exact_type TypeHandle  handle  )  const [inline, inherited]
 

Returns true if the current object is the indicated type exactly.

Definition at line 101 of file typedObject.I.

Referenced by PT(), and CollisionNode::xform().

bool TypedObject::is_of_type TypeHandle  handle  )  const [inline, inherited]
 

Returns true if the current object is or derives from the indicated type.

Definition at line 86 of file typedObject.I.

Referenced by EggMaterialCollection::collapse_equivalent_materials(), EggTextureCollection::collapse_equivalent_textures(), DeferredNodeProperty::compose(), AnimBundleMaker::create_s_channel(), CharacterMaker::create_slider(), ProjectionScreen::cull_callback(), DataNode::define_output(), EggNode::determine_draw_order(), CharacterMaker::egg_to_index(), EggGroupUniquifier::EggGroupUniquifier(), EggPoolUniquifier::EggPoolUniquifier(), EggGroupNode::find_textures(), StaticTextFont::get_glyph(), EggMaterialCollection::insert_materials(), EggTextureCollection::insert_textures(), CharacterJoint::make_copy(), PT(), EggGroupNode::r_flatten_transforms(), EggGroupNode::r_transform_vertices(), EggGroupNode::recompute_polygon_normals(), CollisionLevelState::reserve(), PandaFramework::reset_frame_rate(), PandaFramework::set_texture(), EggGroupNode::steal_children(), and DataGraphTraverser::traverse().

void ParticleSystem::kill_particle int  pool_index  )  [private]
 

Kills a particle, returns its slot to the empty stack.

Definition at line 321 of file particleSystem.cxx.

References _factory, _particle_pool_size, Physical::_physics_objects, _renderer, PointerTo< BaseParticleRenderer >::is_null(), and PointerTo< BaseParticleFactory >::is_null().

int ReferenceCount::ref  )  const [inline, inherited]
 

Explicitly increments the reference count.

User code should avoid using ref() and unref() directly, which can result in missed reference counts. Instead, let a PointerTo object manage the reference counting automatically.

This function is const, even though it changes the object, because generally fiddling with an object's reference count isn't considered part of fiddling with the object. An object might be const in other ways, but we still need to accurately count the number of references to it.

The return value is the new reference count.

Definition at line 225 of file referenceCount.I.

Referenced by ClientDevice::ClientDevice(), EggGroupNode::find_textures(), EggGroupNode::r_apply_texmats(), EggGroupNode::r_flatten_transforms(), and EggGroupNode::reverse_vertex_ordering().

void Physical::remove_angular_force AngularForce f  )  [inline, inherited]
 

removes an angular force from the force list

Definition at line 124 of file physical.I.

References Physical::_physics_manager, and INLINE.

void Physical::remove_linear_force LinearForce f  )  [inline, inherited]
 

removes a linear force from the force list

Definition at line 101 of file physical.I.

References Physical::_angular_forces.

void ParticleSystem::render void   )  [inline]
 

Populates an attached GeomNode structure with the particle geometry for rendering.

This is a wrapper for accessability.

Definition at line 36 of file particleSystem.I.

References _birth_rate, _tics_since_birth, and INLINE.

Referenced by ParticleSystemManager::do_particles().

void ParticleSystem::resize_pool int  size  )  [private]
 

Resizes the particle pool.

Definition at line 354 of file particleSystem.cxx.

References _factory, and Physical::_physics_objects.

Referenced by induce_labor().

void ParticleSystem::set_active_system_flag bool  a  )  [inline]
 

Definition at line 164 of file particleSystem.I.

References _system_grows_older_flag, and INLINE.

void ParticleSystem::set_birth_rate float  new_br  )  [inline]
 

Definition at line 80 of file particleSystem.I.

References _litter_spread, and INLINE.

void ParticleSystem::set_emitter BaseParticleEmitter e  )  [inline]
 

Definition at line 136 of file particleSystem.I.

References _active_system_flag.

void ParticleSystem::set_factory BaseParticleFactory f  )  [inline]
 

Definition at line 148 of file particleSystem.I.

void ParticleSystem::set_litter_size int  new_ls  )  [inline]
 

Definition at line 93 of file particleSystem.I.

References _particle_pool_size, _render_node, _render_parent, _renderer, INLINE, and PointerTo< PandaNode >::is_null().

void ParticleSystem::set_litter_spread int  new_ls  )  [inline]
 

Definition at line 105 of file particleSystem.I.

References _emitter, and INLINE.

void ParticleSystem::set_local_velocity_flag bool  lv  )  [inline]
 

Definition at line 176 of file particleSystem.I.

References _system_lifespan.

void ParticleSystem::set_pool_size int  size  )  [inline]
 

Definition at line 68 of file particleSystem.I.

References _litter_size, and INLINE.

Referenced by set_renderer().

void ParticleSystem::set_render_parent PandaNode node  )  [inline]
 

Definition at line 248 of file particleSystem.I.

References _particle_pool_size, and INLINE.

void ParticleSystem::set_renderer BaseParticleRenderer r  )  [inline]
 

Definition at line 117 of file particleSystem.I.

References _factory, _particle_pool_size, Physical::clear_physics_objects(), INLINE, and set_pool_size().

void ParticleSystem::set_spawn_on_death_flag bool  sod  )  [inline]
 

Definition at line 188 of file particleSystem.I.

void ParticleSystem::set_spawn_render_node PandaNode node  )  [inline]
 

Definition at line 236 of file particleSystem.I.

References _spawn_templates, and INLINE.

void ParticleSystem::set_system_age float  age  )  [inline]
 

Definition at line 224 of file particleSystem.I.

References _spawn_templates, and INLINE.

Referenced by ParticleSystemManager::do_particles().

void ParticleSystem::set_system_grows_older_flag bool  sgo  )  [inline]
 

Definition at line 200 of file particleSystem.I.

References _render_node, _render_parent, _renderer, INLINE, and PointerTo< PandaNode >::is_null().

void ParticleSystem::set_system_lifespan float  sl  )  [inline]
 

Definition at line 212 of file particleSystem.I.

References _render_parent.

void ParticleSystem::set_template_system_flag bool  tsf  )  [inline]
 

Definition at line 265 of file particleSystem.I.

References _litter_size, and INLINE.

void ParticleSystem::spawn_child_system BaseParticle bp  )  [private]
 

Creates a new particle system based on local template info and adds it to the ps and physics managers.

Definition at line 253 of file particleSystem.cxx.

References _manager, and _spawn_render_node.

void ReferenceCount::test_ref_count_integrity  )  const [inline, inherited]
 

Does some easy checks to make sure that the reference count isn't completely bogus.

Definition at line 328 of file referenceCount.I.

References INLINE.

Referenced by EggNode::determine_bin(), and ReferenceCount::~ReferenceCount().

int ReferenceCount::unref  )  const [inline, inherited]
 

Explicitly decrements the reference count.

Note that the object will not be implicitly deleted by unref() simply because the reference count drops to zero. (Having a member function delete itself is problematic; plus, we don't have a virtual destructor anyway.) However, see the helper function unref_delete().

User code should avoid using ref() and unref() directly, which can result in missed reference counts. Instead, let a PointerTo object manage the reference counting automatically.

This function is const, even though it changes the object, because generally fiddling with an object's reference count isn't considered part of fiddling with the object. An object might be const in other ways, but we still need to accurately count the number of references to it.

The return value is the new reference count.

Definition at line 293 of file referenceCount.I.

References INLINE.

Referenced by RenderState::determine_bin_index(), and RenderEffects::determine_show_bounds().

void ParticleSystem::update float  dt  ) 
 

Updates the particle system.

Call once per frame.

Definition at line 497 of file particleSystem.cxx.

Referenced by ParticleSystemManager::do_particles().


Friends And Related Function Documentation

friend class ParticleSystemManager [friend]
 

Definition at line 159 of file particleSystem.h.

friend class PhysicalNode [friend, inherited]
 

Definition at line 99 of file physical.h.

friend class PhysicsManager [friend, inherited]
 

Definition at line 98 of file physical.h.


Member Data Documentation

bool ParticleSystem::_active_system_flag [private]
 

Definition at line 89 of file particleSystem.h.

Referenced by get_litter_size(), and set_emitter().

pvector< PointerTo< AngularForce > > Physical::_angular_forces [protected, inherited]
 

Definition at line 59 of file physical.h.

Referenced by Physical::clear_linear_forces(), Physical::get_phys_body(), Physical::Physical(), and Physical::remove_linear_force().

float ParticleSystem::_birth_rate [private]
 

Definition at line 69 of file particleSystem.h.

Referenced by ParticleSystem(), and render().

PointerTo< BaseParticleEmitter > ParticleSystem::_emitter [private]
 

Definition at line 77 of file particleSystem.h.

Referenced by ParticleSystem(), and set_litter_spread().

PointerTo< BaseParticleFactory > ParticleSystem::_factory [private]
 

Definition at line 76 of file particleSystem.h.

Referenced by get_pool_size(), kill_particle(), ParticleSystem(), resize_pool(), and set_renderer().

pdeque< int > ParticleSystem::_free_particle_fifo [private]
 

Definition at line 65 of file particleSystem.h.

Referenced by ~ParticleSystem().

bool ParticleSystem::_i_was_spawned_flag [private]
 

Definition at line 102 of file particleSystem.h.

Referenced by get_living_particles(), and ParticleSystem().

pvector< PointerTo< LinearForce > > Physical::_linear_forces [protected, inherited]
 

Definition at line 58 of file physical.h.

Referenced by Physical::add_angular_force(), Physical::add_linear_force(), Physical::clear_physics_objects(), and Physical::get_physical_node().

int ParticleSystem::_litter_size [private]
 

Definition at line 71 of file particleSystem.h.

Referenced by set_pool_size(), and set_template_system_flag().

int ParticleSystem::_litter_spread [private]
 

Definition at line 72 of file particleSystem.h.

Referenced by add_spawn_template(), and set_birth_rate().

int ParticleSystem::_living_particles [private]
 

Definition at line 68 of file particleSystem.h.

Referenced by get_birth_rate(), ParticleSystem(), and ~ParticleSystem().

bool ParticleSystem::_local_velocity_flag [private]
 

Definition at line 90 of file particleSystem.h.

Referenced by ParticleSystem().

ParticleSystemManager* ParticleSystem::_manager [private]
 

Definition at line 79 of file particleSystem.h.

Referenced by ParticleSystemManager::get_frame_stepping(), and spawn_child_system().

int ParticleSystem::_particle_pool_size [private]
 

Definition at line 67 of file particleSystem.h.

Referenced by kill_particle(), set_litter_size(), set_render_parent(), set_renderer(), and ~ParticleSystem().

PhysicsObject* Physical::_phys_body [protected, inherited]
 

Definition at line 66 of file physical.h.

pvector< PointerTo< PhysicsObject > > Physical::_physics_objects [protected, inherited]
 

Definition at line 57 of file physical.h.

Referenced by Physical::clear_angular_forces(), kill_particle(), and resize_pool().

PointerTo< PandaNode > ParticleSystem::_render_node [private]
 

Definition at line 87 of file particleSystem.h.

Referenced by ParticleSystem(), set_litter_size(), and set_system_grows_older_flag().

PointerTo< PandaNode > ParticleSystem::_render_parent [private]
 

Definition at line 86 of file particleSystem.h.

Referenced by get_active_system_flag(), ParticleSystem(), set_litter_size(), set_system_grows_older_flag(), and set_system_lifespan().

PointerTo< BaseParticleRenderer > ParticleSystem::_renderer [private]
 

Definition at line 78 of file particleSystem.h.

Referenced by clear_spawn_templates(), kill_particle(), ParticleSystem(), set_litter_size(), and set_system_grows_older_flag().

bool ParticleSystem::_spawn_on_death_flag [private]
 

Definition at line 95 of file particleSystem.h.

Referenced by ParticleSystem().

PointerTo< PandaNode > ParticleSystem::_spawn_render_node [private]
 

Definition at line 96 of file particleSystem.h.

Referenced by spawn_child_system().

pvector< PointerTo< ParticleSystem > > ParticleSystem::_spawn_templates [private]
 

Definition at line 97 of file particleSystem.h.

Referenced by birth_litter(), set_spawn_render_node(), and set_system_age().

float ParticleSystem::_system_age [private]
 

Definition at line 73 of file particleSystem.h.

Referenced by get_factory().

bool ParticleSystem::_system_grows_older_flag [private]
 

Definition at line 91 of file particleSystem.h.

Referenced by get_renderer(), ParticleSystem(), and set_active_system_flag().

float ParticleSystem::_system_lifespan [private]
 

Definition at line 74 of file particleSystem.h.

Referenced by get_emitter(), ParticleSystem(), and set_local_velocity_flag().

bool ParticleSystem::_template_system_flag [private]
 

Definition at line 81 of file particleSystem.h.

float ParticleSystem::_tics_since_birth [private]
 

Definition at line 70 of file particleSystem.h.

Referenced by ParticleSystem(), and render().


The documentation for this class was generated from the following files:
Generated on Fri May 2 00:53:14 2003 for Panda by doxygen1.3