#ifndef LOADER_H #define LOADER_H #include #include #include #include //#include "Vector.h" //#include "Graphics.h" #include "MeshObject.h" typedef struct { float r,g,b; } COLOR; typedef struct { unsigned short a,b,c; } FACE_ARRAY_ABC; typedef struct { float u,v; } TEX_VERT_UV; class CObjectMaterial { public: CObjectMaterial(void); ~CObjectMaterial(void); std::string *material_name; std::string *texture_name; COLOR ambient, diffuse, specular; float transparencyf; unsigned short shininess, transparency; }; class CObjectModel { public: CObjectModel(void); ~CObjectModel(void); std::string *object_name; std::vector mat; std::vector point; std::vector face; std::vector tex; }; class CObject { MeshObject* display(std::string filename); public: CObject(void); MeshObject* loadModel(std::string filename); std::vector vecmodel; std::vector::iterator vecmodelIter; std::vector vecmaterial; std::vector::iterator vecmaterialIter; //main stuff unsigned int animation_length; float master_scale, frameProgress; int cameraSize; bool isAnimation, isMaterial; }; extern CObject obj; #endif