#ifndef __MODEL_H #define __MODEL_H #include #include #include "../punkt2d.h" #include "../punkt3d.h" #include "../gltexture.h" #include "../glcolor.h" // #include "load3ds.h" class Material { friend class Load3ds; friend class ModelObject; private: std::string name; GLColor ambient; GLColor diffuse; GLColor specular; float percent; public: Material(); void clear(); std::string getName(); }; class ModelObject { friend class Load3ds; private: std::vector normal; std::vector vertex; std::vector mapcoord; std::vector polygon; void calcNormales(); std::string name; Material mat; public: ModelObject(); std::string getName(); void render(); void clear(); }; class Model { private: std::vector objects; std::vector materials; public: Model(); void addObject(ModelObject c); void addMaterial(Material m); void clear(); void render(); Material findMaterial(std::string name); }; #endif