Water Bodies
We've had water in Rush Rally games for a while, but it's always been limited to a single height, essentially a sea level height. This works well for flatter areas but as soon as the terrain gets more hilly/mountainous, the lack of water at height becomes more obvious. There are a couple of ways to go about solving this, either strategically place water bodies and sculpt the terrain around it, or look at the generated terrain and place water in suitable spots. I suspect we'll use both in the long run, but for now, I've gone with the later.
I chose a fairly simple method to do this, which was to first identify low points on the mesh, basically points which are surrounded by higher points. After those points are found, we then take a closer look at each point and their surrounding vertices. And continue to look whilst the adjacent verts increase in height, only stopping when they start to decrease again. Once we're finished with that step, we'll classify the identified group of verts and decide whether they qualify for a water body. This will depend on a number of factors, mainly, depth and surface area. Once we're happy these verts are good enough, a surface mesh is created using the heighest point before it started to decrease, and the area defined by said group of verts.
The end result being water at different heights, in suitable locations. Lovely! If only rivers were that easy :D