Struct rs_pbrt::materials::subsurface::SubsurfaceMaterial   
source · [−]pub struct SubsurfaceMaterial {
    pub scale: Float,
    pub kr: Arc<dyn Texture<Spectrum> + Sync + Send>,
    pub kt: Arc<dyn Texture<Spectrum> + Sync + Send>,
    pub sigma_a: Arc<dyn Texture<Spectrum> + Sync + Send>,
    pub sigma_s: Arc<dyn Texture<Spectrum> + Sync + Send>,
    pub u_roughness: Arc<dyn Texture<Float> + Sync + Send>,
    pub v_roughness: Arc<dyn Texture<Float> + Sync + Send>,
    pub bump_map: Option<Arc<dyn Texture<Float> + Send + Sync>>,
    pub eta: Float,
    pub remap_roughness: bool,
    pub table: Arc<BssrdfTable>,
}Fields
scale: Floatkr: Arc<dyn Texture<Spectrum> + Sync + Send>kt: Arc<dyn Texture<Spectrum> + Sync + Send>sigma_a: Arc<dyn Texture<Spectrum> + Sync + Send>sigma_s: Arc<dyn Texture<Spectrum> + Sync + Send>u_roughness: Arc<dyn Texture<Float> + Sync + Send>v_roughness: Arc<dyn Texture<Float> + Sync + Send>bump_map: Option<Arc<dyn Texture<Float> + Send + Sync>>eta: Floatremap_roughness: booltable: Arc<BssrdfTable>Implementations
sourceimpl SubsurfaceMaterial
 
impl SubsurfaceMaterial
pub fn new(
    scale: Float, 
    kr: Arc<dyn Texture<Spectrum> + Sync + Send>, 
    kt: Arc<dyn Texture<Spectrum> + Sync + Send>, 
    sigma_a: Arc<dyn Texture<Spectrum> + Sync + Send>, 
    sigma_s: Arc<dyn Texture<Spectrum> + Sync + Send>, 
    g: Float, 
    eta: Float, 
    u_roughness: Arc<dyn Texture<Float> + Sync + Send>, 
    v_roughness: Arc<dyn Texture<Float> + Sync + Send>, 
    bump_map: Option<Arc<dyn Texture<Float> + Sync + Send>>, 
    remap_roughness: bool
) -> Self
pub fn create(mp: &mut TextureParams) -> Arc<Material>
pub fn compute_scattering_functions(
    &self, 
    si: &mut SurfaceInteraction<'_>, 
    mode: TransportMode, 
    allow_multiple_lobes: bool, 
    material: Option<Arc<Material>>, 
    scale_opt: Option<Spectrum>
)
Auto Trait Implementations
impl !RefUnwindSafe for SubsurfaceMaterial
impl Send for SubsurfaceMaterial
impl Sync for SubsurfaceMaterial
impl Unpin for SubsurfaceMaterial
impl !UnwindSafe for SubsurfaceMaterial
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