From 63f8fba6a4e193530af6fae4925528ff1316c552 Mon Sep 17 00:00:00 2001 From: Bill Thiede Date: Sat, 28 Jan 2023 11:28:55 -0800 Subject: [PATCH] rtiow: fix ETA calculation. --- rtiow/renderer/src/renderer.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/rtiow/renderer/src/renderer.rs b/rtiow/renderer/src/renderer.rs index 3589193..1226669 100644 --- a/rtiow/renderer/src/renderer.rs +++ b/rtiow/renderer/src/renderer.rs @@ -410,8 +410,11 @@ fn progress( let ray_diff = current_stat.rays - last_stat.rays; let now = time::Instant::now(); let start_diff = now - start_time; - let percent = 100. * current_stat.pixels as f32 / pixel_total as f32; - let eta = 100. * start_diff.as_secs_f32() / percent; + let ratio = current_stat.pixels as f32 / pixel_total as f32; + let percent = ratio * 100.; + let elapsed = start_diff.as_secs_f32(); + let total = elapsed * (1. / ratio); + let eta = total - elapsed; format!( "{:7} / {:7}pixels ({:2.0}%) {:7}pixels/s {:7}rays/s eta {:.0}s", human.format(current_stat.pixels as f64),