I'm currently rendering geometry stored in indexed vbos and managed by vaos. I use glDrawElements to draw the vbo on the screen.
Now I've got the problem that I store different (more complex) geometry in one vbo. Each of these geometries requires the same type of uniforms but in order to render each one properly I need to change the uniform between those sets of primitves which form one of my geometries.

I've read several wiki-entries mentioning that changing uniforms between draw-calls on one vbo is possible but I don't see how to do it with drawElements.
Can someone help me?

Thank you,