diff --git a/rtiow/src/renderer.rs b/rtiow/src/renderer.rs index 5c2fa8c..a351c00 100644 --- a/rtiow/src/renderer.rs +++ b/rtiow/src/renderer.rs @@ -543,6 +543,23 @@ pub fn render(scene: Scene, output_dir: &Path) -> std::result::Result<(), std::i core_ids }; info!("Creating {} render threads", core_ids.len()); + output::register_image( + output::MAIN_IMAGE.to_string(), + (scene.width, scene.height), + output::ImageType::RGB01, + ); + if scene.adaptive_subsampling.is_some() { + output::register_image( + output::ADAPTIVE_DEPTH.to_string(), + (scene.width, scene.height), + output::ImageType::RGB01, + ); + } + output::register_image( + output::RAYS_PER_PIXEL.to_string(), + (scene.width, scene.height), + output::ImageType::GreyNormalized, + ); // Create a thread for each active CPU core. let mut handles = core_ids .into_iter() @@ -584,23 +601,6 @@ pub fn render(scene: Scene, output_dir: &Path) -> std::result::Result<(), std::i })); info!("Rendering with {} subsamples", scene.subsamples); - output::register_image( - output::MAIN_IMAGE.to_string(), - (scene.width, scene.height), - output::ImageType::RGB01, - ); - if scene.adaptive_subsampling.is_some() { - output::register_image( - output::ADAPTIVE_DEPTH.to_string(), - (scene.width, scene.height), - output::ImageType::RGB01, - ); - } - output::register_image( - output::RAYS_PER_PIXEL.to_string(), - (scene.width, scene.height), - output::ImageType::GreyNormalized, - ); let pixel_total = scene.width * scene.height; let mut last_time = time::Instant::now();