erebus

view liberebus/src/scene.h @ 1:59a72293f9bd

continuing
author John Tsiombikas <nuclear@member.fsf.org>
date Mon, 28 Apr 2014 05:58:22 +0300
parents 4abdce1361b9
children 474a0244f57d
line source
1 #ifndef SCENE_H_
2 #define SCENE_H_
4 #include <vector>
5 #include "snode.h"
6 #include "camera.h"
8 class Scene {
9 private:
10 std::vector<Object*> objects;
11 std::vector<SceneNode*> nodes;
13 Camera *active_cam;
15 public:
16 Scene();
17 ~Scene();
19 void add_object(Object *obj);
20 int get_object_count() const;
21 Object *get_object(int idx) const;
23 void add_node(SceneNode *node);
24 int get_node_count() const;
25 SceneNode *get_node(int idx) const;
27 bool intersect(const Ray &ray, RayHit *hit) const;
28 };
30 #endif // SCENE_H_