[quote]Yes, using 32bpp PNG textures solved the problem :), but it wasn’t easy to find a tool that is able of writing/converting 32bpp PNGs (What are you guy using?)
[/quote]
Basically I always use the free XnView. However it’s a viewer, not an image editor (but then I’m no artist, so it’s OK 
Regularly I’ve to create RGBA images on the fly from an RGB plus Alpha image, so I use a small method.
...
BufferedImage imgRgb = ImageIO.read(newFile("PicutureRgb.png"));
BufferedImage imgAlpha = ImageIO.read(newFile("PicutureAlpha.png"));
BufferedImage imgRgbA = makeRgbPlusA(imgRgb, imgRbba);
ImageIO.write(imgRgbA, "png", new File("PictureRgbA.png");
...
private final static ColorModel modelRGBA = new ComponentColorModel(ColorSpace.getInstance(ColorSpace.CS_sRGB), new int[] {8, 8, 8, 8}, true, false, ComponentColorModel.TRANSLUCENT, DataBuffer.TYPE_BYTE);
/**
* Add RGB-image plus Alpha-image (both same sized) to a new RGBA-Image.
*
* @param rgbImg RGB-BufferedImage, 24 Bit.
* @param alphaImg Alpha-BufferedImage, 8 Bit.
*
* @return BufferedImage of Type RGBA (32 Bit).
*/
public static BufferedImage makeRgbPlusA(BufferedImage rgbImg, BufferedImage alphaImg)
{
final int xdim = rgbImg.getWidth();
final int ydim = rgbImg.getHeight();
WritableRaster raster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, xdim, ydim, 4, null);
BufferedImage newImg = new BufferedImage(modelRGBA, raster, false, new Hashtable());
Graphics2D g2d = newImg.createGraphics();
g2d.drawImage(rgbImg, 0, 0, xdim, ydim, null);
Raster alpharaster = alphaImg.getData();
WritableRaster zielraster = newImg.getAlphaRaster();
zielraster.setRect(alpharaster);
return newImg;
}