};
class Mesh {
+protected:
+ bool vdata_valid;
+
public:
std::vector<uint16_t> indices;
std::vector<Vec3> vertices;
std::vector<Vec2> tex_coords;
std::string name;
- unsigned int mat_idx;
-
Mesh();
virtual ~Mesh() = 0;
virtual void draw() const = 0;
+ virtual void draw_normals(float scale) const = 0;
virtual void update_vertex_data() = 0;
+ virtual void transform(const Mat4 &mat);
+ virtual void invalidate();
};
#endif // MESH_H_
\ No newline at end of file