152d265c82
Switched all uninitialized memory to use MaybeUninit.
2019-07-06 13:46:54 +09:00
28a07de456
Improve module path usage and remove extern crate declarations where possible.
2018-12-16 13:02:49 -08:00
8deb1e87bb
First step transitioning to Rust 2018.
2018-12-16 12:02:20 -08:00
c73db2edbe
Fix/silence a bunch of clippy warnings in the main crate.
2018-12-15 23:26:12 -08:00
6d21a30840
Formatting with newer cargo fmt
.
...
No meaningful code change, only formatting.
2018-06-24 21:18:10 -07:00
97d3304149
Run new rustfmt on codebase.
2018-03-04 13:00:55 -08:00
c0a26819c6
Bunch of code quality improvements based on running clippy.
...
None of them change behavior, just make the code cleaner.
2017-07-22 17:21:11 -07:00
f649bec585
Reformat code with rustfmt 0.9
2017-06-15 22:00:31 -07:00
922e33ec3f
Reformat code with latest rustfmt and custom config.
2017-05-14 13:43:51 -07:00
fdf2b4babf
Print stats for BVH and BVH4 traversal, and working on speeding up BVH4 traversal.
2017-04-22 11:18:29 -07:00
d504ca5e6a
Got DistantDiscLights working! Yay!
...
This involved fixing a bug in PsychoBlend. It was including
translation in how it was transforming the sun lights' direction
vector.
2017-02-13 00:03:34 -08:00
3cbb816d4b
Added DistantDiskLight (a.k.a. sun light) parsing and data structures.
...
Also created a proper World struct in the process, to store all
infinite-extent type stuff.
Note that I goofed and did a new rustfmt pass but forgot to
commit before making these changes, so there's a lot of
formatting changes in this too. *sigh*
2017-02-12 20:29:08 -08:00
97b5ef77f8
Code cosmetics: organize and alphabetize crate/mod/use statements.
2016-08-20 18:10:55 -07:00
cf49cdbb02
Moved int hash functions into own file, and use in quick_select().
2016-08-14 16:03:17 -07:00
fbeadfce29
Use quick select for balanced BVH building.
...
This gets rid of a crate dependency, and also is faster.
2016-08-14 00:51:21 -07:00
024ca560af
Minor optimization in the transform stack.
...
Got rid of the scratch space by writing directly into the main
stack vector when merging transforms. Involves a small bit of
unsafe code.
2016-08-06 01:51:20 -07:00
e2ef44f666
Finished implementing motion blur.
2016-07-10 19:20:37 -07:00
6f6807009b
Prepping for adding lighting.
...
The part of the renderer responsible for light transport has been
split out into a LightPath struct. Also moving over to spectral
rendering, although it's a bit silly at the moment.
2016-06-26 23:08:24 -07:00
c1b063411f
First steps towards motion blur support.
2016-01-03 21:21:46 -08:00
a66059d13e
Implemented anti-aliasing with permuted halton sequence.
2015-12-29 13:42:40 -08:00