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 |
Matthew Gordon
|
e52c0772b4
|
Remove unused import
|
2020-02-19 08:03:16 -05:00 |
Matthew Gordon
|
87b2f2835a
|
Rename morton_order_value() to morton_order_value_3d()
|
2020-02-19 08:02:36 -05:00 |
Matthew Gordon
|
3c813c4526
|
More work on BoundingVolumeHierarchy
|
2020-02-13 20:24:35 -05:00 |
Matthew Gordon
|
7bd45c8ad2
|
First pass at bounding volume hierarchy
|
2020-02-10 22:23:38 -05:00 |
Matthew Gordon
|
e411f4abb4
|
Start working on morton (z-order sorting)
|
2020-02-10 17:45:12 -05:00 |
Matthew Gordon
|
8508ac1072
|
Add trait for converting real type tu u32
|
2020-02-10 17:15:02 -05:00 |
Matthew Gordon
|
079e02e059
|
Remove some dbg!s
|
2020-02-10 16:54:42 -05:00 |
Matthew Gordon
|
d6b5c87759
|
Create Real trait to replace nalgebra::RealField
Real inherits RealField, but I want to add more to it.
|
2020-02-10 16:52:09 -05:00 |
Matthew Gordon
|
a15eeccdfb
|
Fix code formatting. No change of functionality.
|
2020-02-07 17:05:07 -05:00 |
Matthew Gordon
|
23e8a878c5
|
Move algebra_utils.rs into util module
|
2020-02-07 17:04:42 -05:00 |
Matthew Gordon
|
49bef6f0f4
|
Add Point3Normalizer
|
2020-02-07 17:00:46 -05:00 |
Matthew Gordon
|
259505e93f
|
Add RealFieldNormalizer
|
2020-02-06 17:36:36 -05:00 |
Matthew Gordon
|
c3f3fffc0e
|
Move axis_aligned_bounding_box to util module
|
2020-02-06 17:06:46 -05:00 |
Matthew Gordon
|
65b5e3c45d
|
Create util module and move Interval struct to it
|
2020-02-06 16:49:11 -05:00 |
Matthew Gordon
|
8c527d34fc
|
Add Primitive trait
|
2020-01-30 17:22:53 -05:00 |
Matthew Gordon
|
a0de9c18ba
|
Implement HasBoundingBox trait for Plane
|
2020-01-30 16:43:48 -05:00 |
Matthew Gordon
|
89aed89b85
|
Add derive(Debug) for BoundingBox
|
2020-01-30 16:43:21 -05:00 |
Matthew Gordon
|
1044fc3986
|
Implement HasBoundingBox for Tirangle
|
2020-01-29 16:50:26 -05:00 |
Matthew Gordon
|
e67204b96e
|
Make BoundingBox::from_points accept any IntoIterator<Point3<T>>
...instead of only Vec<Point3<T>>
|
2020-01-29 16:49:30 -05:00 |
Matthew Gordon
|
e5d7a1098d
|
Add more methods for constructing BoundingBoxes
|
2020-01-29 08:09:58 -05:00 |
Matthew Gordon
|
30a5a9dd0f
|
Add Interval::expand_to_value(); other minor changes
|
2020-01-12 12:13:31 -05:00 |
Matthew Gordon
|
25ac0bad7f
|
Fixed bug with empty intervals
|
2020-01-12 10:45:39 -05:00 |
Matthew Gordon
|
75611d47d3
|
Add HasBoundingBox trait with implementation for Sphere
|
2020-01-10 17:15:35 -05:00 |
Matthew Gordon
|
abf71658b6
|
Add axis_aligned_bounding_box::BoundingBox::union()
|
2020-01-10 17:00:09 -05:00 |
Matthew Gordon
|
da2208f3f8
|
Add Interval::union()
|
2020-01-10 16:46:17 -05:00 |
Matthew Gordon
|
5f6733fdb0
|
Move some declarations around within struct, no change in functionality
|
2020-01-10 16:21:38 -05:00 |
Matthew Gordon
|
ffcfa0009c
|
Move import that was only used in tests into test module
|
2020-01-10 16:21:28 -05:00 |
Matthew Gordon
|
5e0e2bad06
|
Make build and test work with stable rust (nightly needed for benchmarks)
|
2020-01-10 16:16:27 -05:00 |
Matthew Gordon
|
4ee7338711
|
Add axis_aligned_bounding_box module
|
2019-12-31 22:17:15 -05:00 |
Matthew Gordon
|
5c8903107a
|
Add IntersectP trait
Like Intersect, but the intersect() function only returns a bool,
not a Optional<IntersectionInfo>.
|
2019-12-31 22:16:06 -05:00 |
Matthew Gordon
|
6639ed813b
|
Remove some old code that was already commented out
|
2019-12-31 22:15:13 -05:00 |
Matthew Gordon
|
a785eb796f
|
Only enable benchmark when benchmarking, not as regular test
|
2019-12-31 22:14:24 -05:00 |
Matthew Gordon
|
1653174ef6
|
Make triangle a submodule of raycasting.
|
2019-12-21 15:29:52 -05:00 |
Matthew Gordon
|
c35735f117
|
Move Plane into it's own submodule
|
2019-12-21 15:19:16 -05:00 |
Matthew Gordon
|
91579745cb
|
Move Sphere to a submodule
|
2019-12-21 15:06:48 -05:00 |
Matthew Gordon
|
4e7565638a
|
Move raycsating module into subdirectory
|
2019-12-21 10:50:59 -05:00 |
Matthew Gordon
|
2c4e951767
|
Add Linux perf output to .gitignore
|
2019-12-21 10:45:48 -05:00 |
Matthew Gordon
|
08484306fd
|
Move load_obj() into submudule
|
2019-12-21 10:43:39 -05:00 |
Matthew Gordon
|
12e26887c1
|
Make output image smaller.
|
2019-12-21 10:43:39 -05:00 |
Matthew Gordon
|
1b9cf2cbca
|
Add benchmark
|
2019-12-21 10:43:33 -05:00 |