view3d
annotate src/scene.h @ 1:7650e941805c
forgot two files
author | John Tsiombikas <nuclear@mutantstargoat.com> |
---|---|
date | Thu, 19 Jan 2012 00:17:49 +0200 |
parents | |
children | 7e982a61852a |
rev | line source |
---|---|
nuclear@1 | 1 #ifndef SCENE_H_ |
nuclear@1 | 2 #define SCENE_H_ |
nuclear@1 | 3 |
nuclear@1 | 4 struct aabb { |
nuclear@1 | 5 float min[3], max[3]; |
nuclear@1 | 6 }; |
nuclear@1 | 7 |
nuclear@1 | 8 struct material { |
nuclear@1 | 9 float kd[4]; |
nuclear@1 | 10 float ks[4]; |
nuclear@1 | 11 float shin; |
nuclear@1 | 12 unsigned int tex; |
nuclear@1 | 13 }; |
nuclear@1 | 14 |
nuclear@1 | 15 struct mesh { |
nuclear@1 | 16 unsigned int vert_buf, norm_buf, tex_buf, idx_buf; |
nuclear@1 | 17 int num_verts, num_faces; |
nuclear@1 | 18 |
nuclear@1 | 19 struct material mat; |
nuclear@1 | 20 |
nuclear@1 | 21 struct aabb bbox; |
nuclear@1 | 22 |
nuclear@1 | 23 struct mesh *next; |
nuclear@1 | 24 }; |
nuclear@1 | 25 |
nuclear@1 | 26 struct light { |
nuclear@1 | 27 float pos[4]; |
nuclear@1 | 28 float color[4]; |
nuclear@1 | 29 |
nuclear@1 | 30 struct light *next; |
nuclear@1 | 31 }; |
nuclear@1 | 32 |
nuclear@1 | 33 struct scene { |
nuclear@1 | 34 struct mesh *meshes; |
nuclear@1 | 35 struct light *lights; |
nuclear@1 | 36 |
nuclear@1 | 37 struct aabb bbox; |
nuclear@1 | 38 }; |
nuclear@1 | 39 |
nuclear@1 | 40 |
nuclear@1 | 41 int load_scene(struct scene *scn, const char *fname); |
nuclear@1 | 42 |
nuclear@1 | 43 void render_scene(struct scene *scn); |
nuclear@1 | 44 void render_mesh(struct mesh *m); |
nuclear@1 | 45 |
nuclear@1 | 46 #endif /* SCENE_H_ */ |