|
Blender
V3.3
|
Go to the source code of this file.
Classes | |
| struct | PrincipledDiffuseBsdf |
Typedefs | |
| typedef struct PrincipledDiffuseBsdf | PrincipledDiffuseBsdf |
Enumerations | |
| enum | PrincipledDiffuseBsdfComponents { PRINCIPLED_DIFFUSE_FULL = 1 , PRINCIPLED_DIFFUSE_LAMBERT = 2 , PRINCIPLED_DIFFUSE_LAMBERT_EXIT = 4 , PRINCIPLED_DIFFUSE_RETRO_REFLECTION = 8 } |
| typedef struct PrincipledDiffuseBsdf PrincipledDiffuseBsdf |
| Enumerator | |
|---|---|
| PRINCIPLED_DIFFUSE_FULL | |
| PRINCIPLED_DIFFUSE_LAMBERT | |
| PRINCIPLED_DIFFUSE_LAMBERT_EXIT | |
| PRINCIPLED_DIFFUSE_RETRO_REFLECTION | |
Definition at line 21 of file bsdf_principled_diffuse.h.
| ccl_device float3 bsdf_principled_diffuse_compute_brdf | ( | ccl_private const PrincipledDiffuseBsdf * | bsdf, |
| float3 | N, | ||
| float3 | V, | ||
| float3 | L, | ||
| ccl_private float * | |||
| ) |
Definition at line 46 of file bsdf_principled_diffuse.h.
References blender::math::dot(), L, M_1_PI_F, make_float3, N, PRINCIPLED_DIFFUSE_FULL, PRINCIPLED_DIFFUSE_LAMBERT, PRINCIPLED_DIFFUSE_LAMBERT_EXIT, PRINCIPLED_DIFFUSE_RETRO_REFLECTION, schlick_fresnel(), and V.
Referenced by bsdf_principled_diffuse_eval_reflect(), and bsdf_principled_diffuse_sample().
| ccl_device_inline float bsdf_principled_diffuse_compute_entry_fresnel | ( | const float | NdotV | ) |
Definition at line 90 of file bsdf_principled_diffuse.h.
References schlick_fresnel().
| ccl_device float3 bsdf_principled_diffuse_eval_reflect | ( | ccl_private const ShaderClosure * | sc, |
| const float3 | I, | ||
| const float3 | omega_in, | ||
| ccl_private float * | |||
| ) |
Definition at line 112 of file bsdf_principled_diffuse.h.
References bsdf_principled_diffuse_compute_brdf(), ccl_private, blender::math::dot(), fmaxf, I, L, M_1_PI_F, make_float3, N, and V.
Referenced by bsdf_eval().
| ccl_device float3 bsdf_principled_diffuse_eval_transmit | ( | ccl_private const ShaderClosure * | sc, |
| const float3 | I, | ||
| const float3 | omega_in, | ||
| ccl_private float * | |||
| ) |
Definition at line 133 of file bsdf_principled_diffuse.h.
References make_float3.
Referenced by bsdf_eval().
| ccl_device_inline float bsdf_principled_diffuse_retro_reflection_sample_weight | ( | ccl_private PrincipledDiffuseBsdf * | bsdf, |
| const float3 | I | ||
| ) |
Definition at line 98 of file bsdf_principled_diffuse.h.
References blender::math::dot(), I, and schlick_fresnel().
Referenced by bssrdf_setup().
| ccl_device int bsdf_principled_diffuse_sample | ( | ccl_private const ShaderClosure * | sc, |
| float3 | Ng, | ||
| float3 | I, | ||
| float3 | dIdx, | ||
| float3 | dIdy, | ||
| float | randu, | ||
| float | randv, | ||
| ccl_private float3 * | eval, | ||
| ccl_private float3 * | omega_in, | ||
| ccl_private float3 * | domega_in_dx, | ||
| ccl_private float3 * | domega_in_dy, | ||
| ccl_private float * | |||
| ) |
Definition at line 142 of file bsdf_principled_diffuse.h.
References bsdf_principled_diffuse_compute_brdf(), ccl_private, blender::math::dot(), I, LABEL_DIFFUSE, LABEL_REFLECT, make_float3, N, and sample_cos_hemisphere().
Referenced by bsdf_sample().
| ccl_device int bsdf_principled_diffuse_setup | ( | ccl_private PrincipledDiffuseBsdf * | bsdf | ) |
Definition at line 38 of file bsdf_principled_diffuse.h.
References CLOSURE_BSDF_PRINCIPLED_DIFFUSE_ID, PRINCIPLED_DIFFUSE_FULL, SD_BSDF, and SD_BSDF_HAS_EVAL.
Referenced by bssrdf_setup(), and svm_node_closure_bsdf().
| ccl_device int bsdf_principled_diffuse_setup | ( | ccl_private PrincipledDiffuseBsdf * | bsdf, |
| int | components | ||
| ) |
Definition at line 104 of file bsdf_principled_diffuse.h.
References CLOSURE_BSDF_PRINCIPLED_DIFFUSE_ID, SD_BSDF, and SD_BSDF_HAS_EVAL.