author | Radek Brich <radek.brich@devl.cz> |
Mon, 05 May 2008 15:31:14 +0200 | |
branch | pyrit |
changeset 92 | 9af5c039b678 |
parent 91 | 9d66d323c354 |
child 100 | c005054bf4c1 |
permissions | -rw-r--r-- |
29 | 1 |
#include "raytracer.h" |
85
907a634e5c02
implement triangle packet intersection
Radek Brich <radek.brich@devl.cz>
parents:
72
diff
changeset
|
2 |
#include "kdtree.h" |
29 | 3 |
|
39
7079dcc3bd74
ccdemos: put the common code to header files, common_ply.h and common_sdl.h
Radek Brich <radek.brich@devl.cz>
parents:
38
diff
changeset
|
4 |
#include "common_sdl.h" |
7079dcc3bd74
ccdemos: put the common code to header files, common_ply.h and common_sdl.h
Radek Brich <radek.brich@devl.cz>
parents:
38
diff
changeset
|
5 |
#include "common_ply.h" |
37
5f954c0d34fc
octree traversal rewritten to avoid recursion
Radek Brich <radek.brich@devl.cz>
parents:
36
diff
changeset
|
6 |
|
40
929aad02c5f2
Makefile: added help and distclean target, plus small fixes
Radek Brich <radek.brich@devl.cz>
parents:
39
diff
changeset
|
7 |
int main(int argc, char **argv) |
29 | 8 |
{ |
39
7079dcc3bd74
ccdemos: put the common code to header files, common_ply.h and common_sdl.h
Radek Brich <radek.brich@devl.cz>
parents:
38
diff
changeset
|
9 |
Raytracer rt; |
85
907a634e5c02
implement triangle packet intersection
Radek Brich <radek.brich@devl.cz>
parents:
72
diff
changeset
|
10 |
KdTree top; |
39
7079dcc3bd74
ccdemos: put the common code to header files, common_ply.h and common_sdl.h
Radek Brich <radek.brich@devl.cz>
parents:
38
diff
changeset
|
11 |
Camera cam; |
29 | 12 |
|
36
b490093b0ac3
new virtual Shape::intersect_bbox
Radek Brich <radek.brich@devl.cz>
parents:
35
diff
changeset
|
13 |
rt.setMaxDepth(0); |
29 | 14 |
rt.setTop(&top); |
15 |
||
91 | 16 |
Light light1(Vector(-5.0, 2.0, 8.0), Colour(0.9, 0.3, 0.6)); |
29 | 17 |
light1.castShadows(false); |
72
7c3f38dff082
kd-tree building - check all axes for best split, add additional shape-bbox check
Radek Brich <radek.brich@devl.cz>
parents:
69
diff
changeset
|
18 |
rt.addLight(&light1); |
29 | 19 |
|
91 | 20 |
//Light light2(Vector(-2.0, 10.0, 2.0), Colour(0.4, 0.6, 0.3)); |
29 | 21 |
//light2.castShadows(false); |
72
7c3f38dff082
kd-tree building - check all axes for best split, add additional shape-bbox check
Radek Brich <radek.brich@devl.cz>
parents:
69
diff
changeset
|
22 |
//rt.addLight(&light2); |
29 | 23 |
|
24 |
Material mat(Colour(0.9, 0.9, 0.9)); |
|
69
303583d2fb97
move "smooth" attribute from Triangle to Material
Radek Brich <radek.brich@devl.cz>
parents:
62
diff
changeset
|
25 |
mat.setSmooth(true); |
91 | 26 |
load_ply(rt, "../models/ply/bunny/bun_zipper.ply", &mat, Vector(-29,29,29), Vector(-1,-3,0)); |
29 | 27 |
|
28 |
rt.setCamera(&cam); |
|
91 | 29 |
cam.setEye(Vector(0,0,10)); |
29 | 30 |
|
31 |
top.optimize(); |
|
32 |
||
39
7079dcc3bd74
ccdemos: put the common code to header files, common_ply.h and common_sdl.h
Radek Brich <radek.brich@devl.cz>
parents:
38
diff
changeset
|
33 |
loop_sdl(rt, cam); |
92
9af5c039b678
add MSVC compiler support, make it default for Windows
Radek Brich <radek.brich@devl.cz>
parents:
91
diff
changeset
|
34 |
|
9af5c039b678
add MSVC compiler support, make it default for Windows
Radek Brich <radek.brich@devl.cz>
parents:
91
diff
changeset
|
35 |
return 0; |
29 | 36 |
} |