14 #ifndef __diguyGraphicsMesh_H
15 #define __diguyGraphicsMesh_H
20 #define CPLUSPLUS_ONLY
34 class bdiGeometryMesh;
49 m_allow_instancing(1),
71 int m_allow_instancing;
119 const char* get_name();
172 int get_num_switched_graphics_states();
196 int get_is_skinned_mesh();
204 int get_is_blend_shape();
216 void free_loader_memory();
299 int get_vertex_count();
307 int get_vertex_buffer_size();
319 int get_num_blend_shapes();
321 #ifdef CPLUSPLUS_ONLY
337 void* get_vertex_buffer_data();
366 float* get_first_vertex();
394 int get_vertex_offset();
414 int get_vertex_stride();
422 float* get_first_normal();
430 int get_normal_offset();
438 float* get_first_texture_indices();
446 int get_texture_indices_offset();
455 float* get_first_link_index();
463 int get_link_index_offset();
472 float* get_first_link_weight();
480 int get_link_weight_offset();
498 float* get_first_tangent();
506 int get_tangent_offset();
546 int get_index_count();
548 #ifdef CPLUSPLUS_ONLY
556 int get_index_buffer_size();
569 void* get_index_buffer_data();
586 #ifdef CPLUSPLUS_ONLY
612 virtual void build();
635 virtual void unbuild();
697 int get_bounding_box(
float * bbox_min_x,
float * bbox_min_y,
float * bbox_min_z,
698 float * bbox_max_x,
float * bbox_max_y,
float * bbox_max_z);
715 int get_normal_stride(){
return get_vertex_stride(); }
716 int get_texture_indices_stride(){
return get_vertex_stride(); }
717 int get_tangent_stride(){
return get_vertex_stride(); }
718 int get_link_weight_stride(){
return get_vertex_stride(); }
719 int get_link_index_stride(){
return get_vertex_stride(); }
747 int get_is_deformable();
752 #ifdef CPLUSPLUS_ONLY
754 bdiGeometryMesh* get_internal_data() {
return m_mesh;}
775 bdiGeometryMesh* m_mesh;
777 friend class bdiGeometryGeosetMesh;
778 friend class bdiGeometryMesh;
779 friend class bdiGeometryFactory;
780 friend class diguyGraphicsMeshArray;
A class that represents the unique per-character shader object.
Definition: diguyGraphicsShaderInstance.h:55
A class that represents a shared material/textures combination.
Definition: diguyGraphicsState.h:45
A class that represents a shared texture.
Definition: diguyGraphicsTexture.h:135
A class that represents a shared mesh object.
Definition: diguyGraphicsMesh.h:92
diguyGraphicsIndexType
This enumeration lists the type that indices stored in index buffer data might have.
Definition: diguyGraphicsVertexFormats.h:114
A struct that represents the information that diguy puts together for an immediate mode draw call...
Definition: diguyGraphicsMesh.h:42
A class that represents the unique per-character non-shared mesh object. DI-Guy encapsulates its text...
Definition: diguyGraphicsShape.h:51
This class implements shader programs for use with DI-Guy character graphics.
Definition: diguyGraphicsShaderProgram.h:96
diguyGraphicsVertexFormat
This enumeration lists types of vertex data formats DI-Guy may use.
Definition: diguyGraphicsVertexFormats.h:78