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§
source§impl 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§
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