c8f5bf9e19
cargo fix --edition and add edition="2018" to Cargo.toml.
2019-02-07 16:36:55 -08:00
ce2d22b0b5
Add environment mapping for background.
2019-01-29 10:20:31 -08:00
5faba9cf26
Moved lode/perlin code to noise module.
...
Changed how NoiseTexture is created to allow noise function and
parameters to be passed in as options.
Allowed setting of noise source from URL parameters.
2018-10-14 15:09:57 -07:00
66d599b50d
Fix all clippy warnings or block them.
2018-10-11 19:53:07 -07:00
639c50a3de
More noise debugging.
...
Added another reference implementation in lode.rs.
Build CLI to generate noise with various parameters.
2018-10-07 07:43:42 -07:00
36b2fba5b7
De-boxed many uses of Hit and Material.
...
Use of generic parameter directly where possible in structures instead
of Box'd values.
Added Material implementations for Box<Material> and Arc<Material> to
aid in the automatic conversion when necessary to use a Sized value for
Material.
Implement From trait for [f32;3] to Vec3 to make some APIs Into<Vec3>
which is a bit nicer to use.
2018-10-03 20:53:37 -07:00
f1fcbe7449
Add empty cornell box with light and flipped normals.
2018-09-23 22:00:52 -07:00
73002df31e
Make world in test scene larger and flatter.
2018-09-23 21:32:40 -07:00
3839ff316d
Add XZ and YZ rects to complement XY.
2018-09-23 21:29:50 -07:00
9c5233e057
Implement DiffuseLight material.
...
Allow Scenes to define global_illumination so scenes without lighting
can continue to work.
2018-09-23 18:30:24 -07:00
34ce373269
Implement image based textures.
2018-09-23 15:53:46 -07:00
697d056a9d
Basic Perlin texture implementation.
2018-09-23 09:33:01 -07:00
96d49e685f
Add CheckerTexture.
2018-09-22 20:23:46 -07:00
a1d3cce4e4
Add ConstantTexture and use it for Lambertian material.
2018-09-22 19:53:27 -07:00
08ea5ca089
Lint.
2018-09-22 12:08:26 -07:00
2104f1a76c
Implement kd-tree.
...
Add simple test scene.
Failed attempt to make BVH faster.
Failed attempt to implement SAH w/ BVH.
Failed attempt to make AABB::hit faster.
2018-09-22 11:11:40 -07:00