PVR problem with the border of transparent images

We are trying to convert our transparent png files to PVR files using the 4bit format.


Most parts of the resulting image look good enough but at the border of our character there are problematic/faulty pixels. Some of the character’s pixels turn semi transparent and in some of the area which was suppposed to be transparent, there now are pixel clusters floating in space. We tried all settings but the bad result remains.


Here is an example: http://trickstertoys.com/bot_for_forum.jpg


Is there any way to fix the border of our images ?Nightmare_822009-12-03 23:16:09

Around the borders of your image try to ensure that the RGB channels of the transparent pixels are very similar to the opaque ones - i.e. if you have a black edge to your drawing then make the pixels outside the edge black but with an alpha vaue of zero.





Occasionally, shifting the image by 1 to 4 pixels horizontally or vertically can improve compression quality.





We have been carrying out extensive work on PVRTC recently and should release this soon, however, there are problems with some textures as with all lossy compression systems, unfortunately. PVRTC was originally designed to work with texturing 3D meshes and sometimes struggles with sprite-style images in the encoding from 32bpp to 4bpp or 2bpp.





If you can’t get a good result with the PVRTC compressor right now then we recommend encoding as many textures using PVRTC as possible and then using a format such as RGBA4444 or RGBA5551 for the remaining. This way you can still benefit from a reasonable bandwidth saving on all of your textures.Gordon2009-12-09 12:54:34

Tanks for your reply, it helped us very much. The main problem was that all fully transparent pixels were white instead of black, looks like this is the default behavior when creating pngs with photoshop. Does somebody know how to change this color from white(ARGB 0111) to Black(ARBG 0000) ?


I wrote a small converter in C# to change all white pixels to black ones and now there are only a few parts where problems remain.(The transparent parts between the arm of our robot picture)


Is there a trick to fix that ?

I would open the PNGs in Photoshop. They will open with the transparency without the white. Then create another layer and fill it with black. hit ctrl + the layer with your shape to marque select it and create an alpha channel with it in channels. then save out your image as a tga. Then convert that tga to a pvr file. You can create a batch action process in photoshop to do this for you in seconds on a whole folder of images that are PNG’s if you record those steps in an action.

Thanks for your reply, it works fine!