foo
[laserbrain_demo] / src / scene.h
1 #ifndef SCENE_H_
2 #define SCENE_H_
3
4 #include <vector>
5 #include "mesh.h"
6 #include "snode.h"
7
8 enum {
9         SCNLOAD_FLIPYZ = 1,
10         SCNLOAD_FLIPTEX = 2
11 };
12
13 class Scene {
14 public:
15         std::vector<Mesh*> meshes;
16         std::vector<Object*> objects;
17         SceneNode *nodes;
18
19         Scene();
20         ~Scene();
21
22         Scene(const Scene &rhs) = delete;
23         Scene &operator =(const Scene &rhs) = delete;
24
25         void destroy();
26
27         bool load(const char *fname, unsigned int flags = 0);
28
29         void update(float dt);
30         void draw() const;
31 };
32
33 #endif  // SCENE_H_