В настоящее время я передаю массив функции, а затем пытаюсь использовать glGenBuffers с массивом, который передается функции. Я не могу найти способ заставить glGenBuffers работать с массивом, который я передал. Я достаточно хорошо понимаю основы указателей, но это за мной.
Буферы создаются (и удаляются) в другом месте. Я могу сделать все, если я исправлю это, но это делает его более гибким. Текущая проблема - "& renderArray [0]". Если я перемещу это (все в функцию) так, чтобы оно было в основном коде рисования, это работает. У меня также есть кое-что очень похожее, которое также использует постоянный массив.
Это в основном то, как работает код рендеринга. Это немного сложнее (цвета, использующие ту же идею массива, также не работают), но основная идея заключается в следующем:
void drawFoo(const GLfloat *renderArray, GLuint verticeBuffer) {
glBindBuffer(GL_ARRAY_BUFFER, verticeBuffer);
glBufferData(GL_ARRAY_BUFFER, sizeof(renderArray)*sizeof(GLfloat), &renderArray[0], GL_STATIC_DRAW);
glVertexPointer(2, GL_FLOAT, 0, 0);
glEnableClientState(GL_VERTEX_BUFFER);
glDrawArrays(GL_TRIANGLE_FAN, 0, 45);
glDisableClientState(GL_VERTEX_BUFFEr);
}
Заранее спасибо за помощь