Blender V4.3
kernel/util/color.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
2 *
3 * SPDX-License-Identifier: Apache-2.0 */
4
5#pragma once
6
7#include "util/color.h"
8
10
12{
13 return make_float3(dot(float4_to_float3(kernel_data.film.xyz_to_r), xyz),
14 dot(float4_to_float3(kernel_data.film.xyz_to_g), xyz),
15 dot(float4_to_float3(kernel_data.film.xyz_to_b), xyz));
16}
17
22
24{
25 return (kernel_data.film.is_rec709) ?
26 rec709 :
27 make_float3(dot(float4_to_float3(kernel_data.film.rec709_to_r), rec709),
28 dot(float4_to_float3(kernel_data.film.rec709_to_g), rec709),
29 dot(float4_to_float3(kernel_data.film.rec709_to_b), rec709));
30}
31
33{
34 return dot(c, float4_to_float3(kernel_data.film.rgb_to_y));
35}
36
41
46
51
additional_info("compositor_sum_squared_difference_float_shared") .push_constant(Type output_img float dot(value.rgb, luminance_coefficients)") .define("LOAD(value)"
#define kernel_data
const KernelGlobalsCPU *ccl_restrict KernelGlobals
#define ccl_device
#define ccl_device_inline
#define CCL_NAMESPACE_END
ccl_device_forceinline float3 make_float3(const float x, const float y, const float z)
ccl_device float3 rec709_to_rgb(KernelGlobals kg, float3 rec709)
ccl_device float spectrum_to_gray(KernelGlobals kg, Spectrum c)
ccl_device float linear_rgb_to_gray(KernelGlobals kg, float3 c)
ccl_device_inline float3 spectrum_to_rgb(Spectrum s)
ccl_device_inline Spectrum rgb_to_spectrum(float3 rgb)
ccl_device float3 xyz_to_rgb_clamped(KernelGlobals kg, float3 xyz)
CCL_NAMESPACE_BEGIN ccl_device float3 xyz_to_rgb(KernelGlobals kg, float3 xyz)
CCL_NAMESPACE_BEGIN ccl_device_inline float3 zero_float3()
Definition math_float3.h:15
float max
SPECTRUM_DATA_TYPE Spectrum
ccl_device_inline float3 float4_to_float3(const float4 a)
Definition util/math.h:535