Do Vertex Array Objects ‘group’ also glUniform uploads? (e.g. what one uploads to a shader?)
I’m almost certain they don’t since the documentation is that they only gather whatever alters “Vertex Array State” which appears to be only what glVertexAttribPointer etc. are doing.
Do Vertex Array Objects ‘group’ also glUniform uploads?
Uniforms are program state, not VAO state.
I’m almost certain they don’t since the documentation is that they only gather whatever alters “Vertex Array State” which appears to be only what glVertexAttribPointer etc. are doing.
The OpenGL spec is very clear about these kinds of things. It doesn’t leave any ambiguity about what state is set by which functions or what state is encapsulated by what object. If it gives a list of state that VAOs encapsulate, then they encapsulate exactly and only that state.
Section 6.2 of any version of the OpenGL specification lists all of OpenGL’s state and what objects (if any) that state belongs to.
Alternatively, from the OpenGL wiki article on GLSL Uniforms: “They are stored in a program object.” It’s generally considered something to be so obvious that nobody has to say it.
It could be in the introductory sections of the spec because it (the spec) is very clear about several concepts up to a certain point in the text.
Of course I’m well aware, that’s not the job of a spec, it does not have to be an introductory text necessarily but it is already one for several concepts in its introductory passages.