Color Space Correctness?
Hey,
I see there is the EColorSpace which allows control of the transfer function for the content (sRGB gamma or linear). But is there no notion of how to show the color values coming from different gamuts (Rec2020 etc) correctly on the devices? Is the assumption just that the displays are always sRGB/Rec709 gamut, and we should remap/clip content to that?
Thanks
Most VR apps render to 8 bits per channel textures, which use sRGB encoding to avoid banding in the low end. Apps using higher bit depth textures instead submit images in linear color space, and it's up to the runtime to convert to an appropriate display color space, but typically that's just sRGB.
Hey, thanks for the reply.
The sRGB encoding only defines the non-linear<->linear transfer, which as you say is used for banding reduction for 8-bit data. It doesn't necessarily imply the full color space including the gamut primaries. For example Display P3 color space also uses an sRGB transfer. I'm sure many VR headsets are sRGB color space, but many are not as well.
I'm wondering about something like:
https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrColorSpaceFB.html
or the ovrColorSpace/ovr_GetHmdColorDesc/ovr_SetClientColorDesc from the Oculus/Meta SDK.
Thanks