DI-Guy SDK Documentation  13.2
diguyOglGraphicsMesh.h
Go to the documentation of this file.
1 #pragma once
2 
3 
4 // needed for function prototypes
5 #include <GL/glew.h>
6 #include <GL/gl.h>
7 
8 #include <diguyGraphicsMesh.h>
9 class diguyGraphicsVertexData;
10 
11 
28 {
29 
30 public:
31 
32  diguyOglGraphicsMesh(void* internal_data);
33 
34  virtual void build();
35  virtual void unbuild();
36  virtual void draw(diguyDrawCallData* draw_data);
37 
38  static int s_nverts;
39  static int s_ntris;
40  static int s_nvbos;
41 
42  static int s_ntris_drawn;
43  static int s_nverts_drawn;
44  static int s_nvbos_drawn;
45  static int s_skinned_vbos_drawn;
46  static int s_rigid_vbos_drawn;
47 
48 protected:
49 
50  virtual void draw_fixed_function_mesh();
51 
57 
59  GLuint m_index_buffer;
61 
62  GLenum m_gl_index_type;
63 
64 };
65 
66 
72 
diguyGraphicsMesh * diguyOglGraphicsMesh_create_func(void *internal_data)
Create function declaration.
Definition: diguyOglGraphicsMesh.cpp:624
GLuint m_index_buffer
Definition: diguyOglGraphicsMesh.h:57
static int s_nvbos_drawn
Definition: diguyOglGraphicsMesh.h:42
diguyOglGraphicsMesh(void *internal_data)
Definition: diguyOglGraphicsMesh.cpp:45
static int s_nverts_drawn
Definition: diguyOglGraphicsMesh.h:41
static int s_rigid_vbos_drawn
Definition: diguyOglGraphicsMesh.h:44
This class is part of the DI-Guy Graphics API.
Definition: diguyOglGraphicsMesh.h:25
int m_is_skinned_mesh
Variables for data generated during the Build Stage.
Definition: diguyOglGraphicsMesh.h:53
static int s_skinned_vbos_drawn
Definition: diguyOglGraphicsMesh.h:43
virtual void draw_fixed_function_mesh()
Definition: diguyOglGraphicsMesh.cpp:250
A class that represents a shared mesh object.
Definition: diguyGraphicsMesh.h:80
virtual void unbuild()
This function will be called by DI-Guy when it is time for a renderer-specific mesh object to be dest...
Definition: diguyOglGraphicsMesh.cpp:236
GLuint m_vertex_buffer
Definition: diguyOglGraphicsMesh.h:56
A struct that represents the information that diguy puts together for an immediate mode draw call...
Definition: diguyGraphicsMesh.h:42
GLuint m_vertex_array_object
Definition: diguyOglGraphicsMesh.h:58
GLenum m_gl_index_type
Definition: diguyOglGraphicsMesh.h:60
static int s_nvbos
Definition: diguyOglGraphicsMesh.h:38
int m_has_tangents
Definition: diguyOglGraphicsMesh.h:54
virtual void build()
This function will be called by DI-Guy when it is time for a renderer-specific mesh object to be crea...
Definition: diguyOglGraphicsMesh.cpp:84
static int s_nverts
Definition: diguyOglGraphicsMesh.h:36
virtual void draw(diguyDrawCallData *draw_data)
This function will be called by DI-Guy when the mesh should be drawn.
Definition: diguyOglGraphicsMesh.cpp:305
static int s_ntris_drawn
Definition: diguyOglGraphicsMesh.h:40
static int s_ntris
Definition: diguyOglGraphicsMesh.h:37