OpenGL: установить цвет текста? - PullRequest
0 голосов
/ 29 сентября 2010

Я успешно отображаю текст в OpenGL:

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

Однако я не уверен, как установить цвет. (Я вижу изменение цвета при перемещении камеры, глядя на разные модели, но я не уверен, что вызывает его изменение.)

Я использую JOGL.

Как мне указать нужный мне цвет?

Ответы [ 2 ]

1 голос
/ 04 октября 2010

Чтобы установить цвет, используйте вызов 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);

будет отображать текст красным, даже если он выглядит так, как будто должен отображаться синим.

Освещение также повлияет на цвет, как отметил Стивен.Если вы используете освещение, лучше всего временно отключить его во время рисования текста.

0 голосов
/ 29 сентября 2010

Есть ли у вас какие-либо настройки освещения?Это может привести к изменению цвета.

...