diff options
author | Matthias Schiffer <matthias@gamezock.de> | 2009-12-09 23:10:31 +0100 |
---|---|---|
committer | Matthias Schiffer <matthias@gamezock.de> | 2009-12-09 23:10:31 +0100 |
commit | 4731d3f4cf576d791db21ac1932fd91f9b43ff3a (patch) | |
tree | 5f24b886f2cb3d7117e11abd2901bbe8d4720c56 /DisplayClass.cpp | |
parent | 8705ce3d468c3cd22159bc0fedf727e8250861ca (diff) | |
download | c3d-4731d3f4cf576d791db21ac1932fd91f9b43ff3a.tar c3d-4731d3f4cf576d791db21ac1932fd91f9b43ff3a.zip |
BSPTrees weiter aufbauen
Diffstat (limited to 'DisplayClass.cpp')
-rw-r--r-- | DisplayClass.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/DisplayClass.cpp b/DisplayClass.cpp index cefa6ae..f320f3c 100644 --- a/DisplayClass.cpp +++ b/DisplayClass.cpp @@ -6,6 +6,11 @@ #include "BSPTree.h" +void DisplayClass::RenderVisitor::operator() (const Triangle &t) const { + t.render(); +} + + DisplayClass::DisplayClass() { static const float pos[5] = {-3.0, -2.0, 0.0, 2.0, 3.0}; @@ -78,10 +83,13 @@ void DisplayClass::renderScene(unsigned long delta) //glLoadIdentity(); + BSPTree tree(triangles); + glBegin(GL_TRIANGLES); - for(std::list<Triangle>::reverse_iterator t = triangles.rbegin(); t != triangles.rend(); ++t) { + /*for(std::list<Triangle>::reverse_iterator t = triangles.rbegin(); t != triangles.rend(); ++t) { t->render(); - } + }*/ + tree.visit(RenderVisitor(), Vector(0, 0, -1)); glEnd(); glFlush(); |