From 750435847ef6ae4805cce8712b1dfcea69e6b5d9 Mon Sep 17 00:00:00 2001 From: Jon Janzen Date: Sun, 21 Mar 2021 19:27:16 -0600 Subject: [PATCH] start from 0 works --- src/main.rs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main.rs b/src/main.rs index c15d1fc..d56ae7e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -60,19 +60,23 @@ fn main() { let env = init_env(); let mut ball = Projectile::new( - Tuple::point(0.0, 0.0, 1.0), + Tuple::point(0.0, 0.0, 0.0), Tuple::vector(2.2, 0.0, 21.0), ); let mut canvas = Canvas::new(300, 300); let color = Color::new(1.0, 1.0, 0.0); - while ball.position.z() < canvas.height() as f32 - && ball.position.z() >= 0.0 - && ball.position.x() < canvas.width() as f32 - && ball.position.x() >= 0.0 { - canvas.write_pixel(ball.position.x() as usize, canvas.height() - ball.position.z() as usize, color); + loop { + canvas.write_pixel(ball.position.x() as usize, canvas.height() - (ball.position.z() as usize) - 1, color); ball.tick(&env); + println!("ball {}", ball); + if ball.position.z() >= (canvas.height() - 1) as f32 + || ball.position.z() < 0.0 + || ball.position.x() >= (canvas.width() - 1) as f32 + || ball.position.x() < 0.0 { + break; + } } let ppm = canvas.to_ppm();