Whitted 光线追踪 trace() 函数返回类型问题

// 如果相交返回 Intersection 结构体,如果不相交则返回 false
std::optional<std::tuple<Intersection, GL::Material>> WhittedRenderer::trace(const Ray& ray,
const Scene& scene)
怎样从该函数的返回值中取得 Intersection 的值呢?