Tiles better algorithms

Hi guys! i working in a tile-isometric-view engine and a have several approach to render the floor

  1. Draw tiles using Gl display list, but i can’t check against frustrum, couse i need to re calculate the in or out tile every frame

  2. Draw tiles using Gl display list never check against the frustrum (i don’t like this approach)

  3. Using inmediate mode and check all tile against the frustrum (slow :frowning: )

  4. Using Octree to perform culling

anyone have a recomendation, best practics or somethings else to do a good performace terrain tile thanks in advance!!

Why octree, if you have 2d tiled map? Use quadtree.

If you have your tiles stored in 2D array then you don’t even need a tree structure. Note that for orthogonal top-down view you would simply render a rectangular subarea of your map - that’s very simple.
With isometric view you will have different shape in your 2D aray but it should be as simple as that.
How is your geometry stored? If you have two identical tiles - do you draw the same tile in two different locations or are these two different objects in vertex array?
In first case you would probably use glDrawEements for each tile. In second case you would have one index array for entire map.
In second case you could use dynamic index array instead - each frame you select visible tiles and copy their indices to new array - then you can just draw everything with one glDrawElements call - that is of course if you don’t have to switch shader or texture. Making dynamic index array and sending it to GPU every frame is usually faster than calling glDrawElements many times (in case of my terrain engine it was 30% faster).
So, I’d suggest to put as much as you can into single texture :slight_smile: