Add MIS to egui

This commit is contained in:
hal8174 2025-01-14 16:39:57 +01:00
parent ed7b0454d0
commit 7ec1187899

View file

@ -8,7 +8,7 @@ use ray_tracing_core::{
camera::BasicCamera, prelude::*, renderer::ClassicalRenderer, scene::Scene, camera::BasicCamera, prelude::*, renderer::ClassicalRenderer, scene::Scene,
}; };
use ray_tracing_renderer::{ use ray_tracing_renderer::{
depth_renderer::DepthRenderer, next_event_estimation::NextEventEstimation, depth_renderer::DepthRenderer, mis::MIS, next_event_estimation::NextEventEstimation,
path_tracer::PathTracer, path_tracer_importance::PathTracerImportance, path_tracer::PathTracer, path_tracer_importance::PathTracerImportance,
}; };
use ray_tracing_scene::examples; use ray_tracing_scene::examples;
@ -23,7 +23,7 @@ use vulkano::{
type DynRenderer = type DynRenderer =
dyn ClassicalRenderer<SmallRng, Box<dyn Scene<SmallRng> + Sync>, BasicCamera> + Sync; dyn ClassicalRenderer<SmallRng, Box<dyn Scene<SmallRng> + Sync>, BasicCamera> + Sync;
pub const RENDERER: [(&str, fn(u32, u32) -> Box<DynRenderer>); 4] = [ pub const RENDERER: [(&str, fn(u32, u32) -> Box<DynRenderer>); 5] = [
("Depth", |w, h| { ("Depth", |w, h| {
Box::new(DepthRenderer::new(w, h)) as Box<DynRenderer> Box::new(DepthRenderer::new(w, h)) as Box<DynRenderer>
}), }),
@ -36,6 +36,7 @@ pub const RENDERER: [(&str, fn(u32, u32) -> Box<DynRenderer>); 4] = [
("Next event estimation", |w, h| { ("Next event estimation", |w, h| {
Box::new(NextEventEstimation::new(w, h)) as Box<DynRenderer> Box::new(NextEventEstimation::new(w, h)) as Box<DynRenderer>
}), }),
("MIS", |w, h| Box::new(MIS::new(w, h)) as Box<DynRenderer>),
]; ];
#[derive(Debug, Clone)] #[derive(Debug, Clone)]