Python + OpenGL - ускоряет передачу граней в OpenGL
Я использую OpenGL с привязками Python. Я передаю свои лица в OpenGL со следующим кодом:
glBegin(GL_TRIANGLES)
for i in range(len(triangles)):
glVertex3fv(triangles[i])
glEnd()
где triangles
это список лиц.
Эта часть кода кажется довольно медленной, занимая порядка нескольких секунд для сетки из ~10000 граней. Есть ли простой способ ускорить его, возможно, проходя через все треугольники одновременно, вместо того, чтобы использовать это для цикла?
1 ответ
Вы ищете массивы вершин. В идеале вы должны объединить его с объектами буфера вершин, чтобы поместить данные геометрии в быструю память.
Вот учебник
http://ltslashgt.com/2007/08/31/vertex-buffer-object-pyopengl/