Matthew Gordon
|
c322981486
|
Make BHV contain a BinaryTree instead of being one
|
2020-07-20 21:46:36 -04:00 |
Matthew Gordon
|
4933993187
|
Use bunny model in test scene again
|
2020-07-20 21:22:54 -04:00 |
Matthew Gordon
|
b39c7e89b1
|
Some cleanup of BVH and BinaryTree
|
2020-07-04 23:16:22 -04:00 |
Matthew Gordon
|
231be6a1a5
|
Add generic BinaryTree struct and use in BoundingVolumeHierarchy
No change in runtime, as expected.
|
2020-07-04 22:09:44 -04:00 |
Matthew Gordon
|
5aad1242b3
|
For simple_scene benchmark, regerenerate BVH periodically
This makes the results much more consistent run-to-run. I suspect
the inconsistency was caused by random variations in the memory
layout of the BVH.
|
2020-07-04 21:16:28 -04:00 |
Matthew Gordon
|
ea311408ba
|
Add time parameter to allow animation
|
2020-06-20 19:28:40 -04:00 |
Matthew Gordon
|
d96942cd78
|
Replace bunny with dodecahedron on test image
|
2020-06-20 14:57:56 -04:00 |
Matthew Gordon
|
9785e3b451
|
Remove some dead code.
|
2020-06-20 14:55:25 -04:00 |
Matthew Gordon
|
4451d1d71f
|
Add option to save image to PNG file
|
2020-06-20 14:53:17 -04:00 |
Matthew Gordon
|
b8dddd7498
|
Pass image size as command line parameter
Instead of being hard-coded
|
2020-06-20 12:04:44 -04:00 |
Matthew Gordon
|
4464a9fae6
|
Add utility function to generate dodecahedron
|
2020-06-20 11:26:17 -04:00 |
Matthew Gordon
|
e1c91919b8
|
Add RgbSamplesBsdfMaterial (not working yet)
|
2020-06-19 00:04:01 -04:00 |
Matthew Gordon
|
aa942a2a3c
|
Make sure normals or imported meshes are unit length.
|
2020-06-19 00:01:12 -04:00 |
Matthew Gordon
|
29dc3b6a37
|
Fix a typo that caused artifacts with ReflectiveMaterial
|
2020-06-19 00:00:12 -04:00 |
Matthew Gordon
|
cb67362ad4
|
Break material module up into multiple files
|
2020-06-11 22:28:53 -04:00 |
Matthew Gordon
|
90bb7d84af
|
Big rijiggering of types
|
2020-06-11 22:13:51 -04:00 |
Matthew Gordon
|
01259e1e55
|
Upgrade quickcheck_macros to 0.9
|
2020-05-22 21:12:36 -04:00 |
Matthew Gordon
|
c02ad9637d
|
Upgrade itertools to 0.9
|
2020-05-22 21:12:09 -04:00 |
Matthew Gordon
|
3c9d968f7e
|
Compile for "native" CPU type.
|
2020-05-22 21:06:07 -04:00 |
Matthew Gordon
|
8bc2c4b229
|
Upgrade to nalgebra 0.21
|
2020-05-22 21:05:30 -04:00 |
Matthew Gordon
|
ec1ee394a9
|
Add documentation for BoundingVolumeHierarchy
|
2020-04-24 00:32:16 -04:00 |
Matthew Gordon
|
1d9baf1f05
|
Add some documentation for mesh module
|
2020-04-24 00:31:15 -04:00 |
Matthew Gordon
|
8ee1f3a004
|
Add a bunch of documentation to the raycasting module
|
2020-04-23 23:58:35 -04:00 |
Matthew Gordon
|
c1d8044eb8
|
Add documentation for partial_render_scene()
|
2020-04-23 23:19:21 -04:00 |
Matthew Gordon
|
63afdfa36e
|
Make the camera module private and just re-export partial_render_scene()
|
2020-04-23 23:16:50 -04:00 |
Matthew Gordon
|
c3902d3221
|
Use rust nightly for Github actions build
|
2020-04-23 22:03:58 -04:00 |
Matthew Gordon
|
2a77bac0cc
|
Add a proper description to the README.md and include it in lib.rs
|
2020-04-23 21:44:01 -04:00 |
Matthew Gordon
|
1b66995bdd
|
Replace Vec references with slices in a few places.
|
2020-04-03 23:34:44 -04:00 |
Matthew Gordon
|
c063ff22a4
|
Replace anonymous tuple with tuple struct to improve readability
|
2020-04-03 23:33:06 -04:00 |
Matthew Gordon
|
5fbed4a17f
|
Some minor cleanup recommended by clippy
|
2020-04-03 23:21:38 -04:00 |
Matthew Gordon
|
34232bb7d3
|
Refactor Bsdf to not store references to material struct members
This complicated the Material trait with explicit lifetimes and
had no real benefit.
|
2020-04-03 23:12:40 -04:00 |
Matthew Gordon
|
8570e08923
|
Implement Transform trait for Triangle
Still needs more unit tests.
|
2020-04-03 22:58:00 -04:00 |
Matthew Gordon
|
5df3f81359
|
Implement Transform trait for Plane
Still needs unit tests.
|
2020-04-03 22:57:28 -04:00 |
Matthew Gordon
|
a856fcbc21
|
Make Transform triat use Affine3 instead of the more general Tramsform3
|
2020-04-03 22:56:28 -04:00 |
Matthew Gordon
|
9904d3f06e
|
Fix test model path in benchmark
|
2020-04-03 21:23:38 -04:00 |
Matthew Gordon
|
36a4c6f951
|
Add "stanford bunny" model to repository (for testing)
|
2020-04-03 21:18:16 -04:00 |
Matthew Gordon
|
cf8f5e646b
|
Use Box instead of Arc in BoundingVolumeHierarchy
|
2020-03-27 21:18:47 -04:00 |
Matthew Gordon
|
bbeb39ba5d
|
Replace unnecessary Arcs with Boxes.
|
2020-03-27 20:34:19 -04:00 |
Matthew Gordon
|
50d9848faa
|
Enable debug symbols in benchmarks
For profiling
|
2020-03-19 22:40:17 -04:00 |
Matthew Gordon
|
3afbc600e6
|
Switch to Criterion for benchmarks
|
2020-03-19 22:40:17 -04:00 |
Matthew Gordon
|
4042b266ae
|
Update benchmark
|
2020-03-19 22:40:17 -04:00 |
Matthew Gordon
|
b13cbe316d
|
Add Transform trait and implement for Sphere
|
2020-03-12 21:26:22 -04:00 |
Matthew Gordon
|
fa43552c6f
|
Remove stray debug print
|
2020-02-28 23:27:32 -05:00 |
Matthew Gordon
|
ad2b9247b8
|
Use BoundingVolumeHierarchy to accelerate rendering
|
2020-02-28 23:26:56 -05:00 |
Matthew Gordon
|
2b8794c884
|
Add recursion limit to ray tracing
|
2020-02-28 23:25:51 -05:00 |
Matthew Gordon
|
0574dff685
|
Threads pass back small images instead of sharing large image
|
2020-02-28 21:42:19 -05:00 |
Matthew Gordon
|
a04f51998c
|
Make main rendering loop multithreaded again.
|
2020-02-28 20:53:24 -05:00 |
Matthew Gordon
|
254957c5c3
|
Add another image to README.md
|
2020-02-22 19:51:00 -05:00 |
Matthew Gordon
|
bdd05f3527
|
Refactor main rendering loop to use TileIterator
This removes the old multithreading code, but will be using rayon
soon.
|
2020-02-20 16:47:15 -05:00 |
Matthew Gordon
|
d21d288013
|
Add TileIterator struct
|
2020-02-19 08:04:41 -05:00 |