#ifndef CMODELCOOKER_H #define CMODELCOOKER_H #include "../model/CModel.h" #include "../EFormatVersion.h" #include class CModelCooker { CModel *mpModel; EGame mVersion; u32 mNumMatSets; u32 mNumSurfaces; u32 mNumVertices; u8 mVertexFormat; std::vector mVertices; EVertexDescription mVtxAttribs; CModelCooker(); void GenerateSurfaceData(); void WriteEditorModel(COutputStream& Out); void WriteModelPrime(COutputStream& Out); public: static void WriteCookedModel(CModel *pModel, EGame Version, COutputStream& Out); static void WriteUncookedModel(CModel *pModel, COutputStream& Out); static u32 GetCMDLVersion(EGame Version); }; #endif // CMODELCOOKER_H