ceci est mon opengl-es 2.0 code:Problème lors du portage de OpenGL 1.1 OpenGL-ES 2.0
{
for (surfnum=0;surfnum<surftotal;surfnum++){
for (i=0;i<triNum[surfnum];i++){
GLfloat *Vertices[] = { triArray[surfnum][i].normpt1, triArray[surfnum][i].normpt2,triArray[surfnum][i].normpt3};
glGenBuffers(1, &ui32Vbo);
glBindBuffer(GL_ARRAY_BUFFER, ui32Vbo);
unsigned int uiSize = 3 * (sizeof(GLfloat) * 1);
glBufferData(GL_ARRAY_BUFFER, uiSize,*Vertices, GL_STATIC_DRAW);
}
}
}
for(int i = 0; i < 80000; ++i)
{
glClear(GL_COLOR_BUFFER_BIT);
int i32Location = glGetUniformLocation(uiProgramObject, "projmatrix");
glUniformMatrix4fv(i32Location, 1, GL_FALSE, pfIdentity);
glEnableVertexAttribArray(VERTEX_ARRAY);
glVertexAttribPointer(VERTEX_ARRAY, 3, GL_FLOAT, GL_FALSE, 0, 0);
glDrawArrays(GL_TRIANGLES, 0,i);
eglSwapBuffers(eglDisplay, eglSurface);
}
Ceci est mon code opengl-es 2.0. Je travaillais sur opengl 1.1 dans lequel j'ai pu montrer les données de forme de surface d'iso.
Ceci est mon Opengl 1.1 Code:
void drawTriangle()
{
int surfnum, i;
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0,0.6,0.1);
for (surfnum=0;surfnum<surftotal;surfnum++)
{
for (i=0;i<triNum[surfnum];i++)
{
glBegin(GL_POLYGON);
glNormal3fv(triArray[surfnum][i].normpt1);
glVertex3fv(triArray[surfnum][i].pt1);
glNormal3fv(triArray[surfnum][i].normpt2);
glVertex3fv(triArray[surfnum][i].pt2);
glNormal3fv(triArray[surfnum][i].normpt3);
glVertex3fv(triArray[surfnum][i].pt3);
glEnd();
glFlush();
glutSwapBuffers();
}
}
}
Je ne reçois pas le même résultat que je recevais en opengl, en opengl-es 2.0 aussi un avertissement
venir comme: libegl : utiliser le logiciel de secours;
sortie se produit très lentement
ici la sortie sort de la fenêtre
Si vous voulez une autre information me demander.
Cela semble correct pour une matrice de projection orthographique. Que se passe-t-il et que prévoyez-vous? – Mikola