implementing build_bvh_sah
[cyberay] / src / level.h
1 #ifndef LEVEL_H_
2 #define LEVEL_H_
3
4 #include "rt.h"
5 #include "bvh.h"
6
7 struct level {
8         struct bvhnode *st_root;
9         struct bvhnode *dyn_root;
10
11         struct mesh *meshlist;
12 };
13
14 int load_level(struct level *lvl, const char *fname);
15 void destroy_level(struct level *lvl);
16
17 int ray_level(cgm_ray *ray, struct level *lvl, float tmax, struct rayhit *hit);
18
19 void draw_level(struct level *lvl);
20
21 #endif  /* LEVEL_H_ */