„Számítógépes grafika házi feladat tutorial” változatai közötti eltérés
| 697. sor: | 697. sor: | ||
// megtudjuk, hogy az milyen gyorsan halad a sík fele. | // megtudjuk, hogy az milyen gyorsan halad a sík fele. | ||
// Innen a már csak a t = s / v képletet kell csak használnunk. | // Innen a már csak a t = s / v képletet kell csak használnunk. | ||
float ray_travel_dist = dot(a - r.origin, normal) / dot(r.direction, normal); | float ray_travel_dist = dot(a - r.origin, normal) / dot(r.direction, normal); | ||
// Ha a háromszög az ellenkező irányba van, mint | // Ha a háromszög az ellenkező irányba van, mint | ||
// amerre a sugár megy, akkor nincs | // amerre a sugár megy, vagy ha az előző műveletben | ||
if(ray_travel_dist < 0) | // nullával osztottunk, akkor nincs metszéspont. | ||
if(ray_travel_dist < 0 || isnan(ray_travel_dist)) | |||
return Intersection(); | return Intersection(); | ||