Tartalomjegyzék

< 3D

OpenGL

Ablak törlés

void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
void glClearIndex(GLfloat c)
void glClear(GLbitfield mask);

Példa:

glClear(GL_COLOR_BUFFER_BIT)

Törölhető pufferek:

A rajzolás befejezését a glFlush() függvénnyel kezdeményezhetjük.

void glFlush(void);

A glFinish() függvény csak akkor adja vissza a vezérlést, ha minden utasítást végrehajtódott.

void glFinish(void);

Geometriai alakzatok rajzolása

A geometriai alakzatokat csúcspontokkal adjuk meg. Csúcspontot 2, 3 vagy 4 koordinátával adunk meg.

A csúcspontokat a glVertex*() függvényekkel adhatunk meg.

void glVertex{234}{sifd} (TYPE coords);
void glVertex{234}{sifd}v (const TYPE *coords);

A glVertex*() függvényeket a glBegin() és glEnd() függvények között kell megadni.

Normálvektor

Az a vektor, amely adott pontban merőleges a felület érintősíkjára.

Minden csúcsponthoz legfeljebb egy normálist rendelhetünk, a glNormal*() függvénnyel. Szintaxis:

void glNormal3{bsifd} (TYPE nx, TYPE ny, TYPE nz)
void glNormal3{bsifd}v (const TYPE *v)

Automatikus normalizálás engedélyezése:

glEnable(GL_NORMALIZE)

Alakzat megjelenítése

Pontok, szakaszok és poligonokat rajzolhatunk csúcspontokkal.

Kivételesen, egy téglalap megadható az átlók csúcspontjaival.

void glRect{sifd} (TYPE x1, TYPE y1, TYPE x2, TYPE y2 );
void glRect{sifd}v (TYPE *v1, TYPE *v2 );
glBegin(GL_LINES);
...
glEnd();
 
glBegin(GL_QUADS);
...
glEnd();