fx::MediumParticleSystem Class Reference

Particle-system based on OpenGL point-sprites. More...

#include <_src_fx_partsys_medium.hh>

Inheritance diagram for fx::MediumParticleSystem:

fx::ParticleSystem fx::TrailParticleSystem

List of all members.

Public Member Functions

 MediumParticleSystem (const Args &arg)
 ~MediumParticleSystem ()
void AttachParticle (const MediumParticle &mediumParticle)
uint GetParticleCount (void) const
void SetColorAll (const RGBA color)

Private Types

typedef ParticleSystem Parent

Private Attributes

bool mAttachedToSceneGraph
 lazy-attached in case of no particles
const NodeSort mNodeSort
 for state-sorting
RefPtr< osg::StateSet > mStateSet
 specifies texture (and any other state)
RefPtr< osg::Geode > mGeode
RefPtr< osg::Geometry > mGeom
RefPtr< MediumParticleDrawablemMediumParticleDrawable
 for adjusting size of every point sprite

Friends

class FX
class shptr< MediumParticleSystem >
class MediumParticleDrawable

Classes

struct  Args
 Args for MediumParticleSystem ctor. More...


Detailed Description

Particle-system based on OpenGL point-sprites.

This particle system is very fast but it has deficiencies. Left unimplemented was a mechanism to update particles. MediumParticleSystem has a crude way to adjust size of point sprites by distance (but it's imperfect and hardware limits point size).

Texture is specified by stateset. Example: new MediumParticleSystem( MediumParticleSystem::Args( Texture::NewTextureAsStateSet( "smoke.png" ) ) );


Member Typedef Documentation

Reimplemented in fx::TrailParticleSystem.


Constructor & Destructor Documentation

fx::MediumParticleSystem::MediumParticleSystem ( const Args args  ) 

ctor/dtor.

fx::MediumParticleSystem::~MediumParticleSystem (  ) 


Member Function Documentation

void fx::MediumParticleSystem::AttachParticle ( const MediumParticle mediumParticle  ) 

Append MediumParticle. Time-of-death is absolute (add current time to lifetime).

uint fx::MediumParticleSystem::GetParticleCount ( void   )  const

Returns:
Amount of particles.

void fx::MediumParticleSystem::SetColorAll ( const RGBA  color  ) 


Friends And Related Function Documentation

friend class FX [friend]

Reimplemented from fx::ParticleSystem.

Reimplemented in fx::TrailParticleSystem.

friend class shptr< MediumParticleSystem > [friend]

friend class MediumParticleDrawable [friend]


Member Data Documentation

lazy-attached in case of no particles

const NodeSort fx::MediumParticleSystem::mNodeSort [private]

for state-sorting

RefPtr<osg::StateSet> fx::MediumParticleSystem::mStateSet [private]

specifies texture (and any other state)

RefPtr<osg::Geode> fx::MediumParticleSystem::mGeode [private]

RefPtr<osg::Geometry> fx::MediumParticleSystem::mGeom [private]

for adjusting size of every point sprite


The documentation for this class was generated from the following files:
Palomino Flight Simulator documents generated by doxygen 1.5.6 on Tue Sep 28 11:37:49 2010