28#ifndef HPL_MESH_LOADER_H
29#define HPL_MESH_LOADER_H
31#include "hpl1/engine/graphics/GraphicsTypes.h"
32#include "hpl1/engine/math/MathTypes.h"
33#include "hpl1/engine/system/SystemTypes.h"
37typedef tFlag tWorldLoadFlag;
39#define eWorldLoadFlag_NoLights (0x00000001)
40#define eWorldLoadFlag_NoEntities (0x00000002)
41#define eWorldLoadFlag_NoGameEntities (0x00000004)
43typedef tFlag tMeshLoadFlag;
45#define eMeshLoadFlag_NoGeometry (0x00000001)
50class cMaterialManager;
52class cAnimationManager;
53class cMeshLoaderHandler;
54class iLowLevelGraphics;
65 : mpLowLevelGraphics(apLowLevelGraphics) {}
68 virtual cMesh *LoadMesh(
const tString &asFile, tMeshLoadFlag aFlags) = 0;
69 virtual bool SaveMesh(
cMesh *apMesh,
const tString &asFile) = 0;
75 virtual bool IsSupported(
const tString asFileType) = 0;
77 virtual void AddSupportedTypes(
tStringVec *avFileTypes) = 0;
79 static void SetRestricStaticLightToSector(
bool abX) { mbRestricStaticLightToSector = abX; }
80 static void SetUseFastMaterial(
bool abX) { mbUseFastMaterial = abX; }
89 static bool mbRestricStaticLightToSector;
90 static bool mbUseFastMaterial;
Definition: Animation.h:44
Definition: AnimationManager.h:39
Definition: MaterialManager.h:41
Definition: MeshLoaderHandler.h:50
Definition: MeshManager.h:39
Definition: World3D.h:179
Definition: LowLevelGraphics.h:200
Definition: MeshLoader.h:60