Skip to content

Commit 168766d

Browse files
committed
maybe make it more efficient
1 parent fb21d16 commit 168766d

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

Diff for: src/hittable_list.rs

+7-8
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,16 @@ impl HittableList {
1414

1515
impl Hittable for HittableList {
1616
fn hit(&self, r: &crate::ray::Ray, ray_t: Interval, rec: &mut HitRecord) -> bool {
17-
let mut temp_rec = HitRecord::default();
18-
let mut hit_anything = false;
1917
let mut closest_so_far = ray_t.max;
2018

21-
for object in &self.objects {
22-
if object.hit(r, Interval::new(ray_t.min, closest_so_far), &mut temp_rec) {
23-
hit_anything = true;
24-
closest_so_far = temp_rec.t;
25-
*rec = temp_rec.clone();
19+
let hit_anything = self.objects.iter().any(|object| {
20+
if object.hit(r, Interval::new(ray_t.min, closest_so_far), rec) {
21+
closest_so_far = rec.t;
22+
true
23+
} else {
24+
false
2625
}
27-
}
26+
});
2827
hit_anything
2928
}
3029
}

0 commit comments

Comments
 (0)