20 Commits

Author SHA1 Message Date
15fe1e632c Add more abstraction.
Implement Sphere as its own module.
Create HitableList that can hold multiple objects.
Fixed shading problem in the process.
2018-09-08 23:10:26 -07:00
c16ba06a53 Normal shading of sphere.
Doesn't quite work right.
2018-09-08 21:53:15 -07:00
20c79a655b Implement Vec3 + f32 2018-09-08 21:52:49 -07:00
5ca6cc0809 Add sphere.
Move original tracer1 to tracer_blue_sky and create new tracer as
tracer_red_dot.
2018-09-08 21:17:46 -07:00
e45bb8ddad First fake raytracer. 2018-09-08 21:03:38 -07:00
cdd2d585a7 Clippy cleanup and module visibility cleanup. 2018-09-08 20:19:46 -07:00
b8861b7f8d Add simple ray module. 2018-09-08 19:58:24 -07:00
e1199611f0 Visibility cleanups. 2018-09-08 19:58:12 -07:00
577fa32b2d Use Vec3 in main program. 2018-09-08 19:50:13 -07:00
7f7b1d6d34 Implement Vec3 library. Lacks most inplace operators. 2018-09-08 19:42:31 -07:00
3dfd71282b simple_ppm writer. 2018-09-08 17:32:12 -07:00
0c5c6381fc Start of surface normal support. 2018-09-08 17:17:29 -07:00
e8d05eeaee Add sky Plane. 2018-08-12 21:23:19 -07:00
197c6df4a4 Add Plane rendering.
Add Element enum type that can hold Plane and Sphere.
2018-08-12 21:20:19 -07:00
a1de85036d Support multiple spheres. 2018-08-12 20:58:28 -07:00
277c6ef60b Implementation of part 1. The green circle. 2018-08-03 21:56:09 -07:00
ca3aa6c8b7 Move aobench into subdirectory. 2018-08-03 17:03:05 -07:00
548f4106bc Couldn't get -verbose to work, remove it. 2018-07-21 20:10:23 -07:00
f69704b7b1 Working renderer. 2018-07-21 19:24:30 -07:00
5a549957c4 Stub program to generate a simple ppm image and define basic types. 2018-07-18 22:11:20 -07:00