Terrain rendering engine

Looking for a terrain rendering engine that will take a heightmap (eg 2 dimensional array of height values) and either render them itself or return a set of triangles to be rendered by myself.

- Full source code
- Free
- Working
- DirectX (if it renders itself)
- Optimised, ie LOD-style triangle reduction

If one can be recommended that uses Delphi in C++, that will be a bonus!

I've read loads of tutorials on ROAM and the like but most are theoretical rather than practical.


Geoff M.
Who is Participating?
Hmm. I look at the sources and see a few GLtypes scattered in h-files, GL/GLUT initialization code in "main.c" and some GL commands in "render.c". Those are quite suitable for just-a-technical-replacing, I think. What with originally-D3D versions... I can't recall any algorithm as good as this in my earlier search attempts, be it OGL or D3D. They all seemed to be nothing but variations on the same old themes. Don't be afraid of maths! (Or OGL :) ). The alg clearly overweights those difficulties.
The SOAR alg is a _very_ nice one; I have found it following the links from http://web.interware.hu/bandi/ranger.html (that's an optimized version). However, it is OpenGL :( . Still, this fact is compensated by a thorough mathematical explanations in the papers. It is at the http://www.gvu.gatech.edu/people/peter.lindstrom/papers/tvcg2002.
gmayoAuthor Commented:
Thanks, but OpenGL is no good to me. Nor the maths explanations! I have since found one, in Delphi no less, but based on ROAM with optimisations for triangle strips.

Geoff M.
gmayoAuthor Commented:
I understand your point, but to be honest, I've gotten a bit fed up with the swathes of code that I've tried to convert which doesn't work, or only partially works, or doesn't compile properly.

It's one thing understanding the theory *or* the programming conversion. It's quite another to learn *both* at the same time! I will have a look at the stuff you've suggested tonight though.


Geoff M.

You should look at fBm, and multifractals explained in "Texturing an Modelling, a procedural approach" by K.Perlin, K.Musgrave, D.Ebert, Peachey... You can also look a Fourier synthesis.  That is for generating the heigfield (if it isn't done yet).
For rendering tips, you can look at http://www.vterrain.org : there are a lot of ressources for landscapes generating/rendering.

Nicolas Bonneel
http://www.byosphere.com (rendering landscapes too !)

ps : ...it's my first post here... hope it will help ! :))
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.