![]() |
VR-Forces Development_Version Class Documentation
|
MyParticleSystemModel extends DtOsgParticleSystemModel to add a shader manager as shown in exampleCustomShaders that allows the color of the particle system to be modified through a fragment shader. More...

Public Member Functions | |
| MyParticleSystemModel (DtDe &de, DtUniqueID &id) | |
| CTOR. | |
| virtual | ~MyParticleSystemModel () |
| virtual DTOR | |
| virtual void | setModelInstance (DtModelInstance *modelInstance) |
| Override setModelInstance to create the shader manager (or destroy it if the modelInstance is Null) | |
| virtual void | changeColorOverride (int color, float deltaChange) |
| This method has been added to the distributed interface of this object (through MyParticleSystemModel.ocdx). | |
Public Member Functions inherited from makVrv::DtOsgParticleSystemModel | |
| DtOsgParticleSystemModel (DtDe &de, DtUniqueID id) | |
| CTOR. | |
| virtual | ~DtOsgParticleSystemModel () |
| DTOR. | |
| virtual void | setModelDefinition (const std::string &str) |
| Override the default model definition function. | |
| virtual std::string | className () const |
| Get the class name of the model instance owner. | |
| virtual void | setIntensity (float intensity) |
| Set the intensity. | |
| virtual void | setScale (float scale) |
| Set the intensity. | |
| virtual void | setDuration (double seconds) |
| Set the duration of the effect. | |
| virtual void | setWindDirection (const DtVector &direction) |
| Set the wind direction. | |
| virtual void | setMaxParticlesToEmit (int max) |
| Set the maximum number of particles to emit. | |
| virtual void | stop () |
| Tell the model to stop emitting particles. | |
| virtual void | start () |
| Tell the model to start emitting particles. | |
| virtual void | pause () |
| Freeze the particle emitters. | |
| virtual void | resume () |
| Resume the animation. | |
| virtual void | setVisible (bool isVisible) |
| Override to call setVisible on the scene connector. | |
| virtual void | setIsSupportModel (bool isSupport) |
| Set whether the model is part of the support group (whether or not other scene objects can ground clamp to this model) | |
| virtual void | setPosition (int vtx, const DtVector &position) |
| Set the position of a control vertex in the model. | |
| virtual void | setOrientation (int vtx, const DtTaitBryan &orientation) |
| Set the orientation of a vertex in the model. | |
Public Member Functions inherited from makVrv::DtParticleSystemModel | |
| DtParticleSystemModel (DtDe &de, DtUniqueID id) | |
| CTOR. | |
| virtual | ~DtParticleSystemModel () |
| DTOR. | |
Public Member Functions inherited from makVrv::DtModel | |
| DtModel (DtDe &de, DtUniqueID id) | |
| CTOR. | |
| virtual | ~DtModel () |
| DTOR. | |
| virtual void | saveModelToFile (const std::string &filename) |
| unsigned int | transformSize () const |
| Get the number of position/orientations this model has. | |
| virtual void | removePosition (int vtx) |
| Remove a transform at the given position. | |
| const DtVector & | position (int vtx=0) const |
| Get the Position of a given point. | |
| const DtTaitBryan & | orientation (int vtx=0) const |
| Get the Orientation of a given point. | |
| virtual void | enableColorBlending (bool b) |
| Enable / disable color blending for this model. | |
| virtual void | setBlendColor (float r, float g, float b, float a) |
| Set color to use if color blending is enabled. | |
| virtual void | getBlendColor (float &r, float &g, float &b, float &a) |
| Returns the blend color. | |
| virtual bool | colorBlendingEnabled () const |
| Returns whether or not blending is enabled. | |
| virtual void | setColor (float r, float g, float b, float a) |
| set the model's color | |
| virtual void | enableLighting (bool l) |
| set whether the model is lit; this may not be an option on all models | |
| virtual int | modelSet () const |
| Get the model set this model is part of. | |
| const DtVector & | boundingBoxExtents () const |
| Get the bounding box extents of the model instance. | |
| void | getBoundingBoxExtents (double &x, double &y, double &z) const |
| Get the bounding box extents of the model instance. | |
| const DtVector & | boundingBoxCenter () const |
| Get the bounding box center of the model instance. | |
| virtual void | getBoundingBoxCenter (double &x, double &y, double &z) const |
| Get the bounding box center of the model instance. | |
| virtual void | getBoundingBoxComponents (DtVector &minimum, DtVector &maximum) |
| Get the minimum and maximum X,Y,Z components of the bounding box. | |
| void | setContributesToBound (bool trueOrFalse) |
| Set whether this model instance contributes to an object's overall bounding volume. | |
| bool | contributesToBound () const |
| Get whether this model instance contributes to an object's overall bounding volume. | |
| DtDe & | de () |
| Get the DtDe object. | |
| virtual bool | visible () const |
| Get the visible state of the model. | |
| DtUniqueID | parentSceneObjectID () const |
| Parent of the model. | |
| virtual void | addedToSceneObjectAsProp (const DtUniqueID &sceneObj) |
| Called when a scene object added the model as a prop. | |
| virtual void | addedToSceneObject (const DtUniqueID &sceneObj, int modelSet, int visualizerType) |
| Called when a scene object added the model with the given model set and visualizer type. | |
| virtual void | setElementId (DtUniqueID id) |
| Called when the element ID of the model's parent object is set. | |
| virtual void | removedFromSceneObject () |
| Called when the model was removed from a scene object. | |
| virtual void | setSolid (bool isSolid) |
| Set whether or not other this model is drawn filled in. | |
| virtual bool | isProp () |
| Return whether or not this model was added as a prop. | |
| virtual DtModelInstance * | modelInstance () |
| Get the model instance. | |
| virtual const DtModelInstance * | modelInstance () const |
| Get the model instance. | |
| int | visualizerType () const |
| The visualizer type determines which channel-specific group node this model will be parented to, and consequently, which observer setting will cause it to be rendered in which channel. | |
Protected Attributes | |
| MyShaderManager * | myShaderManager |
Protected Attributes inherited from makVrv::DtOsgParticleSystemModel | |
| DtOsgSceneConnector * | mySceneConnector |
| double | myIntensity |
| bool | myIntensitySet |
| double | myScale |
| bool | myScaleSet |
| double | myDuration |
| bool | myDurationSet |
| bool | myOrientUp |
| bool | myPositionSet |
| bool | myOrientationSet |
| DtVector | myPosition |
| DtTaitBryan | myOrientation |
| float | myWindSpeed |
| float | myWindDirection |
| int | myMaxParticlesToEmit |
| DtVector | myUp |
| bool | myUpSet |
Additional Inherited Members | |
Public Attributes inherited from makVrv::DtModel | |
| boost::signal< void(DtModel *)> | signal_modelToBeDestroyed |
| Signal emitted when the model is to be destroyed. | |
| boost::signal< void(DtModel *)> | signal_modelChanged |
| boost::signal< bool(DtModel *, bool), SlotReturnOR > | signal_visibilityChangeRequested |
| Signal when the visibility has been requested, if any slot returns false, it will not change. | |
| boost::signal< void(DtModelInstance *, DtModel *)> | signal_modelInstanceCreated |
| Signal emitted when the model instance is created. | |
| boost::signal< void(DtModelInstance *, DtModel *)> | signal_modelInstanceToBeDestroyed |
| Signal emitted when the model instance is to be destroyed. | |
Protected Types inherited from makVrv::DtModel | |
| typedef std::vector < ObjectTransform > | TransformList |
Protected Member Functions inherited from makVrv::DtOsgParticleSystemModel | |
| virtual void | addToScene (const DtUniqueID &id, int modelSet, int visualizerType) |
| Virtual Functions to be implemented, add this model to the scene. | |
| virtual void | addToSceneAsProp (const DtUniqueID &sceneObjectId) |
| Add this model to the scene as a prop. | |
| virtual void | removeFromScene () |
| Virtual Functions to be implemented, remove this model from the scene. | |
| virtual void | slot_handleWindDirectionChanged (float dir) |
| virtual void | slot_handleWindSpeedChanged (float speed) |
| virtual void | updateWind () |
MyParticleSystemModel extends DtOsgParticleSystemModel to add a shader manager as shown in exampleCustomShaders that allows the color of the particle system to be modified through a fragment shader.
| makVrv::MyParticleSystemModel::MyParticleSystemModel | ( | DtDe & | de, |
| DtUniqueID & | id | ||
| ) |
CTOR.
|
virtual |
virtual DTOR
|
virtual |
Override setModelInstance to create the shader manager (or destroy it if the modelInstance is Null)
Reimplemented from makVrv::DtModel.
|
virtual |
This method has been added to the distributed interface of this object (through MyParticleSystemModel.ocdx).
When called, it calls the shader manager to perform the operation. The color parameter is 0, 1, or 2, to modify Red, Green, or Blue by deltaChange amount
|
protected |