|
Blender
V2.93
|
Go to the source code of this file.
Functions | |
| CCL_NAMESPACE_BEGIN ccl_device int | bsdf_ashikhmin_shirley_setup (MicrofacetBsdf *bsdf) |
| ccl_device void | bsdf_ashikhmin_shirley_blur (ShaderClosure *sc, float roughness) |
| ccl_device_inline float | bsdf_ashikhmin_shirley_roughness_to_exponent (float roughness) |
| ccl_device_forceinline float3 | bsdf_ashikhmin_shirley_eval_reflect (const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| ccl_device float3 | bsdf_ashikhmin_shirley_eval_transmit (const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) |
| ccl_device_inline void | bsdf_ashikhmin_shirley_sample_first_quadrant (float n_x, float n_y, float randu, float randv, float *phi, float *cos_theta) |
| ccl_device int | bsdf_ashikhmin_shirley_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) |
| ccl_device void bsdf_ashikhmin_shirley_blur | ( | ShaderClosure * | sc, |
| float | roughness | ||
| ) |
Definition at line 43 of file bsdf_ashikhmin_shirley.h.
References MicrofacetBsdf::alpha_x, MicrofacetBsdf::alpha_y, fmaxf, and usdtokens::roughness().
Referenced by bsdf_blur().
| ccl_device_forceinline float3 bsdf_ashikhmin_shirley_eval_reflect | ( | const ShaderClosure * | sc, |
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 56 of file bsdf_ashikhmin_shirley.h.
References MicrofacetBsdf::alpha_x, MicrofacetBsdf::alpha_y, bsdf_ashikhmin_shirley_roughness_to_exponent(), dot(), e, fabsf, fmaxf, H, I, M_PI_F, make_float3, make_orthonormals_tangent(), N, norm(), normalize(), powf, sqrtf, MicrofacetBsdf::T, X, and Y.
Referenced by bsdf_ashikhmin_shirley_sample(), and bsdf_eval().
| ccl_device float3 bsdf_ashikhmin_shirley_eval_transmit | ( | const ShaderClosure * | sc, |
| const float3 | I, | ||
| const float3 | omega_in, | ||
| float * | |||
| ) |
Definition at line 123 of file bsdf_ashikhmin_shirley.h.
References make_float3.
Referenced by bsdf_eval().
| ccl_device_inline float bsdf_ashikhmin_shirley_roughness_to_exponent | ( | float | roughness | ) |
Definition at line 51 of file bsdf_ashikhmin_shirley.h.
References usdtokens::roughness().
Referenced by bsdf_ashikhmin_shirley_eval_reflect(), and bsdf_ashikhmin_shirley_sample().
| ccl_device int bsdf_ashikhmin_shirley_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 140 of file bsdf_ashikhmin_shirley.h.
References MicrofacetBsdf::alpha_x, MicrofacetBsdf::alpha_y, bsdf_ashikhmin_shirley_eval_reflect(), bsdf_ashikhmin_shirley_roughness_to_exponent(), bsdf_ashikhmin_shirley_sample_first_quadrant(), cosf, dot(), fmaxf, H, I, label, LABEL_GLOSSY, LABEL_REFLECT, LABEL_SINGULAR, M_2PI_F, M_PI_F, make_float3, make_orthonormals(), make_orthonormals_tangent(), N, powf, sinf, sqrtf, MicrofacetBsdf::T, float3::x, X, float3::y, Y, and float3::z.
Referenced by bsdf_sample().
| ccl_device_inline void bsdf_ashikhmin_shirley_sample_first_quadrant | ( | float | n_x, |
| float | n_y, | ||
| float | randu, | ||
| float | randv, | ||
| float * | phi, | ||
| float * | cos_theta | ||
| ) |
Definition at line 131 of file bsdf_ashikhmin_shirley.h.
References atanf, cosf, M_PI_2_F, powf, sinf, sqrtf, and tanf.
Referenced by bsdf_ashikhmin_shirley_sample().
| CCL_NAMESPACE_BEGIN ccl_device int bsdf_ashikhmin_shirley_setup | ( | MicrofacetBsdf * | bsdf | ) |
Definition at line 34 of file bsdf_ashikhmin_shirley.h.
References MicrofacetBsdf::alpha_x, MicrofacetBsdf::alpha_y, clamp(), CLOSURE_BSDF_ASHIKHMIN_SHIRLEY_ID, SD_BSDF, and SD_BSDF_HAS_EVAL.
Referenced by svm_node_closure_bsdf().