private function intersections(Ray $ray, Scene $scene) { $closest = INF; $closestInter = null; foreach ($scene->things() as $thing) { $inter = $thing->intersect($ray); if ($inter != null && $inter->dist < $closest) { $closestInter = $inter; $closest = $inter->dist; } } return $closestInter; }