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
MicrofacetDistributiondistribution
Fresnelfresnel


Detailed Description

Definition at line 283 of file reflection.h.


Constructor & Destructor Documentation

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

Definition at line 157 of file reflection.cpp.


Member Function Documentation

Spectrum Microfacet::f ( const Vector wo,
const Vector wi 
) const [virtual]

Implements BxDF.

Definition at line 163 of file reflection.cpp.

References CosTheta(), MicrofacetDistribution::D(), distribution, Dot(), Fresnel::Evaluate(), fresnel, G(), Normalize(), and R.

Referenced by Sample_f().

float Microfacet::G ( const Vector wo,
const Vector wi,
const Vector wh 
) const [inline]

Definition at line 289 of file reflection.h.

References AbsDot(), and CosTheta().

Referenced by f().

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

Reimplemented from BxDF.

Definition at line 232 of file reflection.cpp.

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

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

Reimplemented from BxDF.

Definition at line 238 of file reflection.cpp.

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


Member Data Documentation

Definition at line 303 of file reflection.h.

Referenced by f().

Definition at line 304 of file reflection.h.

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

Definition at line 305 of file reflection.h.

Referenced by f().


The documentation for this class was generated from the following files:

Generated on Mon Jul 20 17:31:55 2009 for pbrt by  doxygen 1.5.6