I'm making a game that uses png files for textures. When I run the game I noticed that the colors were less saturated and had less contrast then what I was seeing in photoshop.

A fellow programmer told me that the reason it looked better in photoshop was because of the color profile of photoshop. Opening the png file in windows picture viewer proved this to be true as it looked exactly the same as in my game.

My question is how can I make my png file look the way it looks in photoshop? In this picture, the left side is the png as displayed in my game, and the right side is photoshop:

1 Answer
1

This problem is related to color profiles. It's a large subject, so I will just give you a short answer:

PNG files are mostly used for "pixelart" on the web and in applications and games. It is possible to use any RGB profile with PNGs, but it will often be ignored and "sRGB" will be assumed. This can create some confusion.

Furthermore, if your image is in "Untagged RGB", Photoshop will display the image as if it was in Photoshop's Working Space RGB. If your Working Space RGB for example is set to "Adobe RGB (1998)" you are actually working in that RGB profile, but you are saving the file without that information, and the profile is probably going to be ignored anyway. This results in a shift in colors.

If I am right about your images being "Untagged RGB", it can be a bit tricky to fix. You need to first find out what your Working Space RGB is set to, because this is actually the profile you are using. Then you must use Edit > Assign Profile... and assign the Working Space RGB to the image, so the image "knows" which profile it has. Then afterwards, use Edit > Convert to Profile... and convert the image to "sRGB". This should make the images in your game look like you have been seeing them in Photoshop.

To avoid this problem in the future you need to be more aware of the color profiles. Under Edit > Color Settings... set Working Spaces > RGB to "sRGB IEC61966-2.1" so all "Untagged RGB" files will be displayed as "sRGB" (which is the standard). New files should be created in "sRGB", not just any RGB.