223 Commits

Author SHA1 Message Date
672dc3cdd2 Save .png output directly from rust. 2018-09-11 09:46:50 -07:00
0c9edd9e61 Fullres book cover and add timing.
Squelch clippy warning in camera.rs.
2018-09-11 09:08:32 -07:00
823e75da88 Add boolean for drawing book cover. 2018-09-10 21:50:40 -07:00
f2c5cf48ad Update camera to implement defocused blur.
Removed tracer programs that no longer compile with new Camera API.
2018-09-10 21:43:39 -07:00
5ba579a374 Use Box<Hit> instead of reference in HitableList. 2018-09-10 21:01:40 -07:00
196a4b76bc Implement positional camera.
Bug fix for cross()
2018-09-09 21:27:34 -07:00
b342e00d4c Implement dielectrics (glassy) materials.
Add Neg to Vec3.
2018-09-09 20:23:28 -07:00
7c213e3a2b Implement Lambertian and Metal materials.
Fixed bug with Vec3::unit_vector().
Had to remove old example programs because Sphere::new() API changed to
allow materials.
2018-09-09 17:01:52 -07:00
73ca5c8454 Implement diffuse lighting, and gamma correction. 2018-09-09 14:49:21 -07:00
4584eeb08f Always in-progress renderer.
It is copied to an appropriately named render as chapters are
implemented.
2018-09-09 13:37:51 -07:00
9698afce43 Implement sub-sampling anti-aliasing.
Move camera to code to separate module.
2018-09-09 13:37:35 -07:00
35722b57b1 Closer to correct shading, but still not there. 2018-09-08 23:13:11 -07:00
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