12 #include <osg/Version>
18 #include <diguyGraphicsInstanceGroup.h>
20 #include <osg/ref_ptr>
33 class DtGlTextureBufferObject;
53 virtual void unbuild();
55 virtual void update();
58 virtual void setInDrawlistFlag();
60 virtual void clearInDrawlistFlag();
72 inline bool usePBR() {
return m_pbr_enabled; }
85 inline osg::Texture2D*
normalTexture() {
return m_normal_texture.get(); }
87 inline osg::Texture2D*
specTexture() {
return m_spec_texture.get(); }
88 inline osg::Texture2DArray*
sensorTexture() {
return m_sensor_texture.get(); }
91 inline osg::Geometry*
geometry() {
return m_geometry.get(); }
94 inline osg::Geode *
geode() {
return m_geode.get(); }
int m_num_links
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:124
diguyGraphicsInstanceGroup * diguyOsgGraphicsInstanceGroup_create_func(void *internal_data)
bool hasEmatMap()
has sensor texture
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:70
int startLinkOffset()
where the animation data starts
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:79
int numLinks()
how many joints object has
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:74
bool hasTransparency()
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:66
bool m_has_spec_map
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:117
bool m_skinned_model
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:116
osg::Texture2D * diffuseTexture()
returns various textures, not guaranteed not to be null
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:84
osg::ref_ptr< osg::Texture2D > m_component_texture
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:108
osg::ref_ptr< osg::Texture2DArray > m_sensor_texture
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:110
int m_start_link_offset
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:126
osg::ref_ptr< osg::PrimitiveSet > m_primitiveSet
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:101
Contains DLL export macros.
osg::Group * m_dofStateSetGroup
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:112
int startBaseOffset()
where the base matrix starts
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:77
bool m_statesetsDirty
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:113
osg::Texture2D * normalTexture()
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:85
osg::Texture2DArray * sensorTexture()
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:88
bool m_has_emat_map
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:119
int m_start_base_offset
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:125
bool m_pbr_enabled
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:118
bool m_in_list
in drawable list, possibly removable after diguy sdk upgrade
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:130
osg::ref_ptr< osg::Texture2D > m_diffuse_texture
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:105
osg::Geometry * geometry()
underlying geometry accessors
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:91
osg::Texture2D * specTexture()
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:87
int m_num_instances
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:127
bool usePBR()
interpret spec map with PBR path
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:72
bool isSkinnedModel()
stuff that doesn't change: for skinned uniform
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:64
Contains DLL export macros.
osg::ref_ptr< osg::Geode > m_geode
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:99
osg::ref_ptr< osg::Texture2D > m_spec_texture
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:107
#define DT_DLL_VRVDIGUY
Definition: vrvDiGuy.h:21
osg::Geode * geode()
underlying geode, needed for uniform setup currently
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:94
osg::ref_ptr< osg::Geometry > m_geometry
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:100
osg::Texture2D * componentTexture()
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:86
int m_has_transparency
int because starts at -1 so we know we still need to look it up
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:122
bool hasSpecMap()
has spec texture
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:68
osg::ref_ptr< osg::Texture2D > m_normal_texture
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:106
This class is part of the DI-Guy Graphics API. It overrides the class diguyGraphicsInstanceGroup. Detailed documentation is in the implementation file documentation here.
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:44
int numInstances()
how many objects to draw.
Definition: DtDiGuyOsgGraphicsInstanceGroup.h:81