This question already has an answer here:
I have a 3D tile map made up of individual billboards in OpenGL ES. Each tile is a two-triangle mesh with a 3D vector to determine position and another defining rotation.
How can I rotate the entire tile map around an arbitrary point?
I'm guessing I need to set up a model matrix instead for each tile... then set up a projection matrix for the world. Then, on update, I would translate the world matrix and change the orientation and multiply it with each model matrix before rendering.