Fixed the order of drawing (for blending) added the data files
[hair] / src / main.cc
index 9720723..0c5561c 100644 (file)
@@ -129,6 +129,7 @@ static void cleanup()
        for(size_t i=0; i<meshes.size(); i++) {
                delete meshes[i];
        }
+       glDeleteTextures(1, &grad_tex);
 }
 
 static void display()
@@ -158,7 +159,12 @@ static void display()
        glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
 */
        for(size_t i=0; i<meshes.size(); i++) {
-               meshes[i]->draw();
+               if(!meshes[i]->mtl.tex || meshes[i]->mtl.tex_opaque)
+                       meshes[i]->draw();
+       }
+       for(size_t i=0; i<meshes.size(); i++) {
+               if(meshes[i]->mtl.tex && !meshes[i]->mtl.tex_opaque)
+                       meshes[i]->draw();
        }
 /*
        glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
@@ -194,7 +200,7 @@ static void display()
        glPopAttrib();
 */
        float plane[4] = {
-               0, 0, 0.5 / 350, 0.5 
+               0, 0, 0.5 / 350, 0.5
        };
 
        glPushMatrix();