Struct rs_pbrt::materials::translucent::TranslucentMaterial
source · [−]pub struct TranslucentMaterial {
pub kd: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub ks: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub roughness: Arc<dyn Texture<Float> + Sync + Send>,
pub reflect: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub transmit: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub bump_map: Option<Arc<dyn Texture<Float> + Send + Sync>>,
pub remap_roughness: bool,
}
Fields
kd: Arc<dyn Texture<Spectrum> + Sync + Send>
ks: Arc<dyn Texture<Spectrum> + Sync + Send>
roughness: Arc<dyn Texture<Float> + Sync + Send>
reflect: Arc<dyn Texture<Spectrum> + Sync + Send>
transmit: Arc<dyn Texture<Spectrum> + Sync + Send>
bump_map: Option<Arc<dyn Texture<Float> + Send + Sync>>
remap_roughness: bool
Implementations
sourceimpl TranslucentMaterial
impl TranslucentMaterial
pub fn new(
kd: Arc<dyn Texture<Spectrum> + Send + Sync>,
ks: Arc<dyn Texture<Spectrum> + Send + Sync>,
roughness: Arc<dyn Texture<Float> + Sync + Send>,
reflect: Arc<dyn Texture<Spectrum> + Send + Sync>,
transmit: Arc<dyn Texture<Spectrum> + Send + Sync>,
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 TranslucentMaterial
impl Send for TranslucentMaterial
impl Sync for TranslucentMaterial
impl Unpin for TranslucentMaterial
impl !UnwindSafe for TranslucentMaterial
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