Gamma or Linear color space for diffuse-only game ?

TwistedBridge
null
Hi everyone,
We are currenly working with Unity on a game and we only (mostly) use diffuse textures. All the information needed -AO, metal/spec or rough/gloss- is then faked in that only texture (just to make myself absolutely clear
).
I read and learned a lot about color space these last few days and I am trying to figure out either should I use Linear color space or Gamma color space. Correct me if I am wrong, but in very very short it is better to use Linear color space as the result is more accurate to real life and is physically correct. Then you have to check the sRGB sampling box when you import Diffuse/Albedo/Spec/AO maps (since you want them to be gamma corrected) but uncheck that box for any metallic, roughness maps or any greyscale or mixmaps with information inside the RGB channels.
Linear is almost always used for PBR now for the the realism, but as our game is in a cartoonish style and we only use diffuse maps for texturing, is there really a point choosing Linear color space over Gamma color space?
I was worried about performance optimization, so I did some research about their rendering pipeline and it does not seem to me that there is a big difference in performance, but I may be wrong.
Any thoughts about what would be best?
We are currenly working with Unity on a game and we only (mostly) use diffuse textures. All the information needed -AO, metal/spec or rough/gloss- is then faked in that only texture (just to make myself absolutely clear

I read and learned a lot about color space these last few days and I am trying to figure out either should I use Linear color space or Gamma color space. Correct me if I am wrong, but in very very short it is better to use Linear color space as the result is more accurate to real life and is physically correct. Then you have to check the sRGB sampling box when you import Diffuse/Albedo/Spec/AO maps (since you want them to be gamma corrected) but uncheck that box for any metallic, roughness maps or any greyscale or mixmaps with information inside the RGB channels.
Linear is almost always used for PBR now for the the realism, but as our game is in a cartoonish style and we only use diffuse maps for texturing, is there really a point choosing Linear color space over Gamma color space?
I was worried about performance optimization, so I did some research about their rendering pipeline and it does not seem to me that there is a big difference in performance, but I may be wrong.
Any thoughts about what would be best?
Replies
-
What platform? Mobile or PC?
*Edit* Actually, Unity 5.5 added support for linear on mobile. Read here: https://blogs.unity3d.com/2016/12/07/linear-rendering-support-on-android-and-ios/
-
Linear is almost always used for PBR now for the the realismNo, not sure where you got this from.
Albedo should be sRGB. Metal, Roughness, AO ideally are linear.
There is no performance impact on how the texture is decoded in srgb or linear. -
@RyanB
It is for PC. I didn't know they added the support in the end!
@radiancef0rge
So it is not a rule of thumb for PBR?
I read here that it is "typical practice in PBR to use a linear pipeline". Indeed I mistakenly assumed it was always used.
Because metal/roughness/etc.. represent 'values used for math' and would be misinterpreted and give inaccurate results if they are fed to the shader as sRGB, is that correct?
Off the top of my head, I would stay in gamma color space as we only use a diffuse map in our shader.
Really sorry if this is redundant but I want to be sure that I understand.
Thank you for the answer! -
When people talk about working in Linear Space, it means all inputs (sRGB or linear) are converted to linear, then all your blending and lighting functions are calculated in Linear, then the final output is converted to Gamma Space for display.
-
Alright, I understand. So there is no right or wrong answer in the end it only depends on the workflow you choose?
-
I would seek a linear pipeline. Even tho you're doing hand painted style. The shading and blending will all be more predictable and higher quality. Nonlinear has visual artifacts.
-
-
Good questions are not noob questions! You've obviously done your research, that proves you're not a noob.