912257c51adc6f22cc9735907c5a2c6234168cbc
[demo] / src / opengl / mesh-gl.h
1 #ifndef MESH_GL_H_
2 #define MESH_GL_H_
3
4 #include "mesh.h"
5
6 class MeshGL : public Mesh {
7 private:
8         unsigned int vao;
9
10         unsigned int vbo_vertices;
11         unsigned int vbo_normals;
12         unsigned int ibo;
13
14         int num_vertices;
15         int num_indices;
16
17 public:
18         MeshGL();
19         MeshGL(const MeshGL &mesh);
20         MeshGL& operator=(const MeshGL &mesh);
21
22         virtual ~MeshGL();
23
24         // virtual void draw() const override;
25         virtual void update_vertex_data() override;
26
27         void update_vbo();
28         void destroy_vbo();
29 };
30
31 #endif // MESH_GL_H_