Struct rs_pbrt::core::reflection::MicrofacetReflection
source · pub struct MicrofacetReflection {
pub r: Spectrum,
pub distribution: MicrofacetDistribution,
pub fresnel: Fresnel,
pub sc_opt: Option<Spectrum>,
}
Fields§
§r: Spectrum
§distribution: MicrofacetDistribution
§fresnel: Fresnel
§sc_opt: Option<Spectrum>
Implementations§
source§impl MicrofacetReflection
impl MicrofacetReflection
pub fn new( r: Spectrum, distribution: MicrofacetDistribution, fresnel: Fresnel, sc_opt: Option<Spectrum> ) -> Self
pub fn f(&self, wo: &Vector3f, wi: &Vector3f) -> Spectrum
pub fn sample_f( &self, wo: &Vector3f, wi: &mut Vector3f, u: &Point2f, pdf: &mut Float, _sampled_type: &mut u8 ) -> Spectrum
pub fn pdf(&self, wo: &Vector3f, wi: &Vector3f) -> Float
pub fn get_type(&self) -> u8
Trait Implementations§
source§impl Clone for MicrofacetReflection
impl Clone for MicrofacetReflection
source§fn clone(&self) -> MicrofacetReflection
fn clone(&self) -> MicrofacetReflection
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreimpl Copy for MicrofacetReflection
Auto Trait Implementations§
impl RefUnwindSafe for MicrofacetReflection
impl Send for MicrofacetReflection
impl Sync for MicrofacetReflection
impl Unpin for MicrofacetReflection
impl UnwindSafe for MicrofacetReflection
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