Blender V5.0
color_util.h File Reference
#include "kernel/svm/types.h"
#include "util/color.h"

Go to the source code of this file.

Functions

CCL_NAMESPACE_BEGIN ccl_device float3 svm_mix_blend (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_add (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_mul (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_screen (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_overlay (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_sub (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_div (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_diff (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_exclusion (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_dark (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_light (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_dodge (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_burn (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_hue (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_sat (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_val (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_color (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_soft (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_linear (const float t, const float3 col1, const float3 col2)
ccl_device float3 svm_mix_clamp (const float3 col)
ccl_device_noinline_cpu float3 svm_mix (NodeMix type, const float t, const float3 c1, const float3 c2)
ccl_device_noinline_cpu float3 svm_mix_clamped_factor (NodeMix type, const float t, const float3 c1, const float3 c2)
ccl_device_inline float3 svm_brightness_contrast (float3 color, const float brightness, const float contrast)
ccl_device float3 svm_combine_color (NodeCombSepColorType type, const float3 color)
ccl_device float3 svm_separate_color (NodeCombSepColorType type, const float3 color)

Function Documentation

◆ svm_brightness_contrast()

ccl_device_inline float3 svm_brightness_contrast ( float3 color,
const float brightness,
const float contrast )

Definition at line 369 of file color_util.h.

References b, ccl_device_inline, max, float3::x, float3::y, and float3::z.

Referenced by BrightContrastNode::constant_fold(), and svm_node_brightness().

◆ svm_combine_color()

◆ svm_mix()

◆ svm_mix_add()

ccl_device float3 svm_mix_add ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 18 of file color_util.h.

References ccl_device, and interp().

Referenced by svm_mix().

◆ svm_mix_blend()

CCL_NAMESPACE_BEGIN ccl_device float3 svm_mix_blend ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 13 of file color_util.h.

References ccl_device, and interp().

Referenced by svm_mix().

◆ svm_mix_burn()

ccl_device float3 svm_mix_burn ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 164 of file color_util.h.

References ccl_device, float3::x, float3::y, and float3::z.

Referenced by svm_mix().

◆ svm_mix_clamp()

ccl_device float3 svm_mix_clamp ( const float3 col)

Definition at line 304 of file color_util.h.

References ccl_device, col, and saturate.

Referenced by svm_mix().

◆ svm_mix_clamped_factor()

ccl_device_noinline_cpu float3 svm_mix_clamped_factor ( NodeMix type,
const float t,
const float3 c1,
const float3 c2 )

Definition at line 360 of file color_util.h.

References ccl_device_noinline_cpu, saturatef, and svm_mix().

Referenced by MixNode::constant_fold(), and svm_node_mix().

◆ svm_mix_color()

ccl_device float3 svm_mix_color ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 272 of file color_util.h.

References ccl_device, hsv_to_rgb(), interp(), rgb_to_hsv(), float3::x, and float3::y.

Referenced by svm_mix().

◆ svm_mix_dark()

ccl_device float3 svm_mix_dark ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 101 of file color_util.h.

References ccl_device, interp(), and min.

Referenced by svm_mix().

◆ svm_mix_diff()

ccl_device float3 svm_mix_diff ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 91 of file color_util.h.

References ccl_device, fabs(), and interp().

Referenced by svm_mix().

◆ svm_mix_div()

ccl_device float3 svm_mix_div ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 72 of file color_util.h.

References ccl_device, float3::x, float3::y, and float3::z.

Referenced by svm_mix().

◆ svm_mix_dodge()

ccl_device float3 svm_mix_dodge ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 111 of file color_util.h.

References ccl_device, float3::x, float3::y, and float3::z.

Referenced by svm_mix().

◆ svm_mix_exclusion()

ccl_device float3 svm_mix_exclusion ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 96 of file color_util.h.

References ccl_device, interp(), max, and zero_float3().

Referenced by svm_mix().

◆ svm_mix_hue()

ccl_device float3 svm_mix_hue ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 225 of file color_util.h.

References ccl_device, hsv_to_rgb(), interp(), rgb_to_hsv(), float3::x, and float3::y.

Referenced by svm_mix().

◆ svm_mix_light()

ccl_device float3 svm_mix_light ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 106 of file color_util.h.

References ccl_device, interp(), and max.

Referenced by svm_mix().

◆ svm_mix_linear()

ccl_device float3 svm_mix_linear ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 299 of file color_util.h.

References ccl_device, and make_float3().

Referenced by svm_mix().

◆ svm_mix_mul()

ccl_device float3 svm_mix_mul ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 23 of file color_util.h.

References ccl_device, and interp().

Referenced by svm_mix().

◆ svm_mix_overlay()

ccl_device float3 svm_mix_overlay ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 37 of file color_util.h.

References ccl_device, float3::x, float3::y, and float3::z.

Referenced by svm_mix().

◆ svm_mix_sat()

ccl_device float3 svm_mix_sat ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 242 of file color_util.h.

References ccl_device, hsv_to_rgb(), rgb_to_hsv(), and float3::y.

Referenced by svm_mix().

◆ svm_mix_screen()

ccl_device float3 svm_mix_screen ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 28 of file color_util.h.

References ccl_device, and make_float3().

Referenced by svm_mix().

◆ svm_mix_soft()

ccl_device float3 svm_mix_soft ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 289 of file color_util.h.

References ccl_device, and make_float3().

Referenced by svm_mix().

◆ svm_mix_sub()

ccl_device float3 svm_mix_sub ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 67 of file color_util.h.

References ccl_device, and interp().

Referenced by svm_mix().

◆ svm_mix_val()

ccl_device float3 svm_mix_val ( const float t,
const float3 col1,
const float3 col2 )

Definition at line 260 of file color_util.h.

References ccl_device, hsv_to_rgb(), rgb_to_hsv(), and float3::z.

Referenced by svm_mix().

◆ svm_separate_color()