如何修复stb_image库的alpha

时间:2013-06-23 17:18:52

标签: c++ visual-studio-2010 opengl graphics

我正在使用stb_image.c将数据字节加载到opengl。 但是,当我尝试加载带有alpha通道{0}}的png文件时,我正在努力解决发生在我身上的一个问题

现在白色区域应该是透明的,尽管它只清除了它的一小部分。 是什么原因导致了这种行为?

enter image description here

photoshop直方图

1 个答案:

答案 0 :(得分:2)

你正在做Tom Dalling OpenGL教程吗? ^^

我不知道你是否仍在寻找解决方案,但我仍然在这里: 我实际上遇到的问题和我上课时一样,但是通过使用带有sfactor GL_SRC_ALPHA和dfactor GL_ONE_MINUS_SRC_ALPHA的glBlendFunc,它对我有用。这些是OpenGL似乎至少在文档中推荐的参数:glBlendFunc

  

最好使用混合函数(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA)实现透明度,其中基元从最远到最近排序。请注意,此透明度计算不要求帧缓冲区中存在alpha位平面。