Added extra controls for ParticleEffects.

This commit is contained in:
Robert Osfield
2005-03-23 17:05:21 +00:00
parent 60597f4bbb
commit aee1e88f15
10 changed files with 239 additions and 139 deletions

View File

@@ -15,6 +15,8 @@
#define OSGPARTICLE_EXPLOSIONEFFECT
#include <osgParticle/ParticleEffect>
#include <osgParticle/ModularEmitter>
#include <osgParticle/ModularProgram>
namespace osgParticle
{
@@ -23,18 +25,27 @@ namespace osgParticle
{
public:
ExplosionEffect();
ExplosionEffect(const osg::Vec3& position=osg::Vec3(0.0f,0.0f,0.0f), float scale=1.0f, float intensity=1.0f);
ExplosionEffect(const ExplosionEffect& copy, const osg::CopyOp& copyop = osg::CopyOp::SHALLOW_COPY);
META_Node(osgParticle,ExplosionEffect);
virtual void setDefaults();
virtual void buildEffect();
virtual void setUpEmitterAndProgram();
virtual Emitter* getEmitter() { return _emitter.get(); }
virtual const Emitter* getEmitter() const { return _emitter.get(); }
virtual Program* getProgram() { return _program.get(); }
virtual const Program* getProgram() const { return _program.get(); }
protected:
osg::ref_ptr<ModularEmitter> _emitter;
osg::ref_ptr<ModularProgram> _program;
};
}