Commit graph

168 commits

Author SHA1 Message Date
5a54e325f2 Image is 640x480 2013-09-08 20:46:29 -07:00
de77b9680b Three spheres 2013-09-08 20:46:22 -07:00
7524c9c3d8 Fix scene_add_object -- break out of the while loop! 2013-09-08 20:46:11 -07:00
1760170952 Fix funky scene_render code, for correctness 2013-09-08 20:38:01 -07:00
39871d33fe Fix funky PNG writer code, for correctness 2013-09-08 20:37:05 -07:00
c65f46a1fa Tweaks in basics, for correctness 2013-09-08 20:32:38 -07:00
11dc22fb8c Remove optimization for b =~ sqrt(b^2 - 4ac) 2013-09-08 18:46:51 -07:00
6e3f92e47c Comment and formatting tweaks 2013-09-08 18:28:53 -07:00
45b71f18db Move checking intersection of ray and sphere in unit tests to check_sphere_intersection 2013-09-08 18:07:30 -07:00
5129a6e545 Update object module with changes to basics 2013-09-08 18:06:40 -07:00
4e6e0610ba Add test_vector_negate 2013-09-08 18:00:41 -07:00
d2afb4e10a Add tests for add_vector, mul_scalar, and sub_vector 2013-09-08 17:58:32 -07:00
21ccba45e4 Clean up basics a bit; add vector_negate, ray_parameterize 2013-09-08 17:45:37 -07:00
0fa10c3220 Sphere intersection test 2013-09-08 15:35:58 -07:00
d636a4f2ee Add comment about efficiency in vector_normalize 2013-09-08 15:18:48 -07:00
5a0d215789 Add test modules 2013-09-08 15:18:22 -07:00
ebcb67a0cc Fixing the build system again 2013-09-08 14:53:11 -07:00
f81e403b16 Revamp build system: build src and test into libs and link to make binaries 2013-09-08 13:57:05 -07:00
926247002b Add test directory to SCons 2013-09-08 12:21:24 -07:00
b1d61b5ddc Add SConscript for test 2013-09-08 12:14:36 -07:00
884c16424d Change the location and size of sphere to compensate for simplified ray generation 2013-09-08 12:09:19 -07:00
2417176f0c Change how rays are generated -- parallel to Z axis 2013-09-08 12:09:02 -07:00
4407f757e6 Initialize nearest_t to 1e8 2013-09-08 11:56:57 -07:00
d9d27e2d22 CXXFLAGS != CFLAGS 2013-09-08 11:52:53 -07:00
062074f034 Add function header comment to vector_dot() 2013-09-08 11:38:13 -07:00
8a8d63055f Ignore build/ 2013-09-08 11:37:58 -07:00
3ea6073655 Create a build dir for object files 2013-09-08 09:12:15 -07:00
8b828e45a8 Free intersection t values array after use. 2013-09-08 09:06:51 -07:00
99055ff5f4 Add an object and a texture to the scene 2013-09-08 08:45:32 -07:00
34428a764d If ray intersects shape, return the shape's color 2013-09-08 08:45:13 -07:00
ca13877c19 Add texture to objects 2013-09-07 22:22:27 -07:00
7b30584ba5 Define ColorBlack 2013-09-07 22:12:35 -07:00
e77e9488c0 Add Texture module 2013-09-07 22:12:27 -07:00
830979fc75 First object in Scene objects list is pointed to by scene->objects 2013-09-07 21:39:02 -07:00
4e3092eecc Static-ify scene_trace_ray() 2013-09-07 21:35:19 -07:00
8df7a5a6a1 Add a comment 2013-09-07 18:42:36 -07:00
c45331d79d Initial interesection test for ray tracing 2013-09-07 18:41:46 -07:00
c06fb87990 Add scene_add_object 2013-09-07 18:41:33 -07:00
a73cce8dbf Compact declaration of default color in ray trace function 2013-09-07 18:26:59 -07:00
974ebd6ccd Add sphere intersection function 2013-09-07 18:26:32 -07:00
0c050734c7 Add vector_sub_vector and vector_dot to basics 2013-09-07 18:26:05 -07:00
cee4113f6a Remove basics include from scene.h 2013-09-07 16:48:57 -07:00
da3aa51f1b Code for objects and spheres 2013-09-07 16:48:50 -07:00
b4cc32a196 Add ObjectList struct 2013-09-07 16:10:50 -07:00
dc558c016b Basic driver for the ray tracer 2013-09-07 16:10:42 -07:00
9d6c293cad Set is_rendered flag after scene rendering completes. 2013-09-07 16:10:29 -07:00
9ad6bb7656 Fix PNG writing... yay! 2013-09-07 16:09:50 -07:00
8d51a521bb Add object module 2013-09-07 16:09:19 -07:00
9c01ba8811 Write the scene in writer_png
- Add pixels to Scene struct
2013-09-06 23:04:30 -07:00
4e27e4e960 Color is three unit8_t's instead of three floats 2013-09-06 23:03:25 -07:00