Ошибка привязки с буферами OpenGL и прямым доступом к состоянию (DSA)

Я получил эту ошибку от OpenGL, когда я использую glNamedBufferStorage():

GL_INVALID_OPERATION error generated. Buffer must be bound.

Обычно мне не нужно использовать glBindBuffer() с прямым доступом к состоянию!

Вот моя последовательность вызовов gl:

glCreateBuffers(1, &m_identifier);
...
glNamedBufferStorage(m_identifier, static_cast< GLsizeiptr >(bytes + offset), data, GL_DYNAMIC_STORAGE_BIT);
...
glNamedBufferSubData(m_identifier, static_cast< GLintptr >(offset), static_cast< GLsizeiptr >(bytes), data);

Я использую только функции DSA, поэтому не понимаю, почему у меня возникла проблема.

1 ответ

Мой плохой, я забыл этот маленький: glGetBufferParameteriv().

Заменяется на glGetNamedBufferParameteriv() в DSA.

Это было завернуто в метод моего класса.

Другие вопросы по тегам