Jump to content
  • Advertisement
Sign in to follow this  
Jack Buffington

OpenGL Transparency problem

This topic is 4012 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I am writing a plugin for Maya, which uses OpenGL. This could be a problem with something that Maya is doing but I am not sure. I am trying to draw a polygon that has variable transparency. So far I am able to almost do what I want but not quite. What I want is for my polygon to be able to be fully opaque to fully transparent. What I am getting is a polygon that is about half way opaque to fully transparent. I am loading my texture map with glubyte values of 0 to 255 for the alpha channel. I believe that I am setting something up improperly with blending. Any help would be appreciated. -Jack Here is my semi-working code: GLuint textureName; glGenTextures(1,&textureName); // get a texture name glBindTexture(GL_TEXTURE_2D,textureName); // set up that texture glPixelStorei(GL_UNPACK_ALIGNMENT, 1); // this texture not affected by lighting glTexEnvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); // assign the buffer that I created to the texture glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 1024, 512, 0, GL_RGBA, GL_UNSIGNED_BYTE, GLbuffer); delete GLbuffer; glEnable(GL_TEXTURE_2D); glEnable(GL_BLEND); // This commented chunk makes the fully transparent areas black. // The whole texture is opaque with this code // though and that is not what I want. // It is my understanding that this is what I really should be doing except // that it isn't working... //glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); //glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL); // works but seems to have a maximum of 50% transparency glBlendFunc(GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR); glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);

Share this post


Link to post
Share on other sites
Advertisement
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!