Tekst
Børre Stenseth
Forklaring av>Tekst

Tekst

Hva
Tekstrendering i OpenGL

Vi har litt forskjellige muligheter for å "tegne" tekst avhengig av hvilke omgivelser vi arbeider i. Dersom vi arbeider under MS windows har vi muligheter for å bruke Windows fontapparat og lage 3D tekst, se modulen: Tekst i Windows.

Dersom vi arbeider med Glut har vi tilgang på noen enkle rutiner for å tegne raster-tekst, se nedenfor.

Tekst i OpenGL

Det er en ganske involvert oppgave å bruke tekst i OpenGL. OpenGL har liten eller ingen støtte for tekst direkte. Mer om dette kommer snart. Se referansene så lenge.

Tekst i Glut

GLUT har noen enkle funksjoner for å framstille tekst. I korthet går dette ut på at vi kan sette rasterposisjon i 2D eller 3D:

void glRasterPos2f(float x, float y);
void glRasterPos3f(float x, float y, float z);
	

Så kan vi "tegne" bitmap tegn, f.eks. slik:

glutBitmapCharacter(GLUT_BITMAP_HELVETICA_18,'A');
	

Posisjonen flytter seg slik at vi er klare for neste tegn. Det kan derfor være hensiktsmessig å lage en enkel rutine for å vise tekst, f.eks. noe slikt:

private static void RenderText(String T)
{
    for (int ix=0;ix<T.Length;ix++)
        Glut.glutBitmapCharacter(Glut.GLUT_BITMAP_HELVETICA_18, T[ix]);
}
	

Hvorvidt vi ønsker å ha fonten og posisjonen som parametere i metoden er vel avhengig av hva vi vil bruke dette til. Tilgjengelige fonter er:

GLUT_BITMAP_HELVETICA_10
GLUT_BITMAP_HELVETICA_12
GLUT_BITMAP_HELVETICA_18
GLUT_BITMAP_TIMES_ROMAN_10
GLUT_BITMAP_TIMES_ROMAN_24
GLUT_BITMAP_8_BY_13
GLUT_BITMAP_9_BY_15
Referanser
  1. GLUT APIMark J. Kilgardwww.opengl.org/documentation/specs/glut/spec3/spec3.html14-04-2010
  1. Survey Of OpenGL Font TechnologyKhronos Groupwww.opengl.org/resources/features/fontsurvey/14-04-2010
  1. Fast Text in OpenGLSteve Bakerwww.sjbaker.org/steve/omniv/opengl_text.html14-04-2010
Vedlikehold

B. Stenseth, mai 2006

(Velkommen) Forklaring av>Tekst (Tekst i Windows)