gpt4 book ai didi

OpenGL Alpha 混合

转载 作者:行者123 更新时间:2023-12-02 08:45:12 27 4
gpt4 key购买 nike

我已经找到了 5349574673 个关于 Alpha 混合的页面,但我仍然无法获得想要的结果。我正在尝试使用 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

我确信图像具有透明度,并且已正确加载。
glBlendFunc(GL_ONE, GL_ONE);有效,但我无法判断它是否在 alpha channel 上执行任何操作,因为它会渲染为黑色 => 混合工作
glColor4f(1f,1f,1f,0.3f);工作正常,我可以绘制透明的东西

附注我正在使用这个例子 http://lwjgl.org/wiki/index.php?title=Space_Invaders_Example_Game学习用

编辑我使用了用 GIMP 和其他纹理加载器编码的其他纹理,现在工作正常。

最佳答案

您的混合设置是正确的。然而,要使混合正常工作,纹理必须包含 Alpha channel ,当然,其值必须正确。然后图像加载过程必须保留 Alpha channel 数据。我们可以看一下图像加载和纹理生成代码吗?

关于OpenGL Alpha 混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7885203/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com