Мне было просто любопытно, можете ли вы указать постоянную нормаль при рисовании с помощью одного вызова DrawElements. Я использую VAO и VBO, так что это не проблема, потому что я загружаю их один раз для всех вершин и просто сохраняю идентификатор VBO, но я мог бы освободить немного памяти на графической карте.
вот как вам нужно загружать данные в графику:
glBindBuffer(GL_ARRAY_BUFFER,VBO[Grid][Normals]);
glNormalPointer(GL_FLOAT, sizeof(vector3f), 0);
glEnableClientState(GL_NORMAL_ARRAY);
Поскольку я задаю некоторую сетку 5x5x5, а затем использую индексы для создания кубической поверхности, с нормалями не так много, и использование некоторой константы может помочь :)