Unexpected "bleeding" with Textures

I have textures that contain a border with an alpha value of 1, and an interior with an alpha value of 0.


As I load the texture I am asking the library to generate the mipmaps.


 

When I render I use DST_ALPHA and ONE_MINUS_DST_ALPHA, with the intent of only allowing the interior of the texture to render where no other interior exists in the color buffer.

 

Unfortunately the rendered image looks as though it is bleeding in places that it shouldn't. My basic setup is:

 

glEnable( GL_MULTISAMPLE )

glEnable( GL_BLEND )

glBlendFunc( GL_DST_ALPHA, GL_ONE_MINUS_DST_ALPHA )

 

glDraw. . .

 

 

This is happening with PowerVR MBX emulator on WIN32.

 

I know the technique works because I have done this on our device some time ago. And I wouldn't even be asking but for the fact that it almost works correctly in the emulator. So it makes me wonder if I am doing something wrong.

 

Can anybody offer any suggestions?

 

Thank you.

 

This is being pursued via email.Gordon2009-07-21 17:02:00