I have an isometric 2D Engine that has capability of generating different heights.
http://i.imgur.com/4BKlkuCl.png
It runs at 20~30 FPS with grid layers, 55~60 FPS without grid layers.
And I started to think about improving it’s performance much higher(though I have enough fps for smooth scrolling).
The way it generates the world is by dividing entire world by chunks(The engine itself can generate maximum map size of 2048x2048).
I have single tile vertices saved in vbo, and when it is time to render a tile, I map out the buffer and change the vertex location based on its height, flip the buffer, then ummap it.
But now I’m thinking about putting a single chunk into vbo, then render it.
However, if I put single chunk(which contains vertices for tiles) into vbo, it will be impossible to unmap the buffer, pin-point the tile, then change it’s height value.
So my question is, is there a way to “store all tiles in one chunk, into one vbo, then modify individual tile as it needs”?