[][src]Struct pbrt::accelerators::bvh::BVHAccel

pub struct BVHAccel {
    pub primitives: Vec<Arc<Primitive>>,
    pub nodes: Vec<LinearBVHNode>,
    // some fields omitted


primitives: Vec<Arc<Primitive>>nodes: Vec<LinearBVHNode>


impl BVHAccel[src]

pub fn new(
    p: Vec<Arc<Primitive>>,
    max_prims_in_node: usize,
    split_method: SplitMethod
) -> Self

pub fn create(prims: Vec<Arc<Primitive>>, ps: &ParamSet) -> Primitive[src]

pub fn recursive_build<'a>(
    bvh: Arc<BVHAccel>,
    arena: &'a Arena<BVHBuildNode<'a>>,
    primitive_info: &mut Vec<BVHPrimitiveInfo>,
    start: usize,
    end: usize,
    total_nodes: &mut usize,
    ordered_prims: &mut Vec<Arc<Primitive>>
) -> &'a mut BVHBuildNode<'a>

pub fn flatten_bvh_tree<'a>(
    node: &mut BVHBuildNode<'a>,
    nodes: &mut Vec<LinearBVHNode>,
    offset: &mut usize
) -> usize

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

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

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

pub fn get_material(&self) -> Option<Arc<Material>>[src]

pub fn get_area_light(&self) -> Option<Arc<Light>>[src]

Auto Trait Implementations

impl Send for BVHAccel

impl Unpin for BVHAccel

impl Sync for BVHAccel

impl !UnwindSafe for BVHAccel

impl !RefUnwindSafe for BVHAccel

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> Borrow<T> for T where
    T: ?Sized

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

impl<T> SetParameter for T[src]