VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
makVrv::DtDiGuyOsgGraphicsShape Class Reference

Override of diguyGraphicsShape to create OSG geometry for DI-Guy shapes.

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

Public Member Functions

 DtDiGuyOsgGraphicsShape (void *internal_data)
 
virtual ~DtDiGuyOsgGraphicsShape ()
 
virtual void build () override
 
virtual void unbuild () override
 
virtual void show () override
 
virtual void hide () override
 
virtual void set_graphics_lod_ranges (float *lodRanges) override
 
virtual void update_variation_texture (int num_pixels, unsigned char *pixel_data) override
 
virtual void update () override
 
virtual void update_name_texture () override
 
virtual osg::Node * rootNode ()
 
virtual osg::StateSet * stateSet ()
 
virtual osg::StateSet * parentStateSet ()
 
virtual void setAdditionalTboData (const std::vector< float > &tboData)
 
virtual const std::vector
< float > & 
getAdditionalTboData ()
 
virtual bool getHasSwitches ()
 
virtual
DtDiGuyOsgTextureAttribute * 
nameTexture ()
 

Static Public Member Functions

static const osg::ref_ptr
< osg::Texture2D > & 
getVariationTexture2D ()
 
static void releaseGLObjects ()
 

Static Public Attributes

static charUniformLinkMatricesString
 

Protected Member Functions

virtual void create_name_texture ()
 
virtual void create_shared_variation_texture ()
 
virtual void create_variation_texture (unsigned char *variation_texture_data)
 
virtual osg::Geode * create_geode (const char *shape_set_name, bool flash)
 

Protected Attributes

friend DtDiGuyNameTextureDrawCallback
 
std::vector< osg::ref_ptr
< osg::Switch > > 
mySwitchNodeArray
 
osg::ref_ptr< osg::Uniform > myUniformLinkColor
 
osg::ref_ptr< osg::StateSet > myStateSet
 
osg::ref_ptr< osg::Uniform > myUniformLinkMatrix
 
osg::ref_ptr< osg::Uniform > myUniformLinkMatrices
 
osg::ref_ptr< osg::Uniform > myUniformComponentMapRow
 
osg::ref_ptr< osg::Uniform > myUniformPBRReady
 
osg::ref_ptr< osg::Uniform > myUniformDecalEnabled
 
osg::ref_ptr< osg::Uniform > myUniformDecalIndex
 
osg::ref_ptr< osg::Uniform > myUniformLodFade
 
osg::ref_ptr< osg::Uniform > myUniformBlendWeights
 
osg::ref_ptr< osg::Uniform > myUniformBlendIndecies
 
std::vector< float > myAdditionalTboData
 
osg::ref_ptr< osg::Group > myGeodeGroup
 
std::vector< osg::Geode * > m_geodes
 
diguyCharacter * myCharacter
 
bool myNeedsTextureUpdate
 
std::vector< diguyOsgMeshOffsetsm_offset_array
 
DtDiGuyOsgTextureAttribute * myNameTexture
 

Static Protected Attributes

static bool UsePixelLods
 
static osg::ref_ptr
< osg::Texture2D > 
sm_variation_texture
 

Private Member Functions

 DtDiGuyOsgGraphicsShape (const DtDiGuyOsgGraphicsShape &)=delete
 
DtDiGuyOsgGraphicsShapeoperator= (const DtDiGuyOsgGraphicsShape &)=delete
 

Constructor & Destructor Documentation

makVrv::DtDiGuyOsgGraphicsShape::DtDiGuyOsgGraphicsShape ( void *  internal_data)

CTOR.

virtual makVrv::DtDiGuyOsgGraphicsShape::~DtDiGuyOsgGraphicsShape ( )
virtual

DTOR.

makVrv::DtDiGuyOsgGraphicsShape::DtDiGuyOsgGraphicsShape ( const DtDiGuyOsgGraphicsShape )
privatedelete

not allowed

Member Function Documentation

DtDiGuyOsgGraphicsShape& makVrv::DtDiGuyOsgGraphicsShape::operator= ( const DtDiGuyOsgGraphicsShape )
privatedelete

not allowed

virtual void makVrv::DtDiGuyOsgGraphicsShape::build ( )
overridevirtual

Create OSG geometry for the shape override diguyGraphicsShape::build.

virtual void makVrv::DtDiGuyOsgGraphicsShape::unbuild ( )
overridevirtual

Remove shape's OSG geometry from the scene graph override diguyGraphicsShape::unbuild.

virtual void makVrv::DtDiGuyOsgGraphicsShape::show ( )
overridevirtual

Make the shape visible override diguyGraphicsShape::show.

virtual void makVrv::DtDiGuyOsgGraphicsShape::hide ( )
overridevirtual

Make the shape hidden override diguyGraphicsShape::hide.

virtual void makVrv::DtDiGuyOsgGraphicsShape::set_graphics_lod_ranges ( float *  lodRanges)
overridevirtual

Override to set LOD ranges in OSG.

virtual void makVrv::DtDiGuyOsgGraphicsShape::update_variation_texture ( int  num_pixels,
unsigned char pixel_data 
)
overridevirtual

Override base class.

virtual void makVrv::DtDiGuyOsgGraphicsShape::update ( )
overridevirtual

Update the OSG scene graph with current DI-Guy state override diguyGraphicsShape::update.

virtual void makVrv::DtDiGuyOsgGraphicsShape::update_name_texture ( )
overridevirtual

trigger an update of decal texture override diguyGraphicsShape::update_name_texture

virtual osg::Node* makVrv::DtDiGuyOsgGraphicsShape::rootNode ( )
virtual

Returns a group that contains all the geodes for this shape. Called by DtDiGuyModelInstance::getShapeData to get a group that contains all the geodes Used by sensorFX to get the textures so that it can load the emat textures for a diguy.

virtual osg::StateSet* makVrv::DtDiGuyOsgGraphicsShape::stateSet ( )
virtual

access to the state set

virtual osg::StateSet* makVrv::DtDiGuyOsgGraphicsShape::parentStateSet ( )
virtual

access to the position link state set

virtual void makVrv::DtDiGuyOsgGraphicsShape::setAdditionalTboData ( const std::vector< float > &  tboData)
virtual

sets extra per shape data

virtual const std::vector<float>& makVrv::DtDiGuyOsgGraphicsShape::getAdditionalTboData ( )
virtual

gets extra per shape data

virtual bool makVrv::DtDiGuyOsgGraphicsShape::getHasSwitches ( )
virtual

is this a shape with switches, flashes, hands

virtual DtDiGuyOsgTextureAttribute* makVrv::DtDiGuyOsgGraphicsShape::nameTexture ( )
virtual

accessor for decal texture

static const osg::ref_ptr<osg::Texture2D>& makVrv::DtDiGuyOsgGraphicsShape::getVariationTexture2D ( )
static

accessor for variation texture

static void makVrv::DtDiGuyOsgGraphicsShape::releaseGLObjects ( )
static
virtual void makVrv::DtDiGuyOsgGraphicsShape::create_name_texture ( )
protectedvirtual

actually updates the texture in the draw loop via a callback

virtual void makVrv::DtDiGuyOsgGraphicsShape::create_shared_variation_texture ( )
protectedvirtual
virtual void makVrv::DtDiGuyOsgGraphicsShape::create_variation_texture ( unsigned char variation_texture_data)
protectedvirtual
virtual osg::Geode* makVrv::DtDiGuyOsgGraphicsShape::create_geode ( const char shape_set_name,
bool  flash 
)
protectedvirtual

Member Data Documentation

char* makVrv::DtDiGuyOsgGraphicsShape::UniformLinkMatricesString
static

Static name of the bone uniform.

friend makVrv::DtDiGuyOsgGraphicsShape::DtDiGuyNameTextureDrawCallback
protected
std::vector<osg::ref_ptr<osg::Switch> > makVrv::DtDiGuyOsgGraphicsShape::mySwitchNodeArray
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformLinkColor
protected
osg::ref_ptr<osg::StateSet> makVrv::DtDiGuyOsgGraphicsShape::myStateSet
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformLinkMatrix
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformLinkMatrices
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformComponentMapRow
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformPBRReady
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformDecalEnabled
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformDecalIndex
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformLodFade
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformBlendWeights
protected
osg::ref_ptr<osg::Uniform> makVrv::DtDiGuyOsgGraphicsShape::myUniformBlendIndecies
protected
std::vector<float> makVrv::DtDiGuyOsgGraphicsShape::myAdditionalTboData
protected
osg::ref_ptr<osg::Group> makVrv::DtDiGuyOsgGraphicsShape::myGeodeGroup
protected
std::vector<osg::Geode*> makVrv::DtDiGuyOsgGraphicsShape::m_geodes
protected
diguyCharacter* makVrv::DtDiGuyOsgGraphicsShape::myCharacter
protected
bool makVrv::DtDiGuyOsgGraphicsShape::myNeedsTextureUpdate
protected
std::vector< diguyOsgMeshOffsets> makVrv::DtDiGuyOsgGraphicsShape::m_offset_array
protected
DtDiGuyOsgTextureAttribute* makVrv::DtDiGuyOsgGraphicsShape::myNameTexture
protected
bool makVrv::DtDiGuyOsgGraphicsShape::UsePixelLods
staticprotected

Whether LOD calculations are based on distance from camera or pixel size in frame.

osg::ref_ptr<osg::Texture2D> makVrv::DtDiGuyOsgGraphicsShape::sm_variation_texture
staticprotected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)