我在alpha混合上发现了5349574673页,但我仍然无法获得所需的结果.我正在尝试使用opengl正确显示gif/png文件(使用透明度/半透明度).
这是我的初始化位:
glEnable(GL_TEXTURE_2D);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); //I've seen this on most tutorials
glDisable(GL_DEPTH_TEST); //it's a 2D game
//...loading matrices and so on
Run Code Online (Sandbox Code Playgroud)
我确定图像有透明度,并且正确加载.
glBlendFunc(GL_ONE,GL_ONE); 但我无法判断它是否在alpha通道上做任何事情,因为它会渲染为黑色=>混合工作
glColor4f(1f,1f,1f,0.3f); 工作得很好,我可以画出透明的东西
PS我正在使用这个例子http://lwjgl.org/wiki/index.php?title=Space_Invaders_Example_Game进行学习
编辑 我使用了用GIMP和其他纹理加载器编码的其他纹理,它现在工作正常.