17 const uint ior_offset,
29 eta =
fmaxf(eta, 1e-5f);
43 const uint blend_offset = node.
y;
44 const uint blend_value = node.
z;
59 float eta =
fmaxf(1.0f - blend, 1e-5f);
68 blend =
clamp(blend, 0.0f, 1.0f - 1e-5f);
69 blend = (blend < 0.5f) ? 2.0f * blend : 0.5f / (1.0f - blend);
ccl_device float fresnel_dielectric_cos(const float cosi, const float eta)
dot(value.rgb, luminance_coefficients)") DEFINE_VALUE("REDUCE(lhs
ccl_device_inline float stack_load_float(const ccl_private float *stack, const uint a)
ccl_device_inline void stack_store_float(ccl_private float *stack, const uint a, const float f)
ccl_device_forceinline void svm_unpack_node_uchar2(const uint i, ccl_private uint *x, ccl_private uint *y)
ccl_device_forceinline void svm_unpack_node_uchar3(const uint i, ccl_private uint *x, ccl_private uint *y, ccl_private uint *z)
ccl_device_inline bool stack_valid(const uint a)
CCL_NAMESPACE_BEGIN ccl_device_inline float3 stack_load_float3(const ccl_private float *stack, const uint a)
#define ccl_device_noinline
#define CCL_NAMESPACE_END
CCL_NAMESPACE_BEGIN ccl_device_noinline void svm_node_fresnel(ccl_private ShaderData *sd, ccl_private float *stack, const uint ior_offset, const uint ior_value, const uint node)
ccl_device_noinline void svm_node_layer_weight(ccl_private ShaderData *sd, ccl_private float *stack, const uint4 node)
constexpr T clamp(T, U, U) RET
@ NODE_LAYER_WEIGHT_FRESNEL