#include <reflection.h>
Public Member Functions | |
Anisotropic (float x, float y) | |
float | D (const Vector &wh) const |
void | Sample_f (const Vector &wo, Vector *wi, float u1, float u2, float *pdf) const |
float | Pdf (const Vector &wo, const Vector &wi) const |
void | sampleFirstQuadrant (float u1, float u2, float *phi, float *costheta) const |
Private Attributes | |
float | ex |
float | ey |
Definition at line 322 of file reflection.h.
Anisotropic::Anisotropic | ( | float | x, | |
float | y | |||
) | [inline] |
Definition at line 325 of file reflection.h.
float Anisotropic::D | ( | const Vector & | wh | ) | const [inline, virtual] |
Implements MicrofacetDistribution.
Definition at line 329 of file reflection.h.
References CosTheta(), INV_TWOPI, Vector::x, and Vector::y.
Referenced by Pdf(), and Sample_f().
void Anisotropic::Sample_f | ( | const Vector & | wo, | |
Vector * | wi, | |||
float | u1, | |||
float | u2, | |||
float * | ||||
) | const [virtual] |
Implements MicrofacetDistribution.
Definition at line 268 of file reflection.cpp.
References D(), Dot(), M_PI, sampleFirstQuadrant(), and SphericalDirection().
Implements MicrofacetDistribution.
Definition at line 308 of file reflection.cpp.
References D(), Dot(), and Normalize().
void Anisotropic::sampleFirstQuadrant | ( | float | u1, | |
float | u2, | |||
float * | phi, | |||
float * | costheta | |||
) | const |
float Anisotropic::ex [private] |
float Anisotropic::ey [private] |