Как многократная буферизация может сделать программу быстрее
У меня есть вопрос о множественной буферизации в OpenGL. Например, у меня есть программа. Это делает следующие вещи:
- сделайте предварительный проход глубины и запишите некоторую информацию в буфер хранения шейдера.
- используйте данные в буфере хранилища шейдеров, нарисуйте что-нибудь в буфере кадров по умолчанию и поменяйте местами буфер, чтобы я мог видеть картинку
Поскольку я создаю только один буфер для хранения шейдеров. Графический процессор не может выполнить следующий шаг 1 следующего "кадрового буфера" "сделать предварительный проход глубины", пока последний кадровый буфер не завершил шаг 2 "использовать данные в буфере хранения шейдера".
Это правда? Как я могу использовать эффективный буфер хранения шейдеров, когда GPU использует мультибуферизацию (предположим, у меня достаточно памяти на GPU).