Can someone explain what is happening on the following settings in 2 different parts of blender?
A texture brush color of (0.5,0.5,0.5) gives me a "(Gamma Corrected)" HEX of #808080
But a Diffuse Material Color of (0.5,0.5,0.5) gives me a Gamma Corrected HEX of #BCBCBC?
The values on the brush color grow to 0.737255 if I enter the HEX code of BCBCBC
The values on the diffuse color shrink to 0.215861 if I enter the HEX code of 808080
So, now for my question: Why the difference between texture brush color and diffuse color?
When I color sample the color from another application I get 808080and the 8bit RGB code of
(0.5, 0.5,0.5) or (128,128,128)
My own Explanation of what is going on:
I think the texture color is directly converting a hex value of 808080 to linear color space (i.e. go from linear to 8 bit color by multiplying the linear decimal value by 256 and then converting each channel's 8 bit value to a combined HEX value #RRGGBB) i.e. foing from (0.5,0.5,0.5) to (128,128,128) to HEX #808080 (or 0x808080 if you are working with python code) basically it is converting red channel from 128 to hex 80, same for green channel, same for blue channel and storing them in the 6 place holders r=80 g=80 b=80
or combined #808080
I think the material's diffuse color is using blenders gamma corrected HEX value by transforming the linear color space to sRGB (or whatever color space you are using in the color management section, typically this is set to sRGB) and then to HEX. There is a post in a python about this conversion:
getting HEX from Blender sRGB
Can someone spot check me on this?
spikeyxxx or maybe @jlampel know what is going on? I think the comment saying Gamma Correction in the brush color is actually false.
Indeed! Unfortunately Shawn!
But the reality is, that when it comes to digital color, 97.7301% (this is just an estimate) of the people (including PS and so developers), do not know what they are talking about (and that includes me, of course!).
You can add me to that group. I at least figured out the brush colors though. I can successfully convert HEX to brush RGB in Blender every time now using a random HEX genetator.