summaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/main.rs b/src/main.rs
index b33664e..864fd4d 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -17,25 +17,32 @@ fn main() {
let mut display_buffer: DisplayBuffer = [[Pixel::default(); IMG_WIDTH]; IMG_HEIGHT];
let mut world = HittableList::new();
- let ground = Material::new(Color::from_name(ColorName::Maroon), MaterialType::Diffuse);
- let stone = Material::new(Color::from_name(ColorName::Gray), MaterialType::Diffuse);
+ let ground = Material::new(Color::from_name(ColorName::Gray), MaterialType::Diffuse);
+ let stone = Material::new(Color::from_name(ColorName::Navy), MaterialType::Diffuse);
let steel = Material::new(Color::from_name(ColorName::Silver), MaterialType::Metallic(0.1));
// let gold = Material::new(Color::from_name(ColorName::Yellow), MaterialType::Metallic(0.0));
let glass = Material::new(Color::from_name(ColorName::White), MaterialType::Transparent(1.5));
- let bubble = Material::new(Color::from_name(ColorName::White), MaterialType::Transparent(1.0 / 1.3));
+ let rare_metal = Material::new(Color::from_name(ColorName::Red), MaterialType::Metallic(0.0));
world.push(
Sphere::new(Point3::new(0.0, -100.5, -1.0), 100.0, ground)
);
world.push(
- Sphere::new(Point3::new(0.0, 0.0, -1.2), 0.5, stone)
+ Sphere::new(Point3::new(0.0, 0.0, -1.0), 0.5, stone)
);
world.push(
- Sphere::new(Point3::new(-1.0, 0.0, -1.0), 0.5, glass)
+ Sphere::new(Point3::new(-1.0, 0.0, -1.0), 0.5, glass.clone())
);
world.push(
Sphere::new(Point3::new(1.0, 0.0, -1.0), 0.5, steel)
);
+ world.push(
+ Sphere::new(Point3::new(1.0, -0.3, 0.0), 0.3, rare_metal)
+ );
+ world.push(
+ Sphere::new(Point3::new(0.3, -0.4, 0.0), 0.4, glass.clone())
+ );
+
let camera = Camera::default();