Einfachkrank
2004-08-27, 14:18:51
Hi,
ich bin gerade an meinem Level Editor dran und experimentiere etwas mit dem Terrain. Dabei bin ich auf folgende Frage gestoßen. Bei mir sieht ne Standard Funktion zum Rendern des Terrains so aus:
for(int i=xstart; i < xend; i++)
{
glBegin(GL_QUAD_STRIP);
for(int j=zstart; j < zend; j++)
{
glVertex3f(terrain[(i*numpolz)+j].x, terrain[(i*numpolz)+j].y, terrain[(i*numpolz)+j].z; // 1. Vertex
glVertex3f(terrain[(i*numpolz)+j+1].x, terrain[(i*numpolz)+j+1].y, terrain[(i*numpolz)+j+1].z; // 2. Vertex
glVertex3f(terrain[((i+1)*numpolz)+j].x, terrain[((i+1)*numpolz)+j].y, terrain[((i+1)*numpolz)+j].z; // 3. Vertex
glVertex3f(terrain[((i+1)*numpolz)+j+1].x, terrain[((i+1)*numpolz)+j+1].y, terrain[((i+1)*numpolz)+j+1].z; // 4. Vertex
}
glEnd();
}
Jetzt könnte ich doch aber eigentlich den 3. und 4. Vertex vertauschen und könnte das ganze mit GL_QUADS rendern...
Jetzt meine Frage: Warum werden bei dem Strip die selben Punkte angegeben? In nem Strip wird ja folgendermaßen gerendert:
1 --> 2
/
/
3(5)-4(6)
/
/
7 --> 8
wobei jetzt der 3te und 4te wieder gleich mit dem 5ten und 6ten Vertex sind... Was soll das ganze dann? Spart man beim Strip nicht Geschwindigkeit dadurch, dass man quasis den 5ten und 6tem bei den Quads auslässt und mit dem 7ten und 8ten im Strip weitermacht? Versteht ihr worauf ich hinauswill?:D
MFG Einfachkrank
ich bin gerade an meinem Level Editor dran und experimentiere etwas mit dem Terrain. Dabei bin ich auf folgende Frage gestoßen. Bei mir sieht ne Standard Funktion zum Rendern des Terrains so aus:
for(int i=xstart; i < xend; i++)
{
glBegin(GL_QUAD_STRIP);
for(int j=zstart; j < zend; j++)
{
glVertex3f(terrain[(i*numpolz)+j].x, terrain[(i*numpolz)+j].y, terrain[(i*numpolz)+j].z; // 1. Vertex
glVertex3f(terrain[(i*numpolz)+j+1].x, terrain[(i*numpolz)+j+1].y, terrain[(i*numpolz)+j+1].z; // 2. Vertex
glVertex3f(terrain[((i+1)*numpolz)+j].x, terrain[((i+1)*numpolz)+j].y, terrain[((i+1)*numpolz)+j].z; // 3. Vertex
glVertex3f(terrain[((i+1)*numpolz)+j+1].x, terrain[((i+1)*numpolz)+j+1].y, terrain[((i+1)*numpolz)+j+1].z; // 4. Vertex
}
glEnd();
}
Jetzt könnte ich doch aber eigentlich den 3. und 4. Vertex vertauschen und könnte das ganze mit GL_QUADS rendern...
Jetzt meine Frage: Warum werden bei dem Strip die selben Punkte angegeben? In nem Strip wird ja folgendermaßen gerendert:
1 --> 2
/
/
3(5)-4(6)
/
/
7 --> 8
wobei jetzt der 3te und 4te wieder gleich mit dem 5ten und 6ten Vertex sind... Was soll das ganze dann? Spart man beim Strip nicht Geschwindigkeit dadurch, dass man quasis den 5ten und 6tem bei den Quads auslässt und mit dem 7ten und 8ten im Strip weitermacht? Versteht ihr worauf ich hinauswill?:D
MFG Einfachkrank