[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] [OpenGL] Text, Transparency and Lists



Richard Jones wrote:
Looks like you've enabled blending without specifying a blend function. You'll want something like:

   glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)

This indicates to use the texture's alpha channel for the texture imagea and the opposite (one minus) for the ground image.

Thanks, but that doesn't seem to work. When I load the sprite image, I say: ## Set up translucency. ## glBlendFunc(GL_SRC_ALPHA,GL_ONE) glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)

Using the GL_ONE version, I get the ghostly version in the screenshot. Using GL_ONE_MINUS_SRC_ALPHA, I get a solid sprite all right, but with a black rectangle around it. The actual sprite-drawing says:

glColor4f(1.0,1.0,1.0,1.0)
glBindTexture(GL_TEXTURE_2D,self.texture)
glEnable(GL_BLEND)
glBegin(GL_QUADS)
...
glEnd()
glDisable(GL_BLEND)

I'm also experimenting now with gluLookAt instead of my previous Camera class, which relied on glTranslatef and glRotatef, because gluLookAt offers a way to explicitly track the motion of a particular character. But that messes up the sprites' billboarding... Gah.

Kris