2

I've modified UE4 to render in 32-bit float color depth, and to then grab the output and write it to an exr file also with 32-bit float color depth. I've set Unreal's gamma value to 1.0, so there should be no gamma correction. The output to the screen, therefore, is much darker than "normal".

If I open the exr in ImageMagick on Linux, the image matches what I see Unreal rendering to my screen. However, if I open it in GIMP 2.10, or in Photoshop or ImageMagick on Windows, the result is a much brighter scene -- in fact, it appears just how the scene looks when UE4 is set to it's default gamma value of 2.2. Applying a gamma of 0.45 (1/2.2) to the image in GIMP/Photoshop makes the image look how I expect it to.

Frankly, I'm completely confused. I can find almost no documentation on working in linear color space, especially in GIMP 2.10, which came out recently.

Near as I can tell, what documentation I can find says GIMP 2.10 should load 32-bit float color data in linear color space. This is backed up by GIMP's color profile dialog showing that it is using "GIMP built-in Linear sRGB", and its Color Levels dialog showing a gamma value of 1.0.

However, from the resulting image, it appears GIMP, Photoshop, and ImageMagick on Windows are applying gamma correction. Either that, or ImageMagick on Linux is applying... inverse gamma correction?

Is this a bug? Is it simply due to a lack of (or, in GIMP, nascent) support for working in linear color space? Or is it expected behavior that these software packages would claim to be displaying the raw linear colors, but would actually apply gamma correction to the final image? Am I just revealing how much of a color space and gamma correction n00b I am? :)

Or am I asking this in the wrong place? Would computergraphics.SE be a better place to ask this?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.