|
Blender
V2.93
|
Go to the source code of this file.
Classes | |
| struct | VelvetBsdf |
Functions | |
| ccl_device int | bsdf_ashikhmin_velvet_setup (VelvetBsdf *bsdf) |
| ccl_device bool | bsdf_ashikhmin_velvet_merge (const ShaderClosure *a, const ShaderClosure *b) |
| ccl_device float3 | bsdf_ashikhmin_velvet_eval_reflect (const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| ccl_device float3 | bsdf_ashikhmin_velvet_eval_transmit (const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| ccl_device int | bsdf_ashikhmin_velvet_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 VelvetBsdf | VelvetBsdf |
| ccl_device float3 bsdf_ashikhmin_velvet_eval_reflect | ( | const ShaderClosure * | sc, |
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 65 of file bsdf_ashikhmin_velvet.h.
References D(), dot(), expf, fabsf, fmaxf, G, H, I, VelvetBsdf::invsigma2, M_1_PI_F, make_float3, min, N, and normalize().
Referenced by bsdf_eval().
| ccl_device float3 bsdf_ashikhmin_velvet_eval_transmit | ( | const ShaderClosure * | sc, |
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 107 of file bsdf_ashikhmin_velvet.h.
References make_float3.
Referenced by bsdf_eval().
| ccl_device bool bsdf_ashikhmin_velvet_merge | ( | const ShaderClosure * | a, |
| const ShaderClosure * | b | ||
| ) |
Definition at line 57 of file bsdf_ashikhmin_velvet.h.
References Freestyle::a, isequal_float3(), and VelvetBsdf::sigma.
Referenced by bsdf_merge().
| ccl_device int bsdf_ashikhmin_velvet_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 * | |||
| ) |
Definition at line 115 of file bsdf_ashikhmin_velvet.h.
References D(), dot(), expf, fabsf, fmaxf, G, H, I, VelvetBsdf::invsigma2, LABEL_DIFFUSE, LABEL_REFLECT, M_1_PI_F, make_float3, min, N, normalize(), and sample_uniform_hemisphere().
Referenced by bsdf_sample().
| ccl_device int bsdf_ashikhmin_velvet_setup | ( | VelvetBsdf * | bsdf | ) |
Definition at line 47 of file bsdf_ashikhmin_velvet.h.
References CLOSURE_BSDF_ASHIKHMIN_VELVET_ID, fmaxf, VelvetBsdf::invsigma2, SD_BSDF, SD_BSDF_HAS_EVAL, and VelvetBsdf::sigma.
Referenced by svm_node_closure_bsdf().
| CCL_NAMESPACE_BEGIN typedef ccl_addr_space struct VelvetBsdf VelvetBsdf |