如何在OpenGl中设置文本颜色

问题描述 投票:3回答:2

我是openGL的新手,想要设置文本颜色尝试glColor3f函数,但它改变了绘图颜色,因为我只想改变文本颜色,我该怎么办?

c++ opengl text colors glut
2个回答
4
投票

您可以将当前颜色推送到属性堆栈,更改颜色,绘制文本,然后弹出堆栈以恢复原始颜色:

glPushAttrib(GL_CURRENT_BIT);
glColor3f(...);
// Draw your text
glPopAttrib(); // This sets the colour back to its original value

2
投票

glColor3f是正确的调用,但您必须知道颜色是全局状态,因此设置它将使所有内容都以该颜色绘制,直到您再次更改它为止。所以做这样的事情:

glColor3f(your text color)
draw text
glColor3f(your normal color (white maybe))
© www.soinside.com 2019 - 2024. All rights reserved.