Hier ist der Beispielcode, den ich verwende. Dieser Code ist in OpenGL. Ich möchte es auf OpenGL ES portieren. glArrayElement()
wird in OpenGL ES nicht unterstützt. Stattdessen wurde empfohlen, glDrawElements()
, glDrawArrays()
zu verwenden. Ich kann das nicht umsetzen. Können Sie mir bitte helfen, den Code zu konvertieren?Probleme bei der Portierung von OpenGL-Code auf OpenGL ES
glTexCoordPointer(2,GL_FLOAT,sizeof(struct texcoord),tex);
glColorPointer(4,GL_UNSIGNED_BYTE,4,col);
glNormalPointer(GL_FLOAT,sizeof(vector),wet->n);
glVertexPointer(2,GL_FLOAT,sizeof(struct vertexcoord),vert);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);
glEnableClientState(GL_NORMAL_ARRAY);
glEnableClientState(GL_VERTEX_ARRAY);
glLockArraysEXT(0,wet->w*wet->h);
i=0;
for(int y=0;y<wet->h-1;y++)
{
glBegin(GL_TRIANGLE_STRIP);
for(int x=0;x<wet->w;x++)
{
glArrayElement(i);
glArrayElement(i+wet->w);
i++;
}
glEnd();
}
glUnlockArraysEXT();
Und noch eine Frage ist, die wir für glEnable(GL_TEXTURE_RECTANGLE_EXT)
in OpenGL ES Ersetzung zu tun haben.