The spica renderer
Public Member Functions | Protected Attributes | List of all members
spica::MicrofacetDistribution Class Referenceabstract

The base class for microfacet distributions. More...

#include <microfacet.h>

Inheritance diagram for spica::MicrofacetDistribution:
spica::BeckmannDistribution spica::TrowbridgeReitzDistribution

Public Member Functions

 MicrofacetDistribution (double alphax, double alphay, bool sampleVisibleArea)
 
virtual double D (const Vector3d &wh) const =0
 
virtual double lambda (const Vector3d &w) const =0
 
double G1 (const Vector3d &w, const Vector3d &wh) const
 
double G (const Vector3d &wo, const Vector3d &wi, const Vector3d &wh) const
 
virtual Vector3d sample (const Vector3d &wo, const Point2d &rands) const =0
 Sample half-vector wh.
 
double pdf (const Vector3d &wo, const Vector3d &wh) const
 
double alphax () const
 
double alphay () const
 

Protected Attributes

const bool sampleVisibleArea_
 
const double alphax_
 
const double alphay_
 

Detailed Description

The base class for microfacet distributions.


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