![]() |
Blender V2.61 - r43446
|
Go to the source code of this file.
Classes | |
| struct | BsdfDiffuseClosure |
| struct | BsdfTranslucentClosure |
Typedefs | |
| typedef CCL_NAMESPACE_BEGIN struct BsdfDiffuseClosure | BsdfDiffuseClosure |
| typedef struct BsdfTranslucentClosure | BsdfTranslucentClosure |
Functions | |
| __device void | bsdf_diffuse_setup (ShaderData *sd, ShaderClosure *sc) |
| __device void | bsdf_diffuse_blur (ShaderClosure *sc, float roughness) |
| __device float3 | bsdf_diffuse_eval_reflect (const ShaderData *sd, const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| __device float3 | bsdf_diffuse_eval_transmit (const ShaderData *sd, const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| __device float | bsdf_diffuse_albedo (const ShaderData *sd, const ShaderClosure *sc, const float3 I) |
| __device int | bsdf_diffuse_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) |
| __device void | bsdf_translucent_setup (ShaderData *sd, ShaderClosure *sc) |
| __device void | bsdf_translucent_blur (ShaderClosure *sc, float roughness) |
| __device float3 | bsdf_translucent_eval_reflect (const ShaderData *sd, const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| __device float3 | bsdf_translucent_eval_transmit (const ShaderData *sd, const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| __device float | bsdf_translucent_albedo (const ShaderData *sd, const ShaderClosure *sc, const float3 I) |
| __device int | bsdf_translucent_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 BsdfDiffuseClosure BsdfDiffuseClosure |
| typedef struct BsdfTranslucentClosure BsdfTranslucentClosure |
| __device float bsdf_diffuse_albedo | ( | const ShaderData * | sd, |
| const ShaderClosure * | sc, | ||
| const float3 | I | ||
| ) |
Definition at line 68 of file bsdf_diffuse.h.
| __device void bsdf_diffuse_blur | ( | ShaderClosure * | sc, |
| float | roughness | ||
| ) |
Definition at line 50 of file bsdf_diffuse.h.
Referenced by svm_bsdf_blur().
| __device float3 bsdf_diffuse_eval_reflect | ( | const ShaderData * | sd, |
| const ShaderClosure * | sc, | ||
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 54 of file bsdf_diffuse.h.
References dot(), fmaxf, M_1_PI_F, make_float3(), and ShaderData::N.
Referenced by svm_bsdf_eval().
| __device float3 bsdf_diffuse_eval_transmit | ( | const ShaderData * | sd, |
| const ShaderClosure * | sc, | ||
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 63 of file bsdf_diffuse.h.
References make_float3().
Referenced by svm_bsdf_eval().
| __device int bsdf_diffuse_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 73 of file bsdf_diffuse.h.
References ShaderData::dI, dot(), differential3::dx, differential3::dy, LABEL_DIFFUSE, LABEL_REFLECT, make_float3(), ShaderData::N, ShaderData::Ng, and sample_cos_hemisphere().
Referenced by svm_bsdf_sample().
| __device void bsdf_diffuse_setup | ( | ShaderData * | sd, |
| ShaderClosure * | sc | ||
| ) |
Definition at line 44 of file bsdf_diffuse.h.
References CLOSURE_BSDF_DIFFUSE_ID, ShaderData::flag, SD_BSDF, SD_BSDF_HAS_EVAL, and ShaderClosure::type.
Referenced by shader_eval_surface(), and svm_node_closure_bsdf().
| __device float bsdf_translucent_albedo | ( | const ShaderData * | sd, |
| const ShaderClosure * | sc, | ||
| const float3 | I | ||
| ) |
Definition at line 126 of file bsdf_diffuse.h.
| __device void bsdf_translucent_blur | ( | ShaderClosure * | sc, |
| float | roughness | ||
| ) |
Definition at line 108 of file bsdf_diffuse.h.
Referenced by svm_bsdf_blur().
| __device float3 bsdf_translucent_eval_reflect | ( | const ShaderData * | sd, |
| const ShaderClosure * | sc, | ||
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 112 of file bsdf_diffuse.h.
References make_float3().
Referenced by svm_bsdf_eval().
| __device float3 bsdf_translucent_eval_transmit | ( | const ShaderData * | sd, |
| const ShaderClosure * | sc, | ||
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 117 of file bsdf_diffuse.h.
References dot(), fmaxf, M_1_PI_F, make_float3(), and ShaderData::N.
Referenced by svm_bsdf_eval().
| __device int bsdf_translucent_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 131 of file bsdf_diffuse.h.
References ShaderData::dI, dot(), differential3::dx, differential3::dy, LABEL_DIFFUSE, LABEL_TRANSMIT, make_float3(), ShaderData::N, ShaderData::Ng, and sample_cos_hemisphere().
Referenced by svm_bsdf_sample().
| __device void bsdf_translucent_setup | ( | ShaderData * | sd, |
| ShaderClosure * | sc | ||
| ) |
Definition at line 102 of file bsdf_diffuse.h.
References CLOSURE_BSDF_TRANSLUCENT_ID, ShaderData::flag, SD_BSDF, SD_BSDF_HAS_EVAL, and ShaderClosure::type.
Referenced by svm_node_closure_bsdf().