[Bf-blender-cvs] [73369c4d753] temp-explicit-colors: Use encode/decode for geometry colors.

Jeroen Bakker noreply at git.blender.org
Mon Apr 19 15:45:47 CEST 2021


Commit: 73369c4d75320607b8f4749b780d312b393f58e5
Author: Jeroen Bakker
Date:   Mon Apr 19 15:45:21 2021 +0200
Branches: temp-explicit-colors
https://developer.blender.org/rB73369c4d75320607b8f4749b780d312b393f58e5

Use encode/decode for geometry colors.

===================================================================

M	source/blender/blenkernel/intern/geometry_component_mesh.cc

===================================================================

diff --git a/source/blender/blenkernel/intern/geometry_component_mesh.cc b/source/blender/blenkernel/intern/geometry_component_mesh.cc
index 9ae30ef1fe6..7262429e5f0 100644
--- a/source/blender/blenkernel/intern/geometry_component_mesh.cc
+++ b/source/blender/blenkernel/intern/geometry_component_mesh.cc
@@ -787,16 +787,19 @@ static void set_loop_uv(MLoopUV &uv, float2 co)
 
 static ColorGeometry4f get_loop_color(const MLoopCol &col)
 {
-  ColorGeometry4f srgb_color;
-  rgba_uchar_to_float(srgb_color, &col.r);
+  ColorGeometry4b encoded_color(col.r, col.g, col.b, col.a);
   ColorGeometry4f linear_color;
-  srgb_to_linearrgb_v4(linear_color, srgb_color);
+  linear_color.decode(encoded_color);
   return linear_color;
 }
 
 static void set_loop_color(MLoopCol &col, ColorGeometry4f linear_color)
 {
-  linearrgb_to_srgb_uchar4(&col.r, linear_color);
+  ColorGeometry4b encoded_color = linear_color.encode();
+  col.r = encoded_color.r;
+  col.g = encoded_color.g;
+  col.b = encoded_color.b;
+  col.a = encoded_color.a;
 }
 
 static float get_crease(const MEdge &edge)



More information about the Bf-blender-cvs mailing list