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: 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>
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: Float
remap_roughness: bool
table: 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