VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes
makVrv::DtDiGuyOsgRootNode Class Reference

Custom per character root node that does custom traversals and short circuits osg lod picking. More...

Inheritance diagram for makVrv::DtDiGuyOsgRootNode:
Inheritance graph
[legend]

Public Member Functions

 DtDiGuyOsgRootNode (DtDiGuyOsgGraphicsLink *link)
 CTOR. More...
 
virtual ~DtDiGuyOsgRootNode ()
 DTOR. More...
 
virtual void unbuild ()
 called by link::unbuild() More...
 
virtual void traverse (osg::NodeVisitor &nv)
 override of base osg code More...
 
void add_geode_for_fast_draw (diguyGraphicsShape *shape, osg::Geode *geode, int lod)
 caches a drawable for drawing quickly More...
 
void add_switch_for_fast_draw (diguyGraphicsShape *shape, osg::Switch *switch_node, int lod)
 adding a switch for fast drawing More...
 
void remove_shape (DtDiGuyOsgGraphicsShape *shape)
 cleans up geodes and shapes More...
 
virtual void setOctreeNode (DtOctreeNode< float64 > *node)
 set octree node associated with this character More...
 
virtual DtOctreeNode< float64 > * octreeNode () const
 gets octree node associated with this character More...
 
virtual void setScenario (DtDiGuyScenario *scenario)
 set DtDiGuyScenario object associated with this character More...
 
virtual DtDiGuyScenarioscenario ()
 get DtDiGuyScenario object associated with this character More...
 
virtual void setPositionAndOrientation (const DtVector &pos, const DtTaitBryan &orient)
 updates myWorldPosition, myWorldOrientation, myQuat, doesn't do anything else More...
 
virtual void setIsOccupant (bool occ)
 is this a non-moving character in a vehicle More...
 
diguyCharacter * character ()
 gets diguy character More...
 
const DtVectorposition ()
 perf critical position of character More...
 
const DtTaitBryan & orientation ()
 vrv orientation More...
 
const osg::Quat & quat ()
 cached osg style orientation More...
 
bool isOccupant ()
 is this a fake person in a vehicle More...
 
void setLastTraversal (unsigned int lastTrav)
 used to figure out if the character has been visited yet this frame. More...
 
unsigned int lastTraversal ()
 used to figure out if the character has been visited yet this frame. More...
 

Protected Attributes

std::vector< std::vector
< diguyOsgGraphicsShapeSwitchPair > > 
m_switch_nodes
 
std::vector< std::vector
< diguyOsgGraphicsShapeGeodePair > > 
m_lod_drawables
 
DtDiGuyOsgGraphicsLinkm_link
 
unsigned int myLastTraversal
 
float myMinDrawDistance
 
bool myOccupant
 
DtOctreeNode< float64 > * myOctreeNode
 
DtDiGuyScenariomyScenario
 
DtVector myWorldPosition
 
DtTaitBryan myWorldOrientation
 
osg::Quat myQuat
 

Detailed Description

Custom per character root node that does custom traversals and short circuits osg lod picking.

Constructor & Destructor Documentation

makVrv::DtDiGuyOsgRootNode::DtDiGuyOsgRootNode ( DtDiGuyOsgGraphicsLink link)

CTOR.

virtual makVrv::DtDiGuyOsgRootNode::~DtDiGuyOsgRootNode ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtDiGuyOsgRootNode::unbuild ( )
virtual

called by link::unbuild()

virtual void makVrv::DtDiGuyOsgRootNode::traverse ( osg::NodeVisitor &  nv)
virtual

override of base osg code

void makVrv::DtDiGuyOsgRootNode::add_geode_for_fast_draw ( diguyGraphicsShape shape,
osg::Geode *  geode,
int  lod 
)

caches a drawable for drawing quickly

void makVrv::DtDiGuyOsgRootNode::add_switch_for_fast_draw ( diguyGraphicsShape shape,
osg::Switch *  switch_node,
int  lod 
)

adding a switch for fast drawing

void makVrv::DtDiGuyOsgRootNode::remove_shape ( DtDiGuyOsgGraphicsShape shape)

cleans up geodes and shapes

virtual void makVrv::DtDiGuyOsgRootNode::setOctreeNode ( DtOctreeNode< float64 > *  node)
virtual

set octree node associated with this character

virtual DtOctreeNode<float64>* makVrv::DtDiGuyOsgRootNode::octreeNode ( ) const
virtual

gets octree node associated with this character

virtual void makVrv::DtDiGuyOsgRootNode::setScenario ( DtDiGuyScenario scenario)
virtual

set DtDiGuyScenario object associated with this character

virtual DtDiGuyScenario* makVrv::DtDiGuyOsgRootNode::scenario ( )
virtual

get DtDiGuyScenario object associated with this character

virtual void makVrv::DtDiGuyOsgRootNode::setPositionAndOrientation ( const DtVector pos,
const DtTaitBryan &  orient 
)
virtual

updates myWorldPosition, myWorldOrientation, myQuat, doesn't do anything else

virtual void makVrv::DtDiGuyOsgRootNode::setIsOccupant ( bool  occ)
inlinevirtual

is this a non-moving character in a vehicle

References myOccupant.

diguyCharacter* makVrv::DtDiGuyOsgRootNode::character ( )

gets diguy character

const DtVector& makVrv::DtDiGuyOsgRootNode::position ( )
inline

perf critical position of character

References myWorldPosition.

const DtTaitBryan& makVrv::DtDiGuyOsgRootNode::orientation ( )
inline

vrv orientation

References myWorldOrientation.

const osg::Quat& makVrv::DtDiGuyOsgRootNode::quat ( )
inline

cached osg style orientation

References myQuat.

bool makVrv::DtDiGuyOsgRootNode::isOccupant ( )
inline

is this a fake person in a vehicle

References myOccupant.

void makVrv::DtDiGuyOsgRootNode::setLastTraversal ( unsigned int  lastTrav)
inline

used to figure out if the character has been visited yet this frame.

References myLastTraversal.

unsigned int makVrv::DtDiGuyOsgRootNode::lastTraversal ( )
inline

used to figure out if the character has been visited yet this frame.

References myLastTraversal.

Member Data Documentation

std::vector<std::vector<diguyOsgGraphicsShapeSwitchPair> > makVrv::DtDiGuyOsgRootNode::m_switch_nodes
protected
std::vector<std::vector<diguyOsgGraphicsShapeGeodePair> > makVrv::DtDiGuyOsgRootNode::m_lod_drawables
protected
DtDiGuyOsgGraphicsLink* makVrv::DtDiGuyOsgRootNode::m_link
protected
unsigned int makVrv::DtDiGuyOsgRootNode::myLastTraversal
protected

Referenced by lastTraversal(), and setLastTraversal().

float makVrv::DtDiGuyOsgRootNode::myMinDrawDistance
protected
bool makVrv::DtDiGuyOsgRootNode::myOccupant
protected

Referenced by isOccupant(), and setIsOccupant().

DtOctreeNode<float64>* makVrv::DtDiGuyOsgRootNode::myOctreeNode
protected
DtDiGuyScenario* makVrv::DtDiGuyOsgRootNode::myScenario
protected
DtVector makVrv::DtDiGuyOsgRootNode::myWorldPosition
protected

Referenced by position().

DtTaitBryan makVrv::DtDiGuyOsgRootNode::myWorldOrientation
protected

Referenced by orientation().

osg::Quat makVrv::DtDiGuyOsgRootNode::myQuat
protected

Referenced by quat().


The documentation for this class was generated from the following file:

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)