pub struct PathTracerRenderer {
pub scene: PathTracerScene,
pub camera: Camera,
pub max_depth: usize,
pub samples_per_pass: usize,
}Expand description
Renderer that progressively renders a scene into a PathTracerBuffer.
Fields§
§scene: PathTracerSceneScene to render.
camera: CameraCamera.
max_depth: usizeMaximum ray bounce depth.
samples_per_pass: usizeSamples per pixel per call to render_pass.
Implementations§
Source§impl PathTracerRenderer
impl PathTracerRenderer
Sourcepub fn new(
scene: PathTracerScene,
camera: Camera,
max_depth: usize,
samples_per_pass: usize,
) -> Self
pub fn new( scene: PathTracerScene, camera: Camera, max_depth: usize, samples_per_pass: usize, ) -> Self
Create a new renderer.
Sourcepub fn render_pass(&self, buffer: &mut PathTracerBuffer)
pub fn render_pass(&self, buffer: &mut PathTracerBuffer)
Render one progressive pass into buffer.
Each pixel receives self.samples_per_pass new samples.
Trait Implementations§
Source§impl Clone for PathTracerRenderer
impl Clone for PathTracerRenderer
Source§fn clone(&self) -> PathTracerRenderer
fn clone(&self) -> PathTracerRenderer
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for PathTracerRenderer
impl RefUnwindSafe for PathTracerRenderer
impl Send for PathTracerRenderer
impl Sync for PathTracerRenderer
impl Unpin for PathTracerRenderer
impl UnsafeUnpin for PathTracerRenderer
impl UnwindSafe for PathTracerRenderer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more