The formula used to calculate the inverse of the direction vector
doesn't handle the direction vector aligning with an axis. Depending on
the SIMD (or not SIMD) implementation used, a axis aligned vector would
either remain the same, or e.g. end up with NaN components messing up
any future calculations.
Fixing the math to handle this is non-trivial, so for now work around
this by nudging the direction vector slightly off axis so that it has a
better hand of hitting the right box even when the direction is axis
aligned.
The formula used to calculate the inverse of the direction vector doesn't handle the direction vector aligning with an axis. Depending on the SIMD (or not SIMD) implementation used, a axis aligned vector would either remain the same, or e.g. end up with NaN components messing up any future calculations.
Fixing the math to handle this is non-trivial, so for now work around this by nudging the direction vector slightly off axis so that it has a better hand of hitting the right box even when the direction is axis aligned.
Closes: #214
Fixes #...
Proposed changes:
Benchmark results:
Test suite changes: