Я создаю массивы вершин на лету на каждом рендере, и я хочу удалить массивы впоследствии. glDrawArrays
немедленно скопирует массивы вершин на сервер? Следовательно, безопасно ли удалять массивы вершин после вызова glDrawArrays
?Могу ли я удалить вершинные массивы OpenGL после вызова glDrawArrays?
float * vp = GetVertices(); // Regenerated on each render
glVertexPointer(3, GL_FLOAT, 3 * sizeof(float), vp);
glDrawArrays(GL_TRIANGLES, 0, nVertices);
delete[] vp; // Can I do this?
В противном случае, как определить, когда можно безопасно удалить массивы вершин?
Для удаления массива требуется синтаксис: 'delete [] vp;' где 'vp' является указателем на первый элемент массива. – dirkgently
@dirkgently К сожалению. Спасибо. –
О несвязанной ноте - использование массивов вершин требует шунтирования данных до памяти графической карты каждый раз. Для более эффективного подхода взгляните на объекты буфера Vertex http://www.songho.ca/opengl/gl_vbo.html – zebrabox