Do not recompute triangle normal during triangle raycasting

This commit is contained in:
Daniel Chappuis 2020-11-15 11:56:44 +01:00
parent 9d645bdca7
commit d4a58b7228

View File

@ -182,8 +182,7 @@ bool TriangleShape::raycast(const Ray& ray, RaycastInfo& raycastInfo, Collider*
if (hitFraction < decimal(0.0) || hitFraction > ray.maxFraction) return false;
Vector3 localHitNormal = (mPoints[1] - mPoints[0]).cross(mPoints[2] - mPoints[0]);
if (localHitNormal.dot(pq) > decimal(0.0)) localHitNormal = -localHitNormal;
Vector3 localHitNormal = mNormal.dot(pq) > decimal(0.0) ? mNormal : -mNormal;
raycastInfo.body = collider->getBody();
raycastInfo.collider = collider;