We have changed how PMA is applied in the editor to avoid problems. The images that Spine displays in the editor have PMA applied, so it should show any problems there. Do you have any test images that show PMA is incorrect? This would allow us to validate the fix. It sounds logical, though it has never caused a noticeable problem. I did find that we are loading the image data, then applying PMA. If changed to use linear RGB then it's definitely wrong: The apple/pear image is really neat! :nerd: I'm all for improving Spine, but I am still wondering if there is an actual problem you are having that you would like solved? Since test images are required it seems that you are pursuing this solely on principle? That's perfectly fine of course, but we have a lot to work on and try to prioritize based on users needs. Someone who is feeding linear data to Spine, will get precision loss (when they convert their sRGB properly to linear prior to sending it to Spine). But, since TexturePacker assumes it is working in linear space, it will multiply the alpha linearly - with something that is non-linear. Oh, and to clarify: someone who is feeding sRGB images to Spine, will get sRGB data from TexturePacker. I think it would be good if: Spine showed things gamma correctly, and that TexturePacker also handles gamma correctly, and once it does so - offers a 16bit export mode. If spine did things correctly, it would linearize the sRGB data and then pixel value 1 in the sRGB would NOT be pixel value 1 in linear space.įurthermore, I also included this picture: In any case: their pixel data is tiles of either value 1 or 0, but one is linear (gamma = 1) and one is sRGB (roughly 2.2, but definitely not exactly, one should not approximate it with 2.2). They are badly named as they are not ramps. There is ramp_linear.png and ramp_srgb.png. I'm attaching a Spine project to prove this. Spine just assumes it is handed linear data regardless of gamma information in the png files (haven't tested other formats). Well, now I know why, it is because neither TexturePacker nor Spine does gamma correction! How is it possible, that no information is lost, when exporting linear 8 bit? For example: pixel value 1 in sRGB cannot be represented at all in 8 bit linear, it is impossible.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |