Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 8945
  • Last Modified:

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.

Conditions:
- 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.

Thanks

Geoff M.
0
gmayo
Asked:
gmayo
  • 2
  • 2
1 Solution
 
pvvvpCommented:
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.
0
 
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.
0
 
pvvvpCommented:
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.
0
 
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.

Cheers

Geoff M.
0
 
BonneelCommented:
Hi,

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 ! :))
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now