pub struct UberMaterial {
pub kd: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub ks: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub kr: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub kt: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub opacity: Arc<dyn Texture<Spectrum> + Sync + Send>,
pub roughness: Arc<dyn Texture<Float> + Sync + Send>,
pub u_roughness: Option<Arc<dyn Texture<Float> + Sync + Send>>,
pub v_roughness: Option<Arc<dyn Texture<Float> + Sync + Send>>,
pub eta: Arc<dyn Texture<Float> + Sync + Send>,
pub bump_map: Option<Arc<dyn Texture<Float> + Sync + Send>>,
pub remap_roughness: bool,
}
Fields
kd: Arc<dyn Texture<Spectrum> + Sync + Send>
ks: Arc<dyn Texture<Spectrum> + Sync + Send>
kr: Arc<dyn Texture<Spectrum> + Sync + Send>
kt: Arc<dyn Texture<Spectrum> + Sync + Send>
opacity: Arc<dyn Texture<Spectrum> + Sync + Send>
roughness: Arc<dyn Texture<Float> + Sync + Send>
u_roughness: Option<Arc<dyn Texture<Float> + Sync + Send>>
v_roughness: Option<Arc<dyn Texture<Float> + Sync + Send>>
eta: Arc<dyn Texture<Float> + Sync + Send>
bump_map: Option<Arc<dyn Texture<Float> + Sync + Send>>
remap_roughness: bool
Implementations
sourceimpl UberMaterial
impl UberMaterial
pub fn new(
kd: Arc<dyn Texture<Spectrum> + Sync + Send>,
ks: Arc<dyn Texture<Spectrum> + Sync + Send>,
kr: Arc<dyn Texture<Spectrum> + Sync + Send>,
kt: Arc<dyn Texture<Spectrum> + Sync + Send>,
roughness: Arc<dyn Texture<Float> + Sync + Send>,
u_roughness: Option<Arc<dyn Texture<Float> + Sync + Send>>,
v_roughness: Option<Arc<dyn Texture<Float> + Sync + Send>>,
opacity: Arc<dyn Texture<Spectrum> + Sync + Send>,
eta: Arc<dyn Texture<Float> + 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 UberMaterial
impl Send for UberMaterial
impl Sync for UberMaterial
impl Unpin for UberMaterial
impl !UnwindSafe for UberMaterial
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