pub enum Material {
Show 13 variants
Disney(Box<DisneyMaterial>),
Fourier(Box<FourierMaterial>),
Glass(Box<GlassMaterial>),
Hair(Box<HairMaterial>),
Matte(Box<MatteMaterial>),
Metal(Box<MetalMaterial>),
Mirror(Box<MirrorMaterial>),
Mix(Box<MixMaterial>),
Plastic(Box<PlasticMaterial>),
Substrate(Box<SubstrateMaterial>),
Subsurface(Box<SubsurfaceMaterial>),
Translucent(Box<TranslucentMaterial>),
Uber(Box<UberMaterial>),
}
Variants
Disney(Box<DisneyMaterial>)
Fourier(Box<FourierMaterial>)
Glass(Box<GlassMaterial>)
Hair(Box<HairMaterial>)
Matte(Box<MatteMaterial>)
Metal(Box<MetalMaterial>)
Mirror(Box<MirrorMaterial>)
Mix(Box<MixMaterial>)
Plastic(Box<PlasticMaterial>)
Substrate(Box<SubstrateMaterial>)
Subsurface(Box<SubsurfaceMaterial>)
Translucent(Box<TranslucentMaterial>)
Uber(Box<UberMaterial>)
Implementations
sourceimpl Material
impl Material
Material defines the interface that material implementations must provide.
sourcepub fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction<'_>,
mode: TransportMode,
allow_multiple_lobes: bool,
mat: Option<Arc<Material>>,
scale: Option<Spectrum>
)
pub fn compute_scattering_functions(
&self,
si: &mut SurfaceInteraction<'_>,
mode: TransportMode,
allow_multiple_lobes: bool,
mat: Option<Arc<Material>>,
scale: Option<Spectrum>
)
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.
Auto Trait Implementations
impl !RefUnwindSafe for Material
impl Send for Material
impl Sync for Material
impl Unpin for Material
impl !UnwindSafe for Material
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more