[−][src]Trait pbrt::core::material::Material
Material defines the interface that material implementations must provide.
Required Methods
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
allow_multiple_lobes: bool
)
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
allow_multiple_lobes: bool
)
The method is given a SurfaceInteraction object that contains geometric properties at an intersection point on the surface of a shape and is responsible for determining the reflective properties at the point and initializing some member variables.
Provided Methods
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized,
Self: Sized,
Computing the effect of bump mapping at the point being shaded given a particular displacement texture.
Implementors
impl Material for DisneyMaterial[src]
impl Material for DisneyMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for FourierMaterial[src]
impl Material for FourierMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for GlassMaterial[src]
impl Material for GlassMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for HairMaterial[src]
impl Material for HairMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for MatteMaterial[src]
impl Material for MatteMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for MetalMaterial[src]
impl Material for MetalMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for MirrorMaterial[src]
impl Material for MirrorMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for MixMaterial[src]
impl Material for MixMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for PlasticMaterial[src]
impl Material for PlasticMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for SubstrateMaterial[src]
impl Material for SubstrateMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
_mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, impl Material for UberMaterial[src]
impl Material for UberMaterialfn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
_allow_multiple_lobes: bool
)[src]
fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction,
mode: TransportMode,
_allow_multiple_lobes: bool
)fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized, [src]
fn bump(d: &Arc<dyn Texture<Float> + Send + Sync>, si: &mut SurfaceInteraction) where
Self: Sized,