Correct color rendering on Wide Color Gamut displays, like recent-ish Macs?

Hi all, I’m developing on a Mac that has a monitor with a P3 Display color space and I’m using OpenGL. OSX apparently does not do any color adjustments to OpenGL windows, which means currently all output colors are over saturated because I’m not doing any adjustments on my side either.

In other words if I load and display a full red sRGB image, it will display as full red Display P3, even though that’s too bright. sRGB full red is (255, 0, 0) but when converted to Display P3 full red it should be (235, 50, 35).

I found this SDL fix from a few years ago, but I see it was backed out due to performance concerns:

Is there any standard way with SDL to turn on something like the above patch, or to query for information about the color space of the monitor so I can perform color correction in a post processing pass?

What I’m trying to avoid is writing (too much) per platform code to detect and correct for wide color gamut monitors.


I ran into this as well. Submitted as a bug: