Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/model.cc')
-rw-r--r--src/core/model.cc25
1 files changed, 20 insertions, 5 deletions
diff --git a/src/core/model.cc b/src/core/model.cc
index 1e571c3..52f0dde 100644
--- a/src/core/model.cc
+++ b/src/core/model.cc
@@ -453,16 +453,31 @@ void Model::make_face(math::Plane3f *face, std::vector<math::Plane3f *> & planes
color = 0;
} else
color = new math::Color(1.0f, 0.0, 1.0f);
-
+
+ /*
+ // split face into triangles
+ while (vl.size() >2 ) {
+ std::vector<Vector3f *>::iterator v0 = vl.begin();
+ std::vector<Vector3f *>::reverse_iterator vn = vl.rbegin();
+ std::vector<Vector3f *>::reverse_iterator vn1 = vl.rbegin();
+ ++vn1;
+ */
Face *mf = new Face(face->normal()*-1, color);
- if (color) delete color;
-
for (std::vector<Vector3f *>::iterator it = vl.begin(); it != vl.end(); it++) {
mf->add_vertex(*(*it) * model_scale);
}
-
- //con_debug << "adding face\n";
add_face(mf);
+ /*
+ mf->add_vertex(*(*vn) * model_scale);
+ mf->add_vertex(*(*v0) * model_scale);
+ mf->add_vertex(*(*vn1) * model_scale);
+ add_face(mf);
+
+ vl.pop_back();
+ }
+ */
+
+ if (color) delete color;
} else {
con_debug << "Unresolved face!\n";
}