BlendFunc用于具有不断变化背景的纹理字体

时间:2008-11-07 19:40:10

标签: opengl fonts textures blending

我正在尝试使用纹理字体,以便我可以在openGL场景中显示文本。但是,我无法找到可行的glBlendFunc值。

文本放置的背景是灰度图像,但在整个执行过程中会发生变化。因为背景改变,文本可能会在从黑到白的任何颜色之上。

我发现的最佳值是glBlendFunc(Gl.GL_SRC_COLOR,Gl.GL_ONE_MINUS_SRC_ALPHA)。这将使角色周围的黑框消失,但角色本身会随着背景变白而褪色。

请帮忙!

1 个答案:

答案 0 :(得分:1)

您是否希望根据背景颜色反转文本?在黑色背景的白色文本,在白色的黑文本?我认为你可以通过blendfunc实现反转。

或者,您可以使用内置“边框”的字体纹理来帮助将角色与背景区分开来。想象一下白色字体带有光滑的alpha混合黑色“发光”。几乎所有颜色的字体看起来都很好。