buffer allocation
[demo] / src / vulkan / mesh-vk.h
1 #ifndef MESH_VK_H_
2 #define MESH_VK_H_
3
4 #include "mesh.h"
5 #include "vkutil.h"
6
7 class MeshVK : public Mesh {
8 private:
9         vku_buffer *vk_vertices;
10         vku_buffer *vk_normals;
11         vku_buffer *vk_tex_coords;
12         vku_buffer *vk_indices;
13
14         virtual bool update_vertex_data() override;
15 public:
16     MeshVK();
17         MeshVK(const MeshVK &mesh);
18         MeshVK& operator=(const MeshVK &mesh);
19
20         virtual ~MeshVK();
21         virtual void draw() const override;
22         virtual void draw_normals(float scale) const override;
23 };
24
25 #endif // MESH_VK_H_