Commits

Anonymous committed ead95e6

VBO.bake now nulls vertices and sets baked flag

Comments (0)

Files changed (1)

src/main/java/sandbox/util/VBO.java

     public void bind() {
         if (!baked)
             bake();
-        size = vertices.size();
         if (positionBufferId != 0) {
             glBindBuffer(GL_ARRAY_BUFFER, positionBufferId);
             glVertexPointer(4, GL_FLOAT, 0, 0);
 
     public void bake() {
         assertNotBaked();
+
         if (vertices.size() == 0)
             throw new IllegalStateException("No vertices in VBO");
 
+        size = vertices.size();
         Vertex templateVertex = vertices.get(0);
         if (templateVertex.position != null)
             bakePositions();
         if (templateVertex.texCoord != null)
             bakeTexCoords();
 
+        vertices = null;
+        baked = true;
+
 //        bakeIndices();
 
     }