In the documentation I see that the final parameter for glNamedBufferStorage is flags and that flags:

Specifies the intended usage of the buffer's data store. Must be a bitwise combination of the following flags. GL_DYNAMIC_STORAGE_BIT, GL_MAP_READ_BIT GL_MAP_WRITE_BIT, GL_MAP_PERSISTENT_BIT, GL_MAP_COHERENT_BIT, and GL_CLIENT_STORAGE_BIT.

However, in the older glBufferData we use to specify a usage flag which would include things such as GL_STATIC_DRAW to specify expected usage patterns.

Where do we include that with the newer OpenGL?


1 Answer 1


The usage flag in BufferData was basically useless. There is no functional difference between each value and drivers used other ways to decide how to handle its data.

The flags parameter on the other hand actually changes what you can do with the buffer.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.