Etterna 0.74.4
Loading...
Searching...
No Matches
ModelManager.h
1#ifndef MODEL_MANAGER_H
2#define MODEL_MANAGER_H
3
4#include "RageUtil/Graphics/RageModelGeometry.h"
5
6#include <map>
7
9{
10 bool m_bDelayedUnload;
11
12 ModelManagerPrefs() { m_bDelayedUnload = false; }
13 ModelManagerPrefs(bool bDelayedUnload)
14 {
15 m_bDelayedUnload = bDelayedUnload;
16 }
17
18 bool operator!=(const ModelManagerPrefs& rhs) const
19 {
20 return m_bDelayedUnload != rhs.m_bDelayedUnload;
21 }
22};
28{
29 public:
32
33 RageModelGeometry* LoadMilkshapeAscii(const std::string& sFile,
34 bool bNeedNormals);
35 void UnloadModel(RageModelGeometry* m);
36 // void ReloadAll();
37
42 bool SetPrefs(const ModelManagerPrefs& prefs);
43 [[nodiscard]] const ModelManagerPrefs& GetPrefs() const { return m_Prefs; }
44
45 protected:
46 std::map<std::string, RageModelGeometry*> m_mapFileToGeometry;
47
48 ModelManagerPrefs m_Prefs;
49};
50
51extern ModelManager*
52 MODELMAN; // global and accessible from anywhere in our program
53
54#endif
Class for loading and releasing textures.
Definition ModelManager.h:28
bool SetPrefs(const ModelManagerPrefs &prefs)
Set up new preferences.
Definition ModelManager.cpp:69
Definition RageModelGeometry.h:13
Definition ModelManager.h:9