The downfall of glest's environments I think is because the tile system is so obvious, one way to change this is with tucho's idea:
If Glest had only 4 'surface types' rather than 5, then I reckon I would have done this shortly after tucho suggested it. Even then I was concerned with the extra memory it would eat, but I was thinking inside a box... see reply to Philip below.
Can a ticket please be made for these two features? I'm not a coder but they sound relatively straight forward.
You'll get your tickets (although I think there is already one for a new terrain render/splat system), but beware the "I'm not a programmer, but this seems simple" comments. Nothing is a simple as it sounds, a good idea is worth little compared to a good implementation, and the former does not guarantee the later.
Another thing which has been suggested before, bump maps on ground textures. Normal maps are already implemented in GAE so I'm not sure easy it would be to implement. But I beleive it would be far more worthwhile than putting bump maps on units, I could cite many examples of how nice this would be; but I'm sure you all know already.
Yes. This. Terrain with depth looks amazing compared to the flat, painted-on stuff we have.
I'm happy to get it rigged up and let people experiment, but considering the terrain will generally fill the entire field of view, the performance hit which be much more noticeable.
The renderer then just looks for all tiles that share some particular texture, picks the appropriate alpha-blending shape for tiles adjacent to the ones with that texture, sticks everything into a VBO with the base texture using one set of texcoords (allowing arbitrary scaling and rotation just by transforming those texcoords) and the blend texture selected from an atlas with another set of texcoords, then repeat for every base texture in the map, and render by drawing each layer on top of the previous ones.
Multi-pass... of course! I feel a little foolish now, I was blindly seeking a one pass solution and the amount of extra UV coords I would need to make that work was a major issue, and it also would have required the 'tile type' as a vertex attribute and then numerous conditionals in the shader (not a good thing).
Building the texture up in multiple passes removes both these problems, and indeed the need to implement it using a shader.
Many thanks Philip!