summaryrefslogtreecommitdiffstats
path: root/DisplayClass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'DisplayClass.cpp')
-rw-r--r--DisplayClass.cpp12
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();