If you've noticed when testing Tuxemon, it often has errors like this:libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
This error is caused from graphics programs (photoshop, gimp, paint, etc...) not saving correct information as it relates to color profiles. Apparently, from some research, png color profiles are a complete mess, and it is recommended to disable them. There is an open pull request on the github to do just that, stip the color profiles from all existing artwork and disable all icc color profiles.
I don't believe that pygame honors color profiles anyway, so no big deal there, but it might change how your sprites color look while editing. Generally, shades of gray, red/orange color intensity may be different from the pygame renderer and your graphics package.
For the artists out there, If you have an opinion about what color profiles we could use, let me know. We could try another compliant one, or simply strip them. If we choose to have them stripped, then it will be part of our release workflow, and we can find some guides to making your graphics package compliant with profile-less png images.
Last edited by bitcraft (22 May 2017 11:41)
I'm using Aseprite currently and as far as I can tell, it uses RGB (or indexed but I'm hardly using that thing)
Thanks for the input tamashihoshi. There is nothing in the Aesprite documentation about icc color profiles. Not sure if it needs them or not.
I remember right, Josepharaoh was using GIMP and Sanglorian was using Aseprite?GIMP probably uses icc color profiles... I've got no idea about that icc stuff though sRGB is probably more important if you take a photo and edit that one in photoshop or gimp... but since we are creating pixel art for tuxemon from scratch, i think "normal RGB" is totally fine. Probably. After looking icc color profiles up, I'm currently not even sure what "plain RGB" is...
color profiles are an interesting topic. in brief, color profiles compensate for variations in displays, and also human perception of color. sRGB is a standard that most computer displays, printers, and mobile devices try to meet. where given a specific RGB value, it should appear the same across displays. however, many displays cannot cover 100% of RGB, so generally, the high and low values on the scale are not rendered correctly, or at all. TV's generally are much less accurate than computer displays.
anyway, i don't think we need to worry about it.....we'll just remove the color profiles on the png files, and let the computer apply some system default. after that, we can do this every release or so.