указывать тип данных, а не GL_FLOAT?
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(GL_FLOAT), nullptr); Проблема в предпоследнем аргументе, я его выделил жирным шрифтом. Тип параметра там GLsizei.
Держите в курсе.
там поле stride в нём нужно указать количество байт между началом соседних вершин
Обсуждают сегодня