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
PbrFresnelIridescent Class Reference
Inheritance diagram for PbrFresnelIridescent:
PbrFresnel CoreScratchpadObject

Public Member Functions

void configure (const GMathVec3d &material_ior, double thickness, const GMathVec3d &thin_layer_ior, const GMathVec3d &kappa, const double &outside_ior=1.0)
 
void evaluate (const GMathVec3d &wi, const GMathVec3d &wo, const GMathVec3d &n, GMathVec3d &out_kr, GMathVec3d &out_kt) const
 
void get_bound (const GMathVec3d &wi, const GMathVec3d &n, GMathVec3d &kr, GMathVec3d &kt) const
 
- Public Member Functions inherited from PbrFresnel
 PbrFresnel ()
 Evaluate reflective and transmissive fresnel terms according to incoming, outgoing directions and surface normal.
 
virtual void get_estimation (const GMathVec3d &wi, const GMathVec3d &n, GMathVec3d &kr, GMathVec3d &kt) 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.
 

Detailed Description

class PbrFresnelIridescent : Implementation of the Fresnel equations for the iridescent based on the paper : A Practical Extension to Microfacet Theory for the Modeling of Varying Iridescence Link : https://belcour.github.io/blog/research/2017/05/01/brdf-thin-film.html Here we are considering that the spectrum samples is 3