Implements a Lambertian edf.
|
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE | LambertEdf (const Vector3f _color) |
|
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE Vector3f | f (const DifferentialGeometry &geometry, const Vector3f in, const Vector3f out) const |
|
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE Vector3f | f_over_p (const DifferentialGeometry &geometry, const Vector3f in, const Vector3f out) const |
|
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE float | p (const DifferentialGeometry &geometry, const Vector3f in, const Vector3f out, const SphericalMeasure measure=kProjectedSolidAngle) const |
|
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE void | sample (const Vector2f u, const DifferentialGeometry &geometry, const Vector3f in, Vector3f &out, Vector3f &g, float &p, float &p_proj) const |
|
template<typename RandomGeneratorT > |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE bool | invert (const DifferentialGeometry &geometry, const Vector3f V, const Vector3f L, RandomGeneratorT &random, Vector3f &z, float &p, float &p_proj) const |
|
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE void | inverse_pdf (const DifferentialGeometry &geometry, const Vector3f V, const Vector3f L, const Vector3f u, float &p, float &p_proj) const |
|