代码之家  ›  专栏  ›  技术社区  ›  Nick Heiner

设置文本颜色?

  •  0
  • Nick Heiner  · 技术社区  · 14 年前

    我在OpenGL中成功地显示了文本:

        GLUT glut = new GLUT();
        gl.glWindowPos2d(10, 20);
        glut.glutBitmapString(GLUT.BITMAP_HELVETICA_12, DISPLAYED_TEXT);
    

    但是,我不知道如何设置颜色。(我可以在移动相机时看到颜色的变化,查看不同的型号,但我不确定是什么导致了它的变化。)

    我在慢跑。

    如何指定所需的颜色?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Gretchen    14 年前

    要设置颜色,请使用glcolor调用(例如, glColor3f(1.0, 1.0, 0.0) 将颜色设置为黄色) 需要注意的一点是,glutbitmapString使用光栅图形来呈现文本,这有一些奇怪之处。特别是,您需要在设置位置之前设置颜色-即:

    gl.glColor3f(1,0,0) # RED
    gl.glWindowPos2d(10, 20);
    gl.glColor3f(0,0,1) # BLUE
    glut.glutBitmapString(GLUT.BITMAP_HELVETICA_12, DISPLAYED_TEXT);
    

    将以红色呈现文本,即使它看起来应该以蓝色呈现。

    正如史蒂文指出的,灯光也会影响颜色。如果使用照明,最好在绘制文本时暂时关闭它。

        2
  •  0
  •   Steven    14 年前

    你有照明设备吗?这会导致颜色改变。