[][src]Struct pbrt::core::scene::Scene

pub struct Scene {
    pub lights: Vec<Arc<dyn Light + Sync + Send>>,
    pub infinite_lights: Vec<Arc<dyn Light + Sync + Send>>,
    pub aggregate: Arc<BVHAccel>,
    pub world_bound: Bounds3f,
}

Fields

lights: Vec<Arc<dyn Light + Sync + Send>>infinite_lights: Vec<Arc<dyn Light + Sync + Send>>aggregate: Arc<BVHAccel>world_bound: Bounds3f

Methods

impl Scene[src]

pub fn new(
    aggregate: Arc<BVHAccel>,
    lights: Vec<Arc<dyn Light + Sync + Send>>
) -> Self
[src]

pub fn world_bound(&self) -> Bounds3f[src]

pub fn intersect(&self, ray: &mut Ray) -> Option<SurfaceInteraction>[src]

pub fn intersect_p(&self, ray: &mut Ray) -> bool[src]

pub fn intersect_tr(
    &self,
    ray: &mut Ray,
    sampler: &mut Box<dyn Sampler + Send + Sync>
) -> (Option<SurfaceInteraction>, Spectrum)
[src]

Trait Implementations

impl Clone for Scene[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

Auto Trait Implementations

impl Send for Scene

impl Sync for Scene

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> SetParameter for T[src]

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
    T: Parameter<Self>, 
[src]

Sets value as a parameter of self.