![]() |
VR-Forces 5.0.3 Developer's Guide
|
A model which owns a single model instance. A DtModel is a managing container for a single DtModelInstance, providing more attributes about how the DtModelInstance should be rendered. Initialization of a DtModel starts with giving it a model-definition. Unlike the DtModelInstance which can be handed a model-definition identifying the model to load, the DtModel retrieves a model-definition which has been pre-loaded into a definition-manager. Usually DtModelDefinition objects are automatically loaded from disk to populate the definition-manager.

Classes | |
| struct | ObjectTransform |
Public Member Functions | |
| DtModel (DtDe &de, DtUniqueID id) | |
| virtual | ~DtModel () |
| DtModelInstance * | createModelInstance (const std::string &modelDefName, bool realize=true) |
| virtual void | setModelDefinition (const std::string &str) |
| virtual const std::string & | modelDefinitionName () |
| virtual void | saveModelToFile (const std::string &filename) |
| virtual const std::string & | className () const |
| unsigned int | transformSize () const |
| virtual void | setPosition (int vtx, const DtVector &position) |
| virtual const DtVector & | position (int vtx=0) const |
| virtual void | removePosition (int vtx) |
| virtual void | setPositionOffset (const DtVector &positionOffset) |
| virtual const DtVector & | positionOffset () const |
| virtual void | setOrientation (int vtx, const DtTaitBryan &orientation) |
| virtual void | setPositionAndOrientation (int vtx, const DtVector &positionOffset, const DtTaitBryan &orientation) |
| virtual const DtTaitBryan & | orientation (int vtx=0) const |
| virtual void | setOrientationOffset (const DtTaitBryan &orientationOffset) |
| virtual const DtTaitBryan & | orientationOffset () const |
| virtual void | enableColorBlending (bool b) |
| virtual void | setBlendColor (float r, float g, float b, float a) |
| virtual void | getBlendColor (float &r, float &g, float &b, float &a) |
| virtual bool | colorBlendingEnabled () const |
| virtual void | setColor (float r, float g, float b, float a) |
| virtual void | enableLighting (bool l) |
| virtual int | modelSet () const |
| const DtVector & | boundingBoxExtents () const |
| void | getBoundingBoxExtents (double &x, double &y, double &z) const |
| const DtVector & | boundingBoxCenter () const |
| virtual void | getBoundingBoxCenter (double &x, double &y, double &z) const |
| virtual void | getBoundingBoxComponents (DtVector &minimum, DtVector &maximum) |
| void | setContributesToBound (bool trueOrFalse) |
| bool | contributesToBound () const |
| DtDe & | de () |
| virtual void | setModelInstance (DtModelInstance *modelInstance) |
| virtual void | promoteBackgroundModelInstance (DtModelDefinition &defintion) |
| virtual void | setVisible (bool isVisible) |
| virtual bool | visible () const |
| DtUniqueID | parentSceneObjectID () const |
| virtual void | addedToSceneObjectAsProp (const DtUniqueID &sceneObj) |
| virtual void | addedToSceneObject (const DtUniqueID &sceneObj, int modelSet, int visualizerType) |
| virtual void | setElementId (DtUniqueID id) |
| virtual void | removedFromSceneObject () |
| virtual void | setIsSupportModel (bool isSupport)=0 |
| virtual void | setSolid (bool isSolid) |
| virtual bool | isProp () |
| virtual void | updateMinLastFrameDistance (float distance) |
| virtual void | resetLastFrameDistance () |
| virtual float | minLastFrameDistance () const |
| virtual DtModelInstance * | modelInstance () |
| virtual const DtModelInstance * | modelInstance () const |
| int | visualizerType () const |
abstract virtual api needs to be implemented by subclasses | |
| virtual bool | supportsMultithreadedLoad () |
| virtual void | backgroundLoad () |
| virtual void | foregroundLoad () |
| virtual bool | isActivelyBackgroundLoading () |
| virtual DtLoaderHandle * | getLoadQueueHandle () |
Public Attributes | |
| boost::signalslib::signal < void(DtModel *)> | signal_modelToBeDestroyed |
| boost::signalslib::signal < void(DtModel *)> | signal_modelChanged |
| boost::signalslib::signal < bool(DtModel *, bool), SlotReturnOR > | signal_visibilityChangeRequested |
| boost::signalslib::signal < void(DtModelInstance *, DtModel *)> | signal_modelInstanceCreated |
| boost::signalslib::signal < void(DtModelInstance *, DtModel *)> | signal_modelInstanceToBeDestroyed |
Protected Types | |
| typedef std::vector < ObjectTransform > | TransformList |
Protected Member Functions | |
| virtual void | addToScene (const DtUniqueID &sceneObjectId, int modelSet, int visualizerType)=0 |
| virtual void | addToSceneAsProp (const DtUniqueID &sceneObjectId) |
| virtual void | removeFromScene ()=0 |
| virtual void | initializeModelInstance () |
| void | slot_modelInstanceChanged (DtModelInstance *instance) |
| virtual void | waitAndClearLoadHandle () |
| virtual void | removedFromLoadQueue () |
| virtual void | setDoneBackgroundLoading () |
| virtual void | setActivelyBackgroundLoading () |
Protected Attributes | |
| DtLoaderHandle * | myInLoadQueueHandle |
| DtDe & | myDe |
| const DtUniqueID | myUniqueId |
| bool | myColorBlendingEnabled |
| DtModelInstance * | myBackgroundModelInstance |
| float | myMinLastFrameDistance |
| TransformList | myTransforms |
| DtModelInstance * | myModelInstance |
| int | myModelSet |
| int | myVisualizerType |
| bool | myContributesToBound |
| DtUniqueID | myParentSceneObjectID |
| bool | myIsPropFlag |
| float | myBlendColor [4] |
| bool | myVisibleFlag |
| DtVector | myPositionOffset |
| DtTaitBryan | myOrientationOffset |
| std::string | myModelDefinitionName |
Static Protected Attributes | |
| static bool | theInittedState |
Private Member Functions | |
| void | deleteModelInstance () |
Friends | |
| class | DtBackgroundLoader |
| class | DtBackgroundLoadAsyncTask |
|
protected |
| makVrv::DtModel::DtModel | ( | DtDe & | de, |
| DtUniqueID | id | ||
| ) |
CTOR.
|
virtual |
DTOR.
| DtModelInstance* makVrv::DtModel::createModelInstance | ( | const std::string & | modelDefName, |
| bool | realize = true |
||
| ) |
Set the model definition and creates an instance of the model.
|
virtual |
Set the model definition.
Reimplemented in makVrv::DtOsgOverlaySpiderWebModel, makVrv::DtOsgOverlayWedgeModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtOsgOverlayArcModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtDiGuyCharacterModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtOsgOverlayRectangleModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsgArticulatedModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtOsgTacticalSmokeModel, makVrf::DtVrfOsgArticulatedModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtOsgSimpleModel, makVrv::DtArticulatedModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgPinnableProjectedWidgetModel, makVrv::DtOsg3DTextModel, makVrv::DtOsgProjectedWidgetModel, makVrv::DtOsgRibbonModel, makVrv::DtRibbonModel, makVrv::DtTritonWakeModel, makVrv::DtTritonTidalStreamWakeModel, makVrv::DtOsgParticleSystemModel, makVrv::DtParticleSystemModel, makVrv::DtOsgAnimationModel, makVrv::DtTritonWaterImpactModel, makVrv::DtRotorWashModel, makVrv::DtOsgDecalModel, makVrv::DtWakeModel, DtVrfOsgArticulatedModel, makVrv::DtDecalModel, and makVrv::DtTidalStreamWakeModel.
|
inlinevirtual |
returns the model definition name.
|
virtual |
|
virtual |
Get the class name of the model instance owner. This is used to control how model instances are created.
Reimplemented in makVrv::DtCharacterModel, makVrv::DtDiGuyCharacterModel, makVrv::DtDummyCharacterModel, makVrv::DtOsgArticulatedModel, makVrv::DtArticulatedModel, makVrv::DtOsgRibbonModel, makVrv::DtRibbonModel, makVrv::DtTritonWakeModel, makVrv::DtOsgParticleSystemModel, makVrv::DtParticleSystemModel, makVrv::DtFxParticleCollisionObjectModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsgDecalModel, makVrv::DtOsgRotorWashModel, makVrv::DtOsgTacticalSmokeModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtTacticalSmokeModel, makVrv::DtOsgAnimationModel, makVrv::DtAnimationModel, makVrv::DtRectangularPyramidModel, makVrv::DtDecalModel, and makVrv::DtRotorWashModel.
|
virtual |
Get the model instance.
|
virtual |
Get the model instance.
Get the number of position/orientations this model has.
Set the position of a control vertex in the model.
Reimplemented in makVrv::DtOsgOverlaySpiderWebModel, makVrv::DtOsgOverlayWedgeModel, makVrv::DtDiGuyCharacterModel, makVrv::DtOsgOverlayArcModel, makVrv::DtOsgArticulatedModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtOsgScribeBoxModel, makVrf::DtVrfOverlayEllipseArcModel, makVrf::DtRadarCoverageModel, makVrv::DtOsgSimpleModel, makVrv::DtOsgParticleSystemModel, makVrv::DtOsgRibbonModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtMovablePolygonModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgAttachableCuboidModel, makVrv::DtOsgAttachableEllipsoidModel, makVrv::DtOsgDecalModel, makVrv::DtEllipsoidArcModel, makVrv::DtOsgTacticalSmokeModel, makVrv::DtOsgAnimationModel, makVrv::DtOsgPinnableProjectedWidgetModel, makVrv::DtOsgArticulatingCylinderModel, makVrv::DtOsgPolygonModel, makVrv::DtOsgProjectedWidgetModel, makVrv::DtTacticalSmokeModel, makVrv::DtOsgCylinderModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOsgRotorWashModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgOverlayRectangleModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtOsgProjectedTextModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtOsgDrawModel, makVrv::DtOsg3DTextModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtDeprecatedOsgArticulatedModel, and makVrv::DtExampleModel.
Get the Position of a given point.
| DtCorruptedState | if the vtx is not with-in the normal bounds. |
|
virtual |
Remove a transform at the given position.
Reimplemented in makVrv::DtOsg2DVolumetricLineModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsgPolygonModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgExtrudedLineModel, and makVrv::DtOsgOverlaySegmentedLineModel.
|
virtual |
Set the position offset of the model. This offsets the position of the entire model. N.B. Currently only used by DtCharacterModel and DtArticulatedModel.
Reimplemented in makVrv::DtDiGuyCharacterModel, makVrv::DtDummyCharacterModel, makVrv::DtOsgArticulatedModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgSimpleModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgDecalModel, and makVrv::DtDeprecatedOsgArticulatedModel.
|
virtual |
Get the Position Offset of the model.
|
virtual |
Set the orientation of a vertex in the model.
Reimplemented in makVrv::DtOsgOverlayWedgeModel, makVrv::DtDiGuyCharacterModel, makVrv::DtOsgArticulatedModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtOsgScribeBoxModel, makVrf::DtVrfOverlayEllipseArcModel, makVrv::DtOsgPolygonModel, makVrv::DtOsgSimpleModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgParticleSystemModel, makVrv::DtMovablePolygonModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgAttachableCuboidModel, makVrv::DtOsgAttachableEllipsoidModel, makVrv::DtOsgRibbonModel, makVrv::DtOsgTacticalSmokeModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtTacticalSmokeModel, makVrv::DtOsgOverlayRectangleModel, makVrv::DtOsgArticulatingCylinderModel, makVrv::DtOsgCylinderModel, makVrv::DtOsgDecalModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtOsgAnimationModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtOsgProjectedTextModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtOsgDrawModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtOsg3DTextModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtDeprecatedOsgArticulatedModel, and makVrv::DtExampleModel.
|
virtual |
Set the position and orientation of a vertex in the model at the same time.
Reimplemented in makVrv::DtDiGuyCharacterModel, makVrv::DtOsgArticulatedModel, and makVrv::DtDeprecatedOsgArticulatedModel.
|
virtual |
Get the Orientation of a given point.
| DtCorruptedState | if the vtx is not with-in the normal bounds. |
|
virtual |
Set the Orientation Offset of the model. This offsets the orientation of the entire model. N.B. Currently only used by DtCharacterModel and DtArticulatedModel.
Reimplemented in makVrv::DtDiGuyCharacterModel, makVrv::DtDummyCharacterModel, makVrv::DtOsgArticulatedModel, makVrv::DtOsgSimpleModel, makVrv::DtDeprecatedOsgSimpleModel, and makVrv::DtDeprecatedOsgArticulatedModel.
|
virtual |
Get the Orientation Offset of the model.
|
virtual |
Enable / disable color blending for this model.
Reimplemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgSimpleModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtDeprecatedOsgArticulatedModel, and makVrv::DtOsgPolygonModel.
|
virtual |
Set color to use if color blending is enabled.
Reimplemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgSimpleModel, makVrv::DtDeprecatedOsgSimpleModel, and makVrv::DtDeprecatedOsgArticulatedModel.
|
virtual |
Returns the blend color.
|
virtual |
Returns whether or not blending is enabled.
|
virtual |
set the model's color
Reimplemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgOverlaySpiderWebModel, makVrv::DtOverlaySpiderWebModel, makVrv::DtOverlayWedgeModel, makVrv::DtOsgOverlayWedgeModel, makVrv::DtOverlayArcModel, makVrv::DtOsgOverlayArcModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtOsgRibbonModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsgDecalModel, makVrv::DtRectangularPyramidModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtPolygonModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtDeprecatedOsgArticulatedModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgScribeBoxModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::Dt3DVolumetricLineModel, makVrf::DtVrfOverlayEllipseArcModel, makVrv::Dt2DVolumetricLineModel, makVrv::DtOsgAttachableCuboidModel, makVrv::DtOsgAttachableEllipsoidModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtOsgCylinderModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtEllipsoidArcModel, makVrv::DtOverlayEllipseArcModel, makVrv::DtOsgArticulatingCylinderModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtOsg3DTextModel, makVrv::DtOsgOverlayRectangleModel, makVrv::DtOsgPolygonModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtAttachableCuboidModel, makVrf::DtSensorContactLinesModel, makVrv::DtCylinderModel, makVrv::DtScribeBoxModel, makVrv::DtAttachableEllipsoidModel, makVrv::Dt3DTextModel, makVrv::DtArticulatingCylinderModel, and makVrv::DtLineModel.
|
virtual |
set whether the model is lit; this may not be an option on all models
Reimplemented in makVrv::DtOsgPolygonModel.
|
virtual |
Get the model set this model is part of.
| const DtVector& makVrv::DtModel::boundingBoxExtents | ( | ) | const |
Get the bounding box extents of the model instance.
Get the bounding box extents of the model instance.
| const DtVector& makVrv::DtModel::boundingBoxCenter | ( | ) | const |
Get the bounding box center of the model instance.
|
virtual |
Get the bounding box center of the model instance.
|
virtual |
Get the minimum and maximum X,Y,Z components of the bounding box.
Reimplemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgSimpleModel, and makVrv::DtDeprecatedOsgArticulatedModel.
| void makVrv::DtModel::setContributesToBound | ( | bool | trueOrFalse | ) |
Set whether this model instance contributes to an object's overall bounding volume.
| bool makVrv::DtModel::contributesToBound | ( | ) | const |
Get whether this model instance contributes to an object's overall bounding volume.
| int makVrv::DtModel::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.
|
virtual |
Internally set the model instance pointer. If an existing model instance is set, it will be deleted. To clear the current model instance only, passing a Null pointer 0 is supported.
| Input | |
| modelInstance | pointer to a model instance. |
Reimplemented in makVrv::MyParticleSystemModel, makVrv::DtOsg3DTextModel, makVrv::DtOsgRibbonModel, and makVrv::DtOsgDecalModel.
|
virtual |
Internally set the model instance pointer to the background one, also realizes and sends signal.
|
virtual |
Set the visible state of the model.
| [in] | isVisible | is the new visible state; true = visible, false = hidden. |
Reimplemented in makVrv::DtTritonWakeModel, makVrv::DtDummyCharacterModel, makVrv::DtOsgArticulatedModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtOsgOverlaySpiderWebModel, makVrv::DtOverlaySpiderWebModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOverlayWedgeModel, makVrv::DtOsgOverlayWedgeModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtRotorWashModel, makVrv::DtOsgRibbonModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtTritonTidalStreamWakeModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOverlayArcModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtOsgParticleSystemModel, makVrv::DtOsgOverlayArcModel, makVrv::DtOsgDecalModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgPolygonModel, makVrv::DtOsgAnimationModel, makVrv::DtOsgScribeBoxModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsgTacticalSmokeModel, makVrv::DtOsgSimpleModel, makVrv::DtOsgCylinderModel, makVrv::DtOsgPinnableProjectedWidgetModel, makVrv::DtOsgProjectedWidgetModel, makVrf::DtVrfOverlayEllipseArcModel, makVrv::DtMultiLineModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgAttachableCuboidModel, makVrv::DtOsgAttachableEllipsoidModel, makVrv::DtMovablePolygonModel, makVrv::DtOsgProjectedTextModel, makVrv::DtDeprecatedOsgArticulatedModel, makVrv::DtOsgArticulatingCylinderModel, makVrf::DtRadarCoverageModel, makVrv::DtOsgDrawModel, makVrv::DtOsg3DTextModel, and makVrv::DtExampleModel.
|
virtual |
Get the visible state of the model.
| true | if set visible. |
| false | otherwise. |
| DtUniqueID makVrv::DtModel::parentSceneObjectID | ( | ) | const |
Parent of the model.
|
virtual |
Called when a scene object added the model as a prop.
|
virtual |
Called when a scene object added the model with the given model set and visualizer type.
|
virtual |
Called when the element ID of the model's parent object is set.
No-op by default
Reimplemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgSimpleModel, makVrv::DtDeprecatedOsgSimpleModel, and makVrv::DtDeprecatedOsgArticulatedModel.
|
virtual |
Called when the model was removed from a scene object.
|
pure virtual |
Is this model part of the support group? (determines whether or not other scene objects can ground clamp to this model)
Implemented in makVrv::DtOsgArticulatedModel, makVrv::DtDiGuyCharacterModel, makVrv::DtOsgOverlaySpiderWebModel, makVrv::DtOsgOverlayWedgeModel, makVrv::DtTritonWakeModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtOsgOverlayArcModel, makVrv::DtDummyCharacterModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtRectangularPyramidModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtMultiLineModel, makVrv::DtOsgRibbonModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtTritonTidalStreamWakeModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsgSimpleModel, makVrv::DtOsgParticleSystemModel, makVrv::DtOsgExtrudedPolygonModel, makVrf::DtRadarCoverageModel, makVrv::DtDeprecatedOsgArticulatedModel, makVrv::DtTritonWaterImpactModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgDecalModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtOsgPolygonModel, makVrv::DtRotorWashModel, makVrv::DtOsgAnimationModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOsgOverlayRectangleModel, makVrv::DtOsgScribeBoxModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgTacticalSmokeModel, makVrv::DtOsgAttachableCuboidModel, makVrv::DtOsgAttachableEllipsoidModel, makVrv::DtOsgCylinderModel, makVrv::DtOsgPinnableProjectedWidgetModel, makVrv::DtOsgArticulatingCylinderModel, makVrv::DtOsgProjectedWidgetModel, makVrv::DtFxParticleCollisionObjectModel, makVrv::DtOsg3DTextModel, makVrv::DtOsgProjectedTextModel, makVrv::DtOsgDrawModel, and makVrv::DtExampleModel.
|
virtual |
Set whether or not other this model is drawn filled in.
Reimplemented in makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::Dt2DVolumetricLineModel, makVrv::Dt3DVolumetricLineModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOsgOverlayRectangleModel, and makVrv::DtExampleModel.
|
virtual |
Return whether or not this model was added as a prop.
|
inlinevirtual |
can be quickly overridden to disable background loading
Reimplemented in makVrv::DtArticulatedModel, makVrv::DtParticleSystemModel, and makVrv::DtAnimationModel.
|
inlinevirtual |
the chunk of loading that can safely happen in the background
Reimplemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgParticleSystemModel, and makVrv::DtOsgAnimationModel.
|
inlinevirtual |
the chunk of loading that must happen happen in the foreground, adding to scene graph etc.
Reimplemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgParticleSystemModel, and makVrv::DtOsgAnimationModel.
|
virtual |
is this being actively loaded (it has a myInLoadQueueHandle object and it's loading)
|
virtual |
returns the load queue object
|
virtual |
updates the closest distance to an observer over the last frame
|
virtual |
resets the closest distance to an observer
|
virtual |
gets the closest distance to an observer last frame
|
protectedpure virtual |
Virtual Functions to be implemented, add this model to the scene.
Implemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgOverlaySpiderWebModel, makVrv::DtOsgOverlayWedgeModel, makVrv::DtTritonWakeModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgOverlayArcModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtDiGuyCharacterModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtDeprecatedOsgArticulatedModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgOverlayRectangleModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsgPolygonModel, makVrv::DtMultiLineModel, makVrv::DtOsgParticleSystemModel, makVrv::DtOsgTacticalSmokeModel, makVrv::DtOsgScribeBoxModel, makVrv::DtOsgAnimationModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtTritonTidalStreamWakeModel, makVrv::DtOsgSimpleModel, makVrv::DtTritonWaterImpactModel, makVrf::DtRadarCoverageModel, makVrv::DtOsgAttachableCuboidModel, makVrv::DtOsgAttachableEllipsoidModel, makVrv::DtRotorWashModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgCylinderModel, makVrv::DtOsgArticulatingCylinderModel, makVrv::DtOsgRibbonModel, makVrf::DtVrfOverlayEllipseArcModel, makVrv::DtOsg3DTextModel, makVrv::DtOsgDecalModel, makVrv::DtOsgProjectedTextModel, makVrv::DtFxParticleCollisionObjectModel, makVrv::DtOsgRotorWashModel, makVrv::DtExampleModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtOsgDrawModel, makVrv::DtDummyCharacterModel, makVrv::DtOsgPinnableProjectedWidgetModel, and makVrv::DtOsgProjectedWidgetModel.
|
inlineprotectedvirtual |
Add this model to the scene as a prop. All models are not required to re-implement this.
Reimplemented in makVrv::DtOsgParticleSystemModel, makVrv::DtOsgScribeBoxModel, makVrv::DtOsgSimpleModel, and makVrv::DtDeprecatedOsgSimpleModel.
|
protectedpure virtual |
Virtual Functions to be implemented, remove this model from the scene.
Implemented in makVrv::DtOsgArticulatedModel, makVrv::DtOsgOverlaySpiderWebModel, makVrv::DtOsgOverlayWedgeModel, makVrv::DtTritonWakeModel, makVrv::DtOsgExtrudedEllipseModel, makVrv::DtOsgExtrudedPolygonModel, makVrv::DtOsgOverlayArcModel, makVrv::DtOsgExtrudedLineModel, makVrv::DtDiGuyCharacterModel, makVrv::DtOsgOverlayGreatCircleArcModel, makVrv::DtOsgEllipsoidArcModel, makVrv::DtOsg3DGreatCircleArcModel, makVrv::DtOsg3DVolumetricLineModel, makVrv::DtDeprecatedOsgArticulatedModel, makVrv::DtOsgOverlayPolygonModel, makVrv::DtOsg3DSegmentedLineModel, makVrv::DtOsgOverlayDirectionLineModel, makVrv::DtOsgOverlayRectangleModel, makVrv::DtOsgOverlaySegmentedLineModel, makVrv::DtOsgOverlayEllipseArcModel, makVrv::DtOsgPolygonModel, makVrv::DtOsgParticleSystemModel, makVrv::DtMultiLineModel, makVrv::DtOsgTacticalSmokeModel, makVrv::DtOsgAnimationModel, makVrv::DtOsgScribeBoxModel, makVrv::DtOsgSimpleModel, makVrv::DtTritonTidalStreamWakeModel, makVrv::DtOsg2DVolumetricLineModel, makVrv::DtTritonWaterImpactModel, makVrf::DtRadarCoverageModel, makVrv::DtDeprecatedOsgSimpleModel, makVrv::DtOsgAttachableCuboidModel, makVrv::DtOsgAttachableEllipsoidModel, makVrv::DtRotorWashModel, makVrv::DtOsgCylinderModel, makVrv::DtOsgArticulatingCylinderModel, DtVrfDeprecatedOsgArticulatedModel, makVrv::DtOsgRibbonModel, makVrv::DtOsgDecalModel, makVrv::DtOsg3DTextModel, makVrv::DtOsgProjectedTextModel, makVrv::DtFxParticleCollisionObjectModel, makVrv::DtOsgRotorWashModel, makVrv::DtExampleModel, makVrv::DtOsgRectangularPyramidModel, makVrv::DtOsgDrawModel, makVrv::DtDummyCharacterModel, makVrv::DtOsgPinnableProjectedWidgetModel, makVrv::DtOsgProjectedWidgetModel, and DtVrfOsgArticulatedModel.
|
protectedvirtual |
Push any state maintained by the model to the model instance.
Reimplemented in makVrv::DtOsgRibbonModel, makVrv::DtOsgDecalModel, and makVrv::DtOsgDrawModel.
|
protected |
Called when the model instance changed.
|
protectedvirtual |
avoids race condition, on destruction subclasses need to wait for the model to cleanly finish loading this can happen if an object times in and out very quickly
|
protectedvirtual |
deletes the myInLoadQueueHandle handle
|
protectedvirtual |
called by async task, updates myCurrentlyLoading atomic
|
protectedvirtual |
called right before tbb task creation
|
private |
Delete the model instance (and emit signal_modelToBeDestroyed)
|
friend |
|
friend |
| boost::signalslib::signal<void (DtModel*)> makVrv::DtModel::signal_modelToBeDestroyed |
Signal emitted when the model is to be destroyed.
| boost::signalslib::signal<void (DtModel*)> makVrv::DtModel::signal_modelChanged |
| boost::signalslib::signal<bool (DtModel*,bool ), SlotReturnOR> makVrv::DtModel::signal_visibilityChangeRequested |
Signal when the visibility has been requested, if any slot returns false, it will not change.
| boost::signalslib::signal<void (DtModelInstance*, DtModel*)> makVrv::DtModel::signal_modelInstanceCreated |
Signal emitted when the model instance is created.
| boost::signalslib::signal<void (DtModelInstance*, DtModel*)> makVrv::DtModel::signal_modelInstanceToBeDestroyed |
Signal emitted when the model instance is to be destroyed.
|
protected |
|
staticprotected |
|
protected |
|
protected |
The unique id is constant after initialization.
|
protected |
The color blending enabled is needed to be set by the derived class so it doesn't get down to the model instances when instancing is enabled.
|
protected |
holds the model created in the background for a bit
|
protected |
last frames mimimal distance to the camera, calculated by the instancing system
|
protected |
We keep our own copy in case we get updates before we get a model instance.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |