I am trying to figure out how to implement the following concept with modern OpenGL API (4.3)
I have a vertex buffer which has a regular vertex array, But I need half of its data to process with ShaderProgram A,
and another half - with ShaderProgram B.
Currently what I do is creating two different VAOs with vertex attribute pointers pointing to related parts of the vertex array.
But in this case I must issue 2 draw calls -one per VAO.
Can I do it with a single draw call?
P.S: I thought of primitive restart,but AFAIK it doesn't switch shaders on each restart.