25 Stimmen

Wie zeichne ich Text mit GLUT / OpenGL in C++?

Wie zeichne ich mit GLUT / OpenGL Zeichenfunktionen einen Textstring auf den Bildschirm?

26voto

epatel Punkte 45365

Es gibt zwei Möglichkeiten, mit GLUT Strings zu ziehen

glutStrokeString zeichnet Text in 3D

alt text
(Quelle: <a href="http://local.wasp.uwa.edu.au/~pbourke/oldstuff/glut/opengl4.gif" rel="nofollow noreferrer">uwa.edu.au </a>)

y glutBitmapString wird Text zeichnen gegenüber der Benutzer

alt text
(Quelle: <a href="http://openglut.sourceforge.net/openglut_fonts.png" rel="nofollow noreferrer">sourceforge.net </a>)

11voto

Andrew Grant Punkte 57342
void RenderString(float x, float y, void *font, const char* string, RGB const& rgb)
{  
  char *c;

  glColor3f(rgb.r, rgb.g, rgb.b); 
  glRasterPos2f(x, y);

  glutBitmapString(font, string);
}

Und Sie können es so nennen;

RenderString(0.0f, 0.0f, GLUT_BITMAP_TIMES_ROMAN_24, "Hello", RGB(1.0f, 0.0f, 0.0f));

7voto

Adam Rosenfield Punkte 373807

Wenn Sie die eingebaute Schriftart oder Bitmap-Schriftart, die mit GLUT geliefert wird, nicht mögen, wie Antwort von epatel müssen Sie Ihre eigene Lösung entwickeln.

NeHe hat dazu einige gute Anleitungen (zusammen mit voll funktionsfähigem Beispielcode):

2voto

notnot Punkte 4330

Es ist im Allgemeinen ein bisschen unangenehm und nicht einfach. Versuchen Sie dieses Tool:

http://students.cs.byu.edu/~bfish/glfontdl.php

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X