From c5119193ffaedf4ac94fecfb434a3292a4746259 Mon Sep 17 00:00:00 2001 From: ladevieq Date: Sun, 26 Sep 2021 23:57:26 +0200 Subject: Refactor gltf loading and triangles attributes --- shaders/include/color_utils.h | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 shaders/include/color_utils.h (limited to 'shaders/include/color_utils.h') diff --git a/shaders/include/color_utils.h b/shaders/include/color_utils.h new file mode 100644 index 0000000..11c2d9e --- /dev/null +++ b/shaders/include/color_utils.h @@ -0,0 +1,26 @@ +vec3 linear_to_srgb(vec3 color) +{ + color = clamp(color, 0.0f, 1.0f); + + return mix( + pow(color, vec3(1.0f / 2.4f)) * 1.055f - 0.055f, + color * 12.92f, + less_than(color, 0.0031308f) + ); +} + +vec3 srgb_to_linear(vec3 color) +{ + color = clamp(color, 0.0f, 1.0f); + + return mix( + pow(((color + 0.055f) / 1.055f), vec3(2.4f)), + color / 12.92f, + less_than(color, 0.04045f) + ); +} + +float luminance(vec3 rgb) +{ + return dot(rgb, vec3(0.2126f, 0.7152f, 0.0722f)); +} -- cgit v1.3