36 return ru * uv.
x + rv * uv.
y;
41 return ru * (2.0f * rand.
x - 1.0f) + rv * (2.0f * rand.
y - 1.0f);
55 float cos_pi =
dot(Ng,
I);
60 return t * t / cos_pi;
additional_info("compositor_sum_squared_difference_float_shared") .push_constant(Type output_img float dot(value.rgb, luminance_coefficients)") .define("LOAD(value)"
#define ccl_device_inline
#define CCL_NAMESPACE_END
@ PATH_RAY_VOLUME_SCATTER
@ SHADER_EXCLUDE_TRANSMIT
ccl_device_inline float3 rectangle_sample(float3 ru, float3 rv, float2 rand)
ccl_device_inline float3 ellipse_sample(float3 ru, float3 rv, float2 rand)
ccl_device float3 disk_light_sample(float3 n, float2 rand)
CCL_NAMESPACE_BEGIN struct LightSample LightSample
ccl_device float light_pdf_area_to_solid_angle(const float3 Ng, const float3 I, float t)
ccl_device_inline bool is_light_shader_visible_to_path(const int shader, const uint32_t path_flag)
CCL_NAMESPACE_BEGIN ccl_device float2 sample_uniform_disk(const float2 rand)
ccl_device_inline void make_orthonormals(const float3 N, ccl_private float3 *a, ccl_private float3 *b)