Blender V2.61 - r43446
|
Go to the source code of this file.
Classes | |
struct | BsdfOrenNayarClosure |
Typedefs | |
typedef CCL_NAMESPACE_BEGIN struct BsdfOrenNayarClosure | BsdfOrenNayarClosure |
Functions | |
__device float3 | bsdf_oren_nayar_get_intensity (const ShaderClosure *sc, float3 n, float3 v, float3 l) |
__device void | bsdf_oren_nayar_setup (ShaderData *sd, ShaderClosure *sc, float sigma) |
__device void | bsdf_oren_nayar_blur (ShaderClosure *sc, float roughness) |
__device float3 | bsdf_oren_nayar_eval_reflect (const ShaderData *sd, const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
__device float3 | bsdf_oren_nayar_eval_transmit (const ShaderData *sd, const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
__device float | bsdf_oren_nayar_albedo (const ShaderData *sd, const ShaderClosure *sc, const float3 I) |
__device int | bsdf_oren_nayar_sample (const ShaderData *sd, const ShaderClosure *sc, float randu, float randv, float3 *eval, float3 *omega_in, float3 *domega_in_dx, float3 *domega_in_dy, float *pdf) |
typedef CCL_NAMESPACE_BEGIN struct BsdfOrenNayarClosure BsdfOrenNayarClosure |
__device float bsdf_oren_nayar_albedo | ( | const ShaderData * | sd, |
const ShaderClosure * | sc, | ||
const float3 | I | ||
) |
Definition at line 114 of file bsdf_oren_nayar.h.
__device void bsdf_oren_nayar_blur | ( | ShaderClosure * | sc, |
float | roughness | ||
) |
Definition at line 93 of file bsdf_oren_nayar.h.
Referenced by svm_bsdf_blur().
__device float3 bsdf_oren_nayar_eval_reflect | ( | const ShaderData * | sd, |
const ShaderClosure * | sc, | ||
const float3 | I, | ||
const float3 | omega_in, | ||
float * | |||
) |
Definition at line 97 of file bsdf_oren_nayar.h.
References bsdf_oren_nayar_get_intensity(), dot(), M_1_PI_F, make_float3(), and ShaderData::N.
Referenced by svm_bsdf_eval().
__device float3 bsdf_oren_nayar_eval_transmit | ( | const ShaderData * | sd, |
const ShaderClosure * | sc, | ||
const float3 | I, | ||
const float3 | omega_in, | ||
float * | |||
) |
Definition at line 109 of file bsdf_oren_nayar.h.
References make_float3().
Referenced by svm_bsdf_eval().
__device float3 bsdf_oren_nayar_get_intensity | ( | const ShaderClosure * | sc, |
float3 | n, | ||
float3 | v, | ||
float3 | l | ||
) |
Definition at line 54 of file bsdf_oren_nayar.h.
References ShaderClosure::data0, ShaderClosure::data1, dot(), credits_svn_gen::e, make_float3(), max, normalize(), and sqrtf.
Referenced by bsdf_oren_nayar_eval_reflect(), and bsdf_oren_nayar_sample().
__device int bsdf_oren_nayar_sample | ( | const ShaderData * | sd, |
const ShaderClosure * | sc, | ||
float | randu, | ||
float | randv, | ||
float3 * | eval, | ||
float3 * | omega_in, | ||
float3 * | domega_in_dx, | ||
float3 * | domega_in_dy, | ||
float * | |||
) |
Definition at line 119 of file bsdf_oren_nayar.h.
References bsdf_oren_nayar_get_intensity(), ShaderData::dI, dot(), differential3::dx, differential3::dy, ShaderData::I, LABEL_DIFFUSE, LABEL_REFLECT, make_float3(), ShaderData::N, ShaderData::Ng, and sample_uniform_hemisphere().
Referenced by svm_bsdf_sample().
__device void bsdf_oren_nayar_setup | ( | ShaderData * | sd, |
ShaderClosure * | sc, | ||
float | sigma | ||
) |
Definition at line 80 of file bsdf_oren_nayar.h.
References clamp, CLOSURE_BSDF_OREN_NAYAR_ID, ShaderClosure::data0, ShaderClosure::data1, div, ShaderData::flag, M_PI_F, SD_BSDF, SD_BSDF_HAS_EVAL, and ShaderClosure::type.
Referenced by svm_node_closure_bsdf().