|
Blender V5.0
|
Go to the source code of this file.
Classes | |
| struct | OrenNayarBsdf |
Functions | |
| ccl_device_inline float | bsdf_oren_nayar_G (const float cosTheta) |
| ccl_device Spectrum | bsdf_oren_nayar_get_intensity (const ccl_private ShaderClosure *sc, const float3 n, const float3 v, const float3 l) |
| ccl_device int | bsdf_oren_nayar_setup (const ccl_private ShaderData *sd, ccl_private OrenNayarBsdf *bsdf, const Spectrum color) |
| ccl_device Spectrum | bsdf_oren_nayar_eval (const ccl_private ShaderClosure *sc, const float3 wi, const float3 wo, ccl_private float *pdf) |
| ccl_device int | bsdf_oren_nayar_sample (const ccl_private ShaderClosure *sc, const float3 Ng, const float3 wi, const float2 rand, ccl_private Spectrum *eval, ccl_private float3 *wo, ccl_private float *pdf) |
| ccl_device Spectrum bsdf_oren_nayar_eval | ( | const ccl_private ShaderClosure * | sc, |
| const float3 | wi, | ||
| const float3 | wo, | ||
| ccl_private float * | pdf ) |
Definition at line 88 of file bsdf_oren_nayar.h.
References bsdf_oren_nayar_get_intensity(), ccl_device, ccl_private, dot(), M_1_PI_F, and zero_spectrum.
Referenced by bsdf_eval().
| ccl_device_inline float bsdf_oren_nayar_G | ( | const float | cosTheta | ) |
Definition at line 29 of file bsdf_oren_nayar.h.
References ccl_device_inline, M_PI_2_F, safe_acosf(), sin_from_cos(), and sqr.
Referenced by bsdf_oren_nayar_get_intensity(), and bsdf_oren_nayar_setup().
| ccl_device Spectrum bsdf_oren_nayar_get_intensity | ( | const ccl_private ShaderClosure * | sc, |
| const float3 | n, | ||
| const float3 | v, | ||
| const float3 | l ) |
Definition at line 41 of file bsdf_oren_nayar.h.
References bsdf_oren_nayar_G(), ccl_device, ccl_private, dot(), l, M_1_PI_F, M_PI_F, make_spectrum, max, and v.
Referenced by bsdf_oren_nayar_eval(), and bsdf_oren_nayar_sample().
| ccl_device int bsdf_oren_nayar_sample | ( | const ccl_private ShaderClosure * | sc, |
| const float3 | Ng, | ||
| const float3 | wi, | ||
| const float2 | rand, | ||
| ccl_private Spectrum * | eval, | ||
| ccl_private float3 * | wo, | ||
| ccl_private float * | pdf ) |
Definition at line 103 of file bsdf_oren_nayar.h.
References bsdf_oren_nayar_get_intensity(), ccl_device, ccl_private, dot(), LABEL_DIFFUSE, LABEL_REFLECT, sample_cos_hemisphere(), and zero_spectrum.
Referenced by bsdf_sample().
| ccl_device int bsdf_oren_nayar_setup | ( | const ccl_private ShaderData * | sd, |
| ccl_private OrenNayarBsdf * | bsdf, | ||
| const Spectrum | color ) |
Definition at line 66 of file bsdf_oren_nayar.h.
References bsdf_oren_nayar_G(), ccl_device, ccl_private, CLOSURE_BSDF_OREN_NAYAR_ID, dot(), M_1_PI_F, M_2PI_F, M_PI_2_F, M_PI_F, max, one_spectrum, saturate, saturatef, SD_BSDF, SD_BSDF_HAS_EVAL, and sqr.
Referenced by osl_closure_oren_nayar_diffuse_bsdf_setup(), osl_closure_oren_nayar_setup(), and svm_node_closure_bsdf().