I'm displaying text from Bitmap Fonts on screen with OpenGL, and I'm creating a VBO for vertexes, another for indexes and one for UVs.
I get a string value, and I create a single vertex, uv and index data from all the characters so I only have 1 draw call.
Now I'm trying to figure what to do when that string changes. If it's the same length of the previous string, I can use glBufferData() and glBufferSubData(), but what should I do if it's a different size?
Can I bind the VBO, call glBufferData() with a different size and upload the new data? Or should I just delete the VBO and create a new one?
What's the proper way to deal with this?