Blender  V2.93
Classes | Functions | Variables
bsdf_oren_nayar.h File Reference

Go to the source code of this file.

Classes

struct  OrenNayarBsdf
 

Functions

ccl_device float3 bsdf_oren_nayar_get_intensity (const ShaderClosure *sc, float3 n, float3 v, float3 l)
 
ccl_device int bsdf_oren_nayar_setup (OrenNayarBsdf *bsdf)
 
ccl_device bool bsdf_oren_nayar_merge (const ShaderClosure *a, const ShaderClosure *b)
 
ccl_device float3 bsdf_oren_nayar_eval_reflect (const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf)
 
ccl_device float3 bsdf_oren_nayar_eval_transmit (const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf)
 
ccl_device int bsdf_oren_nayar_sample (const ShaderClosure *sc, float3 Ng, float3 I, float3 dIdx, float3 dIdy, float randu, float randv, float3 *eval, float3 *omega_in, float3 *domega_in_dx, float3 *domega_in_dy, float *pdf)
 

Variables

CCL_NAMESPACE_BEGIN typedef ccl_addr_space struct OrenNayarBsdf OrenNayarBsdf
 

Function Documentation

◆ bsdf_oren_nayar_eval_reflect()

ccl_device float3 bsdf_oren_nayar_eval_reflect ( const ShaderClosure sc,
const float3  I,
const float3  omega_in,
float pdf 
)

Definition at line 72 of file bsdf_oren_nayar.h.

References bsdf_oren_nayar_get_intensity(), dot(), I, M_1_PI_F, and make_float3.

Referenced by bsdf_eval().

◆ bsdf_oren_nayar_eval_transmit()

ccl_device float3 bsdf_oren_nayar_eval_transmit ( const ShaderClosure sc,
const float3  I,
const float3  omega_in,
float pdf 
)

Definition at line 88 of file bsdf_oren_nayar.h.

References make_float3.

Referenced by bsdf_eval().

◆ bsdf_oren_nayar_get_intensity()

ccl_device float3 bsdf_oren_nayar_get_intensity ( const ShaderClosure sc,
float3  n,
float3  v,
float3  l 
)

◆ bsdf_oren_nayar_merge()

ccl_device bool bsdf_oren_nayar_merge ( const ShaderClosure a,
const ShaderClosure b 
)

Definition at line 64 of file bsdf_oren_nayar.h.

References Freestyle::a, isequal_float3(), and OrenNayarBsdf::roughness.

Referenced by bsdf_merge().

◆ bsdf_oren_nayar_sample()

ccl_device int bsdf_oren_nayar_sample ( const ShaderClosure sc,
float3  Ng,
float3  I,
float3  dIdx,
float3  dIdy,
float  randu,
float  randv,
float3 eval,
float3 omega_in,
float3 domega_in_dx,
float3 domega_in_dy,
float pdf 
)

◆ bsdf_oren_nayar_setup()

ccl_device int bsdf_oren_nayar_setup ( OrenNayarBsdf bsdf)

Variable Documentation

◆ OrenNayarBsdf