goat3dgfx

annotate src/scene.h @ 34:3eb6c8f89fe1

merge
author John Tsiombikas <nuclear@member.fsf.org>
date Sun, 02 Mar 2014 17:41:10 +0200
parents 0b863938da04
children
rev   line source
nuclear@0 1 #ifndef SCENE_H_
nuclear@0 2 #define SCENE_H_
nuclear@0 3
nuclear@0 4 #include <vector>
nuclear@0 5 #include "object.h"
nuclear@31 6 #include "light.h"
nuclear@31 7 #include "camera.h"
nuclear@0 8 #include "curve.h"
nuclear@0 9
nuclear@15 10 namespace goatgfx {
nuclear@15 11
nuclear@0 12 class Scene {
nuclear@0 13 public:
nuclear@0 14 std::vector<Object*> objects;
nuclear@0 15 std::vector<Mesh*> meshes;
nuclear@0 16 std::vector<Curve*> curves;
nuclear@28 17 std::vector<Light*> lights;
nuclear@28 18 std::vector<Camera*> cameras;
nuclear@28 19
nuclear@28 20 // nodes can be objects, lights, cameras, or just dummy nodes
nuclear@28 21 std::vector<XFormNode*> nodes;
nuclear@0 22
nuclear@0 23 ~Scene();
nuclear@0 24 void destroy();
nuclear@0 25
nuclear@12 26 bool load(const char *fname);
nuclear@12 27 bool save(const char *fname) const;
nuclear@12 28
nuclear@0 29 void draw(long msec = 0) const;
nuclear@0 30 };
nuclear@0 31
nuclear@15 32 } // namespace goatgfx
nuclear@15 33
nuclear@0 34 #endif // SCENE_H_