So I have a vertex buffer for a bunch of objects that use the same vertex format (say a vertex and normal attribute). Some of the objects are instanced and thus use additional buffer for instancing. Since instanced objects need a different vertex array object (they need additional vertex attributes for instanced data). Means that I will need to change the vao to render these. However they can use the same buffer as non-instanced objects, because they have the same format for the mesh data.
So my question is if two objects are going to use different vaos, but they have same format, would you recommend to put them into the same buffer, or separate buffers?