Add next event estimation

This commit is contained in:
hal8174 2024-10-20 19:35:02 +02:00
parent 534a7d7097
commit 7d69122e8c
13 changed files with 317 additions and 21 deletions

View file

@ -7,8 +7,8 @@ use ray_tracing_core::{
scene::Scene,
};
use ray_tracing_renderer::{
depth_renderer::DepthRenderer, path_tracer::PathTracer,
path_tracer_importance::PathTracerImportance,
depth_renderer::DepthRenderer, next_event_estimation::NextEventEstimation,
path_tracer::PathTracer, path_tracer_importance::PathTracerImportance,
};
use ray_tracing_scene::examples::example_scenes;
use rayon::prelude::*;
@ -17,14 +17,14 @@ use tev_client::{PacketCreateImage, PacketUpdateImage, TevClient, TevError};
#[derive(Parser)]
struct Args {
#[arg(default_value = "127.0.0.1:14158")]
#[arg(long, default_value = "127.0.0.1:14158")]
tev: String,
scenes: Vec<String>,
#[arg(default_value_t = 400)]
#[arg(long, default_value_t = 400)]
width: u32,
#[arg(default_value_t = 400)]
#[arg(long, default_value_t = 400)]
height: u32,
#[arg(default_value_t = 1024)]
#[arg(long, default_value_t = 1024)]
samples_per_pixel: usize,
}
@ -115,20 +115,18 @@ fn main() {
&r,
&s,
&c,
128,
args.samples_per_pixel,
&mut client,
)
.unwrap();
let samples_per_pixel = 1024;
let r = PathTracer::new(args.width, args.height);
render_image(
format!("{scene} - path tracer"),
&r,
&s,
&c,
samples_per_pixel,
args.samples_per_pixel,
&mut client,
)
.unwrap();
@ -139,7 +137,18 @@ fn main() {
&r,
&s,
&c,
samples_per_pixel,
args.samples_per_pixel,
&mut client,
)
.unwrap();
let r = NextEventEstimation::new(args.width, args.height);
render_image(
format!("{scene} - next event estimation"),
&r,
&s,
&c,
args.samples_per_pixel,
&mut client,
)
.unwrap();