While playing with my planetary terrain renderer, I ran into the problem that that height source generation library that I was using (libnoise) wasn’t giving enough precision - it only provides 8-bit precision for the height values for any given point on the terrain. 256 distinct height values is plenty normally, but it wasn’t really doing the job for me. It was causing nasty ’stepping’ in the terrain, where my LOD would increase, but the additional data that was produced wasn’t fine-grained enough to show any improvement. For example:
Pardon the lack of texturing and so on. Seriously, I’ll get to it after I finish the terrain mesh. You can clearly see the ’steps’ though - the LOD system is doing its best, but without any useful data.
Anyway, I finally got around to rolling my own little perlin noise system tonight. It’s not integrated with the OpenGL renderer yet, but I got some kinda neat effects testing it in a console window. And it produces 32-bit floats
Warning - if you’re prone to reminiscing about the ‘good old days‘, when real men did everything by command line, you may find this picture invokes a bit of nostelgia. Also, it’s a rather large animated GIF.
EDIT: hmm, so it turns out the GIF is 35mb. Click here to see it, but be warned. Or, there’s a static screenshot below:

















