### Correct bug

 `@ -26,7 +26,7 @@` ``` ``` ` author: Miloslav "drummyfish" Ciz` ` license: CC0 1.0` ` version: 0.907` ` version: 0.908` `*/` ``` ``` `#include ` `@ -825,18 +825,21 @@ void RCL_castRayMultiHit(RCL_Ray ray, RCL_ArrayFunction arrayFunc,` ``` ``` `#if RCL_RECTILINEAR` ``` /* Here we compute the fish eye corrected distance (perpendicular to ``` ` the projection plane) as the Euclidean distance divided by the length` ` of the ray direction vector. This can be computed without actually` ` computing Euclidean distances as a hypothenuse A (distance) divided` ` by hypothenuse B (length) is equal to leg A (distance along one axis)` ` divided by leg B (length along the same axis). */` ` the projection plane) as the Euclidean distance (of hit from camera` ` position) divided by the length of the ray direction vector. This can` ` be computed without actually computing Euclidean distances as a` ` hypothenuse A (distance) divided by hypothenuse B (length) is equal to` ` leg A (distance along principal axis) divided by leg B (length along` ` the same principal axis). */` ``` ``` ` h.distance =` ` (((h.position.x - ray.start.x) / 4) *` ` RCL_UNITS_PER_SQUARE * rayDirXRecip)` ` / (RECIP_SCALE / 4);` `#define CORRECT(dir1,dir2)\` ` RCL_Unit tmp = diff / 4; /* 4 to prevent overflow */ \` ` h.distance = ((tmp / 8) != 0) ? /* prevent a bug with small dists */ \` ` ((tmp * RCL_UNITS_PER_SQUARE * rayDir ## dir1 ## Recip) / (RECIP_SCALE / 4)):\` ` RCL_abs(h.position.dir2 - ray.start.dir2);` ``` ``` ` CORRECT(X,y)` ``` ``` ``` // ^ / 4 is here to prevent overflow ``` `#endif` ` }` ` else` `@ -856,10 +859,10 @@ void RCL_castRayMultiHit(RCL_Ray ray, RCL_ArrayFunction arrayFunc,` ` ray.start.x + (ray.direction.x * diff * rayDirYRecip) / RECIP_SCALE;` ``` ``` `#if RCL_RECTILINEAR` ` h.distance =` ` (((h.position.y - ray.start.y) / 4) *` ` RCL_UNITS_PER_SQUARE * rayDirYRecip)` ` / (RECIP_SCALE / 4);` ``` ``` ``` CORRECT(Y,x) // same as above but for different axis ``` ``` ``` `#undef CORRECT` ``` ``` ``` // ^ / 4 is here to prevent overflow ``` `#endif`