The screenshot shows a frame from my first person 3D terrain engine. One thing I hate about modern 3D RTS engines is that the camera can’t be in the thick of battle with your armies, so I am working on this “first person” terrain engine. You can actually move the camera right down to ground level or leave it hovering above the ground.
An approach I have taken is to develop a true 3D zone where meshes are used close to the camera and a non-3D zone where billboards, lots of them, are used for trees etc. Excusing my fairly lame tree meshes at the front of the image, the concept is demonstrated quite clearly with the billboard tree bitmaps in the rear. Permanent fixtures like buildings are left in true 3D.
My engine does not use a ROAM type algorithm for terrain; instead I use a simple but effective tile system. You can liken my terrain mechanism to being in the same style as the 2D adjoining tiles in classic Rollercoaster Tycoon, only of course in 3D. While my engine does not generate high-resolution terrain geometry, efficient and easy to manipulate rolling hills do result. The benefit of tiles too is that all world entities can be mapped using a linked list. Essentially the entire world map is an octree, rendering entities that are only on a visible tile. Having seamless terrain textures hides the fact tiles are used.
Streamlining of code is my next big undertaking. I want to have a long viewing distance for this engine so as to watch huge armies clash.