我正在使用stb_image.c将数据字节加载到opengl。 但是,当我尝试加载带有alpha通道{0}}的png文件时,我正在努力解决发生在我身上的一个问题
现在白色区域应该是透明的,尽管它只清除了它的一小部分。 是什么原因导致了这种行为?
photoshop直方图
答案 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位平面。