So really the biggest issue now is the data formats. The data seems to come in a few flavors. Ive come across at least 8 bpp, 24 bpp, and some 32 bpp. I think the best option may to be change all into 32 bpp PNG's, so that all colorkey is replaced with alpha. It seems doing colorkey in opengl is only possible with alpha blending. And all the images that have alpha work right.
I did one test with the 8 bpp bitmap font. I converted it to a 24 bpp png, it now renders (with colorkey in background)
I also would need to format anything into power of 2 sizes for gles.
Any ideas are welcome.
for all images with color key - you're right with the 32 bit format; i can't think of any other solution right now (set the alpha to 255 for color key pixels and to 0 for non color key ones)
then you can just enable alpha testing (glEnable(GL_ALPHA_TEST)) and the alpha func to something like glAlphaFunc(GL_GREATER,0.5);
but i think you knew this already