У меня есть сцена OpenGL, сделанная как VBO и IBO.Мой VBO - это серия из 3 чисел с плавающей запятой: x, y, z, x, y, z, x, y, z ... В дополнение к этому у меня есть массив цветов, состоящий из серии из 3 поплавков: r, g,b, r, g, b, r, g, b ...
Моя цель состоит в том, чтобы первая вершина (x = вершина [0], y = вершина [1], z = вершина [2]) связан с первым цветом (r = цвет [0], g = цвет [1], b = цвет [2]).Однако я не могу отобразить цвета с кодом ниже:
glGenBuffers(1, &VertexVBOID);
glBindBuffer(GL_ARRAY_BUFFER, VertexVBOID);
glBufferData(GL_ARRAY_BUFFER, sizeof(GLfloat)*nbVertex*3, glVertex, GL_STATIC_DRAW);
glGenBuffers(1, &IndexVBOID);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, IndexVBOID);
glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(int)*nbVBOInd, VBOInd, GL_STATIC_DRAW);
glEnableClientState(GL_VERTEX_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);
glBindBuffer(GL_ARRAY_BUFFER, VertexVBOID);
glVertexPointer(3, GL_FLOAT,0,0);
glColorPointer(3, GL_FLOAT, 0, glColors);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, IndexVBOID);
glDrawElements(GL_TRIANGLES, nbVBOInd, GL_UNSIGNED_INT, 0);
Есть ли проблема в коде выше, или в том, как мой массив настроен?