Skip to main content

Linear & Gamma Color Space in Unity & VR

·223 words·2 mins

Color space will come up sooner or later in your journey through game development. Unity has many great resources about this topic so it’s really futile for me to try and do it better. What I will do is give you the synopsis. Gamma is the old way and Linear is new. Use linear colorspace where ever you can. Its supported by most new GPUs and screens. On mobile, its supported on OpenGL ES 3+. The catch is, as of the time of this doc, mobile VR and especially, the GearVR. Turns out that there is a known issue, found on this Oculus thread, with the Qualcomm divers on Android. So Oculus, both in person and on forum encourage you to use Gamma for GearVR and Go.

That’s not all though. If you are like me and you are switching branches in GIT often, the Unity color space setting sometimes does not stick. This was especially evident in a recent project where we upgraded to 2017. In Unity 5, the color space setting had been changed a couple of times but what we were seeing as linear was not actually correct. When we did the upgrade, the color space was still strange until we toggled the setting. So if your color looks weird, toggle that setting first before you do a major overhaul.