It doesn't work because GL_ALPHA creates a texture which is a solid block of color plus an alpha channel. It is *not* premultiplied the way your loaded UIImages are. Since the texture is solid white, the source calculation for (white * GL_ONE) will always be white and the entire square will be drawn as white.
I'd suggest switching your glBlendFund back to glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) when you draw the text, and use the GL_ONE function only for your images; either that or rewrite initWithString: so that it premultiplies the color channels to match your images.
__________________

Free Games!
|