Blender V4.3
bsdf_ashikhmin_shirley.h File Reference

Go to the source code of this file.

Functions

CCL_NAMESPACE_BEGIN ccl_device int bsdf_ashikhmin_shirley_setup (ccl_private MicrofacetBsdf *bsdf)
 
ccl_device void bsdf_ashikhmin_shirley_blur (ccl_private ShaderClosure *sc, float roughness)
 
ccl_device_inline float bsdf_ashikhmin_shirley_roughness_to_exponent (float roughness)
 
ccl_device_forceinline Spectrum bsdf_ashikhmin_shirley_eval (ccl_private const ShaderClosure *sc, const float3 Ng, const float3 wi, const float3 wo, ccl_private float *pdf)
 
ccl_device_inline void bsdf_ashikhmin_shirley_sample_first_quadrant (float n_x, float n_y, const float2 rand, ccl_private float *phi, ccl_private float *cos_theta)
 
ccl_device int bsdf_ashikhmin_shirley_sample (ccl_private const ShaderClosure *sc, float3 Ng, float3 wi, float2 rand, ccl_private Spectrum *eval, ccl_private float3 *wo, ccl_private float *pdf, ccl_private float2 *sampled_roughness)
 

Function Documentation

◆ bsdf_ashikhmin_shirley_blur()

ccl_device void bsdf_ashikhmin_shirley_blur ( ccl_private ShaderClosure * sc,
float roughness )

Definition at line 31 of file bsdf_ashikhmin_shirley.h.

References MicrofacetBsdf::alpha_x, ccl_private, and fmaxf.

Referenced by bsdf_blur().

◆ bsdf_ashikhmin_shirley_eval()

◆ bsdf_ashikhmin_shirley_roughness_to_exponent()

ccl_device_inline float bsdf_ashikhmin_shirley_roughness_to_exponent ( float roughness)

◆ bsdf_ashikhmin_shirley_sample()

◆ bsdf_ashikhmin_shirley_sample_first_quadrant()

ccl_device_inline void bsdf_ashikhmin_shirley_sample_first_quadrant ( float n_x,
float n_y,
const float2 rand,
ccl_private float * phi,
ccl_private float * cos_theta )

◆ bsdf_ashikhmin_shirley_setup()