Tekst
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