35#ifdef __KERNEL_DEBUG_NAN__
37 kernel_assert(!
"Cycles displacement with non-finite value detected");
60 const float ray_time = 0.5f;
75#ifdef __KERNEL_DEBUG_NAN__
77 kernel_assert(!
"Cycles background with non-finite value detected");
87 output[offset * 3 + 0] += color_rgb.
x;
88 output[offset * 3 + 1] += color_rgb.
y;
89 output[offset * 3 + 2] += color_rgb.
z;
Group Output data from inside of a node group A color picker Mix two input colors RGB to Convert a color s luminance to a grayscale value Generate a normal vector and a dot product Brightness Control the brightness and contrast of the input color Vector Map input vector components with curves Camera Retrieve information about the camera and how it relates to the current shading point s position Clamp a value between a minimum and a maximum Vector Perform vector math operation Invert Invert a color
ccl_device float3 equirectangular_to_direction(float u, float v)
#define kernel_assert(cond)
const KernelGlobalsCPU *ccl_restrict KernelGlobals
#define CCL_NAMESPACE_END
CCL_NAMESPACE_BEGIN ccl_device void displacement_shader_eval(KernelGlobals kg, ConstIntegratorGenericState state, ccl_private ShaderData *sd)
CCL_NAMESPACE_BEGIN ccl_device void kernel_displace_evaluate(KernelGlobals kg, ccl_global const KernelShaderEvalInput *input, ccl_global float *output, const int offset)
ccl_device void kernel_curve_shadow_transparency_evaluate(KernelGlobals kg, ccl_global const KernelShaderEvalInput *input, ccl_global float *output, const int offset)
ccl_device void kernel_background_evaluate(KernelGlobals kg, ccl_global const KernelShaderEvalInput *input, ccl_global float *output, const int offset)
ccl_device_inline void object_inverse_dir_transform(KernelGlobals kg, ccl_private const ShaderData *sd, ccl_private float3 *D)
#define KERNEL_FEATURE_NODE_MASK_SURFACE_SHADOW
@ PATH_RAY_IMPORTANCE_BAKE
#define KERNEL_FEATURE_NODE_LIGHT_PATH
#define KERNEL_FEATURE_NODE_MASK_SURFACE_LIGHT
#define KERNEL_FEATURE_NODE_RAYTRACE
ccl_device_inline float3 spectrum_to_rgb(Spectrum s)
ccl_device_inline float average(const float2 a)
CCL_NAMESPACE_BEGIN ccl_device_inline float3 zero_float3()
ccl_device void shader_setup_from_displace(KernelGlobals kg, ccl_private ShaderData *ccl_restrict sd, int object, int prim, float u, float v)
ccl_device_inline void shader_setup_from_background(KernelGlobals kg, ccl_private ShaderData *ccl_restrict sd, const float3 ray_P, const float3 ray_D, const float ray_time)
#define INTEGRATOR_STATE_NULL
ccl_device void surface_shader_eval(KernelGlobals kg, ConstIntegratorGenericState state, ccl_private ShaderData *ccl_restrict sd, ccl_global float *ccl_restrict buffer, uint32_t path_flag, bool use_caustics_storage=false)
ccl_device Spectrum surface_shader_transparency(KernelGlobals kg, ccl_private const ShaderData *sd)
ccl_device Spectrum surface_shader_background(ccl_private const ShaderData *sd)
SPECTRUM_DATA_TYPE Spectrum
ccl_device_inline float ensure_finite(float v)
ccl_device_inline bool isfinite_safe(float f)
ccl_device_inline int clamp(int a, int mn, int mx)