From d0825a136ff65b36069ff8b078b9fd97adeed0df Mon Sep 17 00:00:00 2001 From: Anthony LaTorre Date: Wed, 1 Jun 2011 17:00:37 -0400 Subject: first step towards moving to a new mesh/solid/geometry structure --- src/intersect.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/intersect.h b/src/intersect.h index b984612..a968f09 100644 --- a/src/intersect.h +++ b/src/intersect.h @@ -26,21 +26,21 @@ __device__ bool intersect_triangle(const float3 &origin, const float3 &direction (m.a02*m.a21 - m.a01*m.a22)*b.y + (m.a01*m.a12 - m.a02*m.a11)*b.z)/determinant; - if (u1 < 0.0f) + if (u1 < 0.0f || u1 > 1.0f) return false; float u2 = ((m.a12*m.a20 - m.a10*m.a22)*b.x + (m.a00*m.a22 - m.a02*m.a20)*b.y + (m.a02*m.a10 - m.a00*m.a12)*b.z)/determinant; - if (u2 < 0.0f) + if (u2 < 0.0f || u2 > 1.0f) return false; float u3 = ((m.a10*m.a21 - m.a11*m.a20)*b.x + (m.a01*m.a20 - m.a00*m.a21)*b.y + (m.a00*m.a11 - m.a01*m.a10)*b.z)/determinant; - if (u3 < 0.0f || (1-u1-u2) < 0.0f) + if (u3 < 0.0f || (1.0f-u1-u2) < 0.0f) return false; distance = u3; -- cgit