From af5cbc11486b5feed4605b9f9685ed55d9f3710a Mon Sep 17 00:00:00 2001 From: Rosyid Haryadi Date: Sun, 2 Mar 2025 10:57:03 +0700 Subject: upd switch ray diffusion method --- src/camera.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/camera.rs') diff --git a/src/camera.rs b/src/camera.rs index 37e99c6..87ba7c3 100644 --- a/src/camera.rs +++ b/src/camera.rs @@ -85,10 +85,11 @@ impl Camera { let mut rec = HitRecord::default(); let ray_t = Interval::new(0.001, f32::INFINITY); if world.hit(ray, ray_t, &mut rec) { - let direction = Vec3::random_on_hemisphere(&rec.normal); + // let direction = Vec3::random_on_hemisphere(&rec.normal); + let direction = rec.normal.add(&Vec3::random_unit()); let origin = rec.position.clone(); let r = Ray { origin, direction }; - return self.ray_color(&r, world, depth - 1).mul_scalar(0.5); + return self.ray_color(&r, world, depth - 1).mul_scalar(0.9); } let unit_direction = ray.direction.unit(); -- cgit v1.2.3-70-g09d2