Public Member Functions | |
void | load (const std::string &filename) |
void | draw (const std::vector< cpe::v3 > &skel_pos, const std::vector< cpe::quaternion > &skel_orient, bool update) |
void | draw_cpu (const std::vector< cpe::v3 > &skel_pos, const std::vector< cpe::quaternion > &skel_orient, bool update) |
void | setup_shader (const std::string &vertex_shader, const std::string &fragment_shader) |
Private Attributes | |
GLint | weight0_index |
GLint | weight1_index |
GLint | weight2_index |
GLint | weight3_index |
GLint | bones_index |
GLuint | program |
GLuint | vbo_weights |
GLuint | vbo_bones |
GLuint | vbo_textures |
GLuint | vbo_indices |
std::vector< AnimatedVertex > | vertices |
std::vector< GLuint > | indices |
std::vector< GLfloat > | tex_coords |
std::vector< GLfloat > | vertex_attrib0123 |
std::vector< GLfloat > | vertex_attrib4 |
void AnimatedMesh::draw | ( | const std::vector< cpe::v3 > & | skel_pos, | |
const std::vector< cpe::quaternion > & | skel_orient, | |||
bool | update | |||
) |
References bones_index, get_uni_loc(), indices, program, weight0_index, weight1_index, weight2_index, and weight3_index.
Referenced by display(), draw_cpu(), and draw_scene().
void AnimatedMesh::draw_cpu | ( | const std::vector< cpe::v3 > & | skel_pos, | |
const std::vector< cpe::quaternion > & | skel_orient, | |||
bool | update | |||
) |
References cpe::mesh::add_vertex(), draw(), cpe::mesh::get_connectivity(), cpe::mesh::get_texture(), indices, mesh, cpe::mesh::normal_polygon(), tex_coords, vertex_attrib0123, vertex_attrib4, and vertices.
Referenced by draw_scene().
void AnimatedMesh::load | ( | const std::string & | filename | ) |
References indices, tex_coords, vertex_attrib0123, vertex_attrib4, and vertices.
Referenced by load_model(), and main().
void AnimatedMesh::setup_shader | ( | const std::string & | vertex_shader, | |
const std::string & | fragment_shader | |||
) |
References bones_index, BUFFER_OFFSET, get_uni_loc(), indices, program, read_shader(), tex_coords, vbo_bones, vbo_indices, vbo_textures, vbo_weights, vertex_attrib0123, vertex_attrib4, vertices, weight0_index, weight1_index, weight2_index, and weight3_index.
Referenced by load_model().
GLint AnimatedMesh::bones_index [private] |
Referenced by draw(), and setup_shader().
std::vector<GLuint> AnimatedMesh::indices [private] |
Referenced by draw(), draw_cpu(), load(), and setup_shader().
GLuint AnimatedMesh::program [private] |
Referenced by draw(), and setup_shader().
std::vector<GLfloat> AnimatedMesh::tex_coords [private] |
Referenced by draw_cpu(), load(), and setup_shader().
GLuint AnimatedMesh::vbo_bones [private] |
Referenced by setup_shader().
GLuint AnimatedMesh::vbo_indices [private] |
Referenced by setup_shader().
GLuint AnimatedMesh::vbo_textures [private] |
Referenced by setup_shader().
GLuint AnimatedMesh::vbo_weights [private] |
Referenced by setup_shader().
std::vector<GLfloat> AnimatedMesh::vertex_attrib0123 [private] |
Referenced by draw_cpu(), load(), and setup_shader().
std::vector<GLfloat> AnimatedMesh::vertex_attrib4 [private] |
Referenced by draw_cpu(), load(), and setup_shader().
std::vector<AnimatedVertex> AnimatedMesh::vertices [private] |
Referenced by draw_cpu(), load(), and setup_shader().
GLint AnimatedMesh::weight0_index [private] |
Referenced by draw(), and setup_shader().
GLint AnimatedMesh::weight1_index [private] |
Referenced by draw(), and setup_shader().
GLint AnimatedMesh::weight2_index [private] |
Referenced by draw(), and setup_shader().
GLint AnimatedMesh::weight3_index [private] |
Referenced by draw(), and setup_shader().