Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gpu_shader_compositor_hue_saturation_value.glsl « library « shaders « realtime_compositor « compositor « blender « source - git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: dd5eb33d318bdeb946a7c7aba3ce6b4d3c46acc4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#pragma BLENDER_REQUIRE(gpu_shader_common_color_utils.glsl)

void node_composite_hue_saturation_value(
    vec4 color, float hue, float saturation, float value, float factor, out vec4 result)
{
  vec4 hsv;
  rgb_to_hsv(color, hsv);

  hsv.x = fract(hsv.x + hue + 0.5);
  hsv.y = clamp(hsv.y * saturation, 0.0, 1.0);
  hsv.z = hsv.z * value;

  hsv_to_rgb(hsv, result);

  result = mix(color, result, factor);
}