Почему этот код не работает?Cant draw используя glDrawArrays
// 1 square (made by 4 quads) to be rendered
GLfloat vertices_position[] = {
x, y,
x+w, y,
x+w, y+h,
x, y+h,
};
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, vertices_position);
glDrawArrays(GL_QUADS, 0, 4);
glDisableClientState(GL_VERTEX_ARRAY);
Я использую glew с этим, и я не получаю ошибок компиляции, все, что я получаю, ничто не рисуется на экране.
, если я использую это вместо того, чтобы она отлично работает:
glPushMatrix();
glTranslatef(0, 0, 0);
glScalef(scale,scale,1);
//set color
glColor4f(R, G, B, A);
glBegin(GL_QUADS);
glTexCoord2f( texLeft, texTop);
glVertex2f(x, y);
glTexCoord2f(texRight, texTop);
glVertex2f(x+w, y);
glTexCoord2f(texRight, texBottom);
glVertex2f(x+w, y+h);
glTexCoord2f( texLeft, texBottom);
glVertex2f(x, y+h);
glEnd();
glPopMatrix();
Отбирается ли он? – chris
У меня есть 2D-настройка с OpenGL, я не понимаю, где она будет отбираться. Тем более, что если я заменил код на немедленный режим, он отлично работает. – Tallkotten
Правда, похоже, что теперь это было бы непротиворечиво, если бы вы опубликовали это. Все, что я собираюсь сделать, это то, что OpenGL выполняет обратную обработку по умолчанию, и это может быть болью, когда ее просто отбирают, а не что-то действительно неправильное. – chris