#pragma once #include #include #include #include enum mtyp { null, dynamicMesh, cloth, bone, staticMesh, shadowMesh = 6 }; struct chunkHeader { char name[5]; std::uint32_t size; std::streampos position; }; struct modl { std::string name; std::uint32_t size; std::streampos position; std::string parent; mtyp type; std::uint32_t zeroBaseIndex; std::uint32_t renderFlags; struct { float scale[3]; float rotation[4]; float translation[3]; } tran; struct { std::uint32_t type; float data1; float data2; float data3; } swci; }; class Object { public: Object(const char* path); ~Object(); private: std::list lChunkMsh2; std::list lModls; std::fstream fsMesh; private: void loadChunks(std::list &destination, std::streampos start, const std::uint32_t end); public: };