dbf_amiga
annotate src/scene.h @ 0:87dfe0e10235
initial commit
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Mon, 31 Aug 2015 07:38:37 +0300 |
parents | |
children |
rev | line source |
---|---|
nuclear@0 | 1 #ifndef SCENE_H_ |
nuclear@0 | 2 #define SCENE_H_ |
nuclear@0 | 3 |
nuclear@0 | 4 #include <stdio.h> |
nuclear@0 | 5 #include <vector> |
nuclear@0 | 6 #include "object.h" |
nuclear@0 | 7 #include "light.h" |
nuclear@0 | 8 |
nuclear@0 | 9 enum { |
nuclear@0 | 10 DRAW_SOLID = 1, |
nuclear@0 | 11 DRAW_TRANSPARENT = 2, |
nuclear@0 | 12 DRAW_ALL = 0x7fffffff |
nuclear@0 | 13 }; |
nuclear@0 | 14 |
nuclear@0 | 15 class Scene { |
nuclear@0 | 16 public: |
nuclear@0 | 17 std::vector<Object*> objects; |
nuclear@0 | 18 std::vector<Light*> lights; |
nuclear@0 | 19 |
nuclear@0 | 20 ~Scene(); |
nuclear@0 | 21 |
nuclear@0 | 22 void clear(); |
nuclear@0 | 23 |
nuclear@0 | 24 void add_object(Object *obj); |
nuclear@0 | 25 void add_lights(Light *lt); |
nuclear@0 | 26 |
nuclear@0 | 27 bool load(const char *fname); |
nuclear@0 | 28 void dump(FILE *fp); |
nuclear@0 | 29 |
nuclear@0 | 30 void draw(unsigned int flags = DRAW_ALL) const; |
nuclear@0 | 31 }; |
nuclear@0 | 32 |
nuclear@0 | 33 #endif // SCENE_H_ |