2010-07-15 134 views
4

我是新来OpenGL和要设置文本颜色尝试了glColor3f功能,但它改变了绘画色彩,因为我只是想更改文本颜色我应该怎么办?如何设置文本颜色在OpenGL

+3

的OpenGL不能绘制文字。你用什么框架来绘制它(WGL,GLUT等)? – robinjam 2010-07-15 12:56:40

+0

过剩.......................... – PUG 2010-07-15 12:59:49

+0

你能张贴相关的代码?有几件事可能是错误的。 – robinjam 2010-07-15 13:18:38

回答

4

您可以在当前颜色推到属性堆栈,改变颜色,绘制文本,然后在弹出堆栈恢复原来的颜色:

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

由我正在绘制两个文本在继承。 TEXT1和TEXT2。使用上面描述我试图给点颜色TEXT1的方法,但不是TEXT1颜色越来越给予TEXT2这没有任何意义,我在所有。 – vipin8169 2016-09-26 10:08:27

2

glColor3f是正确的电话,但你必须知道,颜色是一个全球性的状态,所以设置它会使直到您再次更改它的一切在那个颜色绘制。所以,做这样的事情:

glColor3f(your text color) 
draw text 
glColor3f(your normal color (white maybe))