Microfacet Class Reference

#include <reflection.h>

Inheritance diagram for Microfacet:
BxDF

List of all members.

Public Member Functions

 Microfacet (const Spectrum &reflectance, Fresnel *f, MicrofacetDistribution *d)
Spectrum f (const Vector &wo, const Vector &wi) const
float G (const Vector &wo, const Vector &wi, const Vector &wh) const
Spectrum Sample_f (const Vector &wo, Vector *wi, float u1, float u2, float *pdf) const
float Pdf (const Vector &wo, const Vector &wi) const

Private Attributes

Spectrum R
MicrofacetDistribution * distribution
Fresnel * fresnel

Detailed Description

Definition at line 390 of file reflection.h.


Constructor & Destructor Documentation

Microfacet::Microfacet ( const Spectrum &  reflectance,
Fresnel *  f,
MicrofacetDistribution *  d 
)

Definition at line 196 of file reflection.cpp.


Member Function Documentation

Spectrum Microfacet::f ( const Vector &  wo,
const Vector &  wi 
) const [virtual]
float Microfacet::G ( const Vector &  wo,
const Vector &  wi,
const Vector &  wh 
) const [inline]

Definition at line 396 of file reflection.h.

References AbsCosTheta(), and AbsDot().

Referenced by f().

float Microfacet::Pdf ( const Vector &  wo,
const Vector &  wi 
) const [virtual]

Reimplemented from BxDF.

Definition at line 326 of file reflection.cpp.

References distribution, MicrofacetDistribution::Pdf(), and SameHemisphere().

Spectrum Microfacet::Sample_f ( const Vector &  wo,
Vector *  wi,
float  u1,
float  u2,
float *  pdf 
) const [virtual]

Reimplemented from BxDF.

Definition at line 318 of file reflection.cpp.

References distribution, f(), SameHemisphere(), and MicrofacetDistribution::Sample_f().


Member Data Documentation

Definition at line 410 of file reflection.h.

Referenced by f(), Pdf(), and Sample_f().

Definition at line 411 of file reflection.h.

Referenced by f().

Definition at line 409 of file reflection.h.

Referenced by f().


The documentation for this class was generated from the following files:
Generated on Sat Aug 28 20:00:14 2010 for pbrt by  doxygen 1.6.3