Исходя из моего базового понимания, объект буфера вершин работает примерно так (псевдокод):
Обычно, если кто-то хотел сказать, нарисовать квадрат, можно было бы использовать команды рисования линий.
line (0, 0) -> (1, 0)
line (1, 0) -> (1, 1)
line (1, 1) -> (0, 1)
line (0, 1) -> (0, 0)
Использование VBO, если я правильно понимаю, загрузит вершины в VBO.
define VBO
load (0,0) -> VBO
load (1,0) -> VBO
load (1,1) -> VBO
load (0,1) -> VBO
load (0,0) -> VBO
Затем вы можете выполнить одну команду рисования.
draw VBO vertices
Хотя я понимаю, как работают VBO, я не знаю, почему они улучшают производительность.
Как они улучшают производительность?