DI-Guy SDK Documentation  13.1
diguyOsgGraphicsMesh Class Reference

#include <diguyOsgGraphicsMesh.h>

Inheritance diagram for diguyOsgGraphicsMesh:
diguyGraphicsMesh

Public Member Functions

 diguyOsgGraphicsMesh (void *internal_data)
 4 Header files and forward declarations More...
 
virtual void build ()
 This function will be called by DI-Guy when it is time for a renderer-specific mesh object to be created. More...
 
virtual void unbuild ()
 This function will be called by DI-Guy when it is time for a renderer-specific mesh object to be destroyed. More...
 
osg::PrimitiveSet * get_primitiveSet ()
 
int get_num_drawables ()
 
osg::Drawable * get_drawable (int drawable_index)
 
- Public Member Functions inherited from diguyGraphicsMesh
const char * get_name ()
 Returns the name of the mesh. More...
 
long get_uid ()
 All meshs are assigned a unique identifer (uid). More...
 
diguyGraphicsStateget_state (int graphics_state_switch_index=0)
 This function returns the graphics state with which faces in this mesh should be drawn. More...
 
diguyGraphicsStateget_current_graphics_state ()
 This function returns the last bound graphic state object this mesh used. More...
 
int get_num_switched_graphics_states ()
 This function returns the number of switched graphics states this mesh has. More...
 
int get_is_skinned_mesh ()
 This function returns whether or not the mesh is "skinned". More...
 
int get_is_deformable ()
 This function returns whether or not the mesh is deformable. More...
 
void free_loader_memory ()
 This function frees most memory allocated by the DI-Guy geometry loader for this object. More...
 
diguyGraphicsShaderProgramget_shader_program ()
 This function returns a pointer to the shader program designated for this mesh, if any. More...
 
diguyGraphicsShaderInstanceget_shader_instance ()
 If this mesh has a shader program specified (see get_shader_program()), this function returns a pointer to the shader instance object specific to this mesh. More...
 
diguyGraphicsVertexFormat get_vertex_format ()
 Returns: vertex format that describes the format of the data returned by the get_vertex_buffer_data() function. More...
 
int get_vertex_count ()
 Returns: how many vertices this mesh has. More...
 
int get_vertex_buffer_size ()
 Returns: size, in bytes, of the data buffer returned by get_vertex_buffer_data() More...
 
void * get_vertex_buffer_data ()
 This function returns a pointer to the raw vertex buffer data of this mesh. More...
 
float * get_first_vertex ()
 This function returns a pointer to vertex position data of the first vertex in the raw vertex buffer data returned by get_vertex_buffer_data(). More...
 
int get_vertex_offset ()
 This function returns how many bytes the first vertex position is into the raw vertex buffer data returned by get_vertex_buffer_data(). More...
 
int get_vertex_stride ()
 This function returns how many bytes there are between each vertex position in the raw data returned by get_vertex_buffer_data(). More...
 
float * get_first_normal ()
 Returns: pointer to normal of first vertex in vertex buffer data; see get_first_vertex() for more information. More...
 
int get_normal_offset ()
 Returns: offset in bytes of the first normal in raw vertex buffer data; see get_vertex_offset() for more information. More...
 
int get_normal_stride ()
 Returns: stride in bytes between each normal in raw vertex buffer data; see get_vertex_stride() for more information. More...
 
float * get_first_texture_indices ()
 Returns: pointer to texture indices of first vertex in vertex buffer data. More...
 
int get_texture_indices_offset ()
 Returns: offset in bytes of the first texture indices in raw vertex buffer data; see get_vertex_offset() for more information. More...
 
int get_texture_indices_stride ()
 Returns: stride in bytes between each texture indices pair in raw vertex buffer data; see get_vertex_stride() for more information. More...
 
float * get_first_link_index ()
 Returns: pointer to link index of first vertex in vertex buffer data, in float form. More...
 
int get_link_index_offset ()
 Returns: offset in bytes of the first link index in raw vertex buffer data; see get_vertex_offset() for more information. More...
 
int get_link_index_stride ()
 Returns: stride in bytes between each link index in raw vertex buffer data; see get_vertex_stride() for more information. More...
 
float * get_first_link_weight ()
 Returns: pointer to link weight of first vertex in vertex buffer data. More...
 
int get_link_weight_offset ()
 Returns: offset in bytes of the first link offset in raw vertex buffer data; see get_vertex_offset() for more information. More...
 
int get_link_weight_stride ()
 Returns: stride in bytes between each link weight in raw vertex buffer data; see get_vertex_stride() for more information. More...
 
float * get_first_tangent ()
 Returns a pointer to the UV tangent and flip bit of first vertex in the vertex buffer data. More...
 
int get_tangent_offset ()
 Returns: offset in bytes of the first tangent in raw vertex buffer data; see get_vertex_offset() for more information. More...
 
int get_tangent_stride ()
 Returns: stride in bytes between each tangent in raw vertex buffer data; see get_vertex_stride() for more information. More...
 
diguyGraphicsIndexType get_index_type ()
 Returns: index type used in data returned by the get_index_buffer_data() function. More...
 
int get_index_count ()
 This function returns how many indices there are in this mesh. More...
 
int get_index_buffer_size ()
 Returns: size, in bytes, of the data buffer returned by get_index_buffer_data() More...
 
void * get_index_buffer_data ()
 This function returns a pointer to the raw index buffer data of this mesh. More...
 
virtual void draw ()
 This function will be called by DI-Guy when the mesh should be drawn. More...
 
int get_vertex_info (int *num_vertices, float **vertex_array, float **normal_array, float **texture_array, int *index_array_size, unsigned short **index_array)
 Deprecated as of 10.0.0; use Geometry Data Accessor Functions instead. More...
 
virtual void draw_instance_group (int num_instances)
 This function will be called by DI-Guy when the mesh for and instance group should be drawn. More...
 
diguyGraphicsMeshInternalDataget_internal_data ()
 

Protected Member Functions

void attach_state_set_to_drawable (int drawable_index)
 
- Protected Member Functions inherited from diguyGraphicsMesh
 diguyGraphicsMesh (void *internal_data)
 A protected constructor. More...
 
virtual ~diguyGraphicsMesh ()
 A protected destructor. More...
 

Protected Attributes

osg::ref_ptr< osg::PrimitiveSet > m_primitiveSet
 
std::vector< osg::ref_ptr< osg::Drawable > > m_drawables
 
std::vector< bool > m_has_graphics_state_set
 

Constructor & Destructor Documentation

diguyOsgGraphicsMesh::diguyOsgGraphicsMesh ( void *  internal_data)

4 Header files and forward declarations

Member Function Documentation

void diguyOsgGraphicsMesh::build ( )
virtual

This function will be called by DI-Guy when it is time for a renderer-specific mesh object to be created.

All information necessary to build the mesh should be available via the Accessor Functions above when this function is called.

Immediate Mode:

Immediate mode renderers may override this function, to create an object that may be invoked by draw().

Scene Graph:

Scene graph renderers usually do override this function, to create a geometry object that gets associated with a diguyGraphicsState object obtained by calling get_state().

Callable From:

  • N/A (automatically called by DI-Guy Graphics API during the Build Stage)

Reimplemented from diguyGraphicsMesh.

void diguyOsgGraphicsMesh::unbuild ( )
virtual

This function will be called by DI-Guy when it is time for a renderer-specific mesh object to be destroyed.

Immediate Mode:

Immediate mode renderers may override this function, to destroy any object that may have been created by build().

Scene Graph:

Scene graph renderers usually do override this function, to destroy any object that may have been created by build().

Callable From:

  • N/A (automatically called by DI-Guy Graphics API during the Unbuild Stage)

Reimplemented from diguyGraphicsMesh.

osg::PrimitiveSet* diguyOsgGraphicsMesh::get_primitiveSet ( )
inline
int diguyOsgGraphicsMesh::get_num_drawables ( )
osg::Drawable * diguyOsgGraphicsMesh::get_drawable ( int  drawable_index)
void diguyOsgGraphicsMesh::attach_state_set_to_drawable ( int  drawable_index)
protected

Member Data Documentation

osg::ref_ptr<osg::PrimitiveSet> diguyOsgGraphicsMesh::m_primitiveSet
protected
std::vector<osg::ref_ptr<osg::Drawable> > diguyOsgGraphicsMesh::m_drawables
protected
std::vector<bool> diguyOsgGraphicsMesh::m_has_graphics_state_set
protected

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