diff --git a/Makefile b/Makefile index 07dddfb..506aab3 100755 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ CC = g++ AR = ar -OBJECTS = punkt3d.o punkt2d.o emath.o emath_opengl.o glcolor.o gldrawhelper.o glfontengine.o glrect.o gltexture.o matrix.o quaternion.o rotationsmatrix.o glsdlscreen.o sdlfuncs.o fpsmanager.o glcamera.o catmullromspline.o extstring.o +OBJECTS = punkt3d.o punkt2d.o emath.o emath_opengl.o glcolor.o gldrawhelper.o glfontengine.o glrect.o gltexture.o matrix.o quaternion.o rotationsmatrix.o glsdlscreen.o sdlfuncs.o fpsmanager.o glcamera.o catmullromspline.o extstring.o quader.o OBJOPT = -Wall -c `sdl-config --cflags` SUBDIRS = glgui glmenu model SUBDIROBJECTS = glgui/*.o glmenu/*.o model/*.o diff --git a/model/model.cpp b/model/model.cpp index 4eda93b..8fadc27 100644 --- a/model/model.cpp +++ b/model/model.cpp @@ -151,3 +151,8 @@ void Model::render() { Model::~Model() { unload(); } + +const Punkt3D* Model::getMeshData(unsigned int *meshanz) { + *meshanz = meshdataanz; + return (const Punkt3D*)meshdata; +} diff --git a/model/model.h b/model/model.h index cfd13ae..e55f0a6 100644 --- a/model/model.h +++ b/model/model.h @@ -84,6 +84,8 @@ class Model { Quader getBoundingBox() { return boundingbox; } float getBoundingRadius() { return boundingrad; } + + const Punkt3D* getMeshData(unsigned int *meshanz); }; #endif diff --git a/model/modelloader.h b/model/modelloader.h index 8d1a8ec..f047b44 100644 --- a/model/modelloader.h +++ b/model/modelloader.h @@ -11,6 +11,7 @@ class Modelloader { std::string filename; public: Modelloader(std::string _filename); + virtual ~Modelloader() { }; virtual bool load(Model *m)=0; }; diff --git a/quader.cpp b/quader.cpp index 735cf8d..13c1e6b 100644 --- a/quader.cpp +++ b/quader.cpp @@ -6,5 +6,30 @@ void Quader::clean() { } void Quader::render() { - glB + glBegin(GL_LINES); + glVertexP3D(a); + glVertexP3D(b); + glVertexP3D(b); + glVertexP3D(c); + glVertexP3D(c); + glVertexP3D(d); + glVertexP3D(d); + glVertexP3D(a); + glVertexP3D(e); + glVertexP3D(f); + glVertexP3D(f); + glVertexP3D(g); + glVertexP3D(g); + glVertexP3D(h); + glVertexP3D(h); + glVertexP3D(e); + glVertexP3D(a); + glVertexP3D(e); + glVertexP3D(b); + glVertexP3D(f); + glVertexP3D(c); + glVertexP3D(g); + glVertexP3D(d); + glVertexP3D(h); + glEnd(); }