Clarisse 5.0 SP8 SDK  5.0.5.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | List of all members
PbrBrdfLambertNormalisation Class Reference

The PbrBrdfNormalisation class Compensate the missing energy using the formula from Revisiting Physically Based Shading at Imageworks slide 10 link : https://blog.selfshadow.com/publications/s2017-shading-course/imageworks/s2017_pbs_imageworks_slides_v2.pdf. More...

Inheritance diagram for PbrBrdfLambertNormalisation:
PbrBxdfNormalisation CoreScratchpadObject

Public Member Functions

void configure (const GMathVec3d &reflect_albedo_wi, const GMathVec3d &reflect_average, const PbrBxdfLut *lut, const double roughness, const GMathVec3f &albedo, const GMathVec3d &shading_normal, const GMathVec3d &average_fresnel)
 
virtual GMathVec3f evaluate (const GMathVec3f &value, const GMathVec3d &wi, const GMathVec3d &wo, const GMathVec3d &normal, const GMathVec3d &kr, const GMathVec3d &kt) const
 evaluate Evaluate the normalisation necessary to compensate the energy loss and return the value that take into account the normalization.
 
- Public Member Functions inherited from PbrBxdfNormalisation
void set_strength (const double strength)
 
const double & get_strength () const
 
- Public Member Functions inherited from CoreScratchpadObject
virtual ~CoreScratchpadObject ()
 Implement this virtual destructor in your data class, the memory scratchpad will call it on the reset call.
 

Additional Inherited Members

- Protected Attributes inherited from PbrBxdfNormalisation
GMathVec3d m_average_fresnel
 

Detailed Description

The PbrBrdfNormalisation class Compensate the missing energy using the formula from Revisiting Physically Based Shading at Imageworks slide 10 link : https://blog.selfshadow.com/publications/s2017-shading-course/imageworks/s2017_pbs_imageworks_slides_v2.pdf.

Member Function Documentation

GMathVec3f PbrBrdfLambertNormalisation::evaluate ( const GMathVec3f &  value,
const GMathVec3d &  wi,
const GMathVec3d &  wo,
const GMathVec3d &  normal,
const GMathVec3d &  kr,
const GMathVec3d &  kt 
) const
virtual

evaluate Evaluate the normalisation necessary to compensate the energy loss and return the value that take into account the normalization.

Parameters
bxdfThe bxdf that needs to be normalized.
valueThe current value return by the bxdf.
wiThe incident ray
normalthe normal where the bxdf is evaluated
krThe reflection coeffecient of the fresnel
ktThe transmission coeffeceint of the fresnel
Returns
the bxdf's value that take into account the normalization.

Implements PbrBxdfNormalisation.