Feedback on "Color3"

I understand the idea behind linear color spaces. I keep saying linear RGB because I am talking about what the data can be interpreted as before any transformations in a specific system. Another way to think about it is the colors are already technically sRGB because they will be encoded, but I think of it in terms of they haven’t been encoded yet and they exist in a linear space (linear RGB) in this particular case.

In other words

The result of rendering the data can be viewed as sRGB, but I am talking about what the data is initially considered. Hardware doesn’t automatically encode as sRGB; whatever software is in charge of that. Whether they actually do it or not is what I am trying to figure out in the case of Roblox. I agree that data can be interpreted in different ways depending on the scenario, but I am focusing on a specific scenario.


I ran a test, generating a gradient of shades of gray. I think it is safe to say that Roblox is automatically encoding as sRGB for GUIs. Below shows the classification for what I will label my results after.

image

My Results

Top: sRGB (perceptually linear brightness)
Bottom: physically linear brightness

image

To achieve the bottom result, I did an extra, manual gamma encode. If the engine was not encoding automatically as sRGB then the bottom would appear as the top, but since it is being shown as such this actually proves the engine does encode as sRGB automatically for GUIs which is good.

2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.