fixed terrain tiles generation
[demo] / src / mesh.cc
index 340263a..fde7ac4 100644 (file)
@@ -1,10 +1,28 @@
 #include "mesh.h"
 
-Mesh::Mesh() {}
+Mesh::Mesh()
+{
+       vdata_valid = false;
+}
 
 Mesh::~Mesh()
 {
        indices.clear();
        vertices.clear();
        normals.clear();
+}
+
+void Mesh::transform(const Mat4 &mat)
+{
+       Mat4 normal_mat = mat.upper3x3();
+       for(size_t i=0; i<vertices.size(); i++) {
+               vertices[i] = mat * vertices[i];
+               normals[i] = normal_mat * normals[i];
+       }
+       invalidate();
+}
+
+void Mesh::invalidate()
+{
+       vdata_valid = false;
 }
\ No newline at end of file