Projects & Papers · Code Snippets · Links · About Page views:


Terrender


  Content

What is this?

Terrender is a real-time ray-casting engine that can be used to virtually fly through landscapes for which digital elevation data is available in grid form, "on the fly". A key to achieve real-time frame rates within a landscape rendering engine is to use a technique called height-tracking for the ray-casting process. Unfortunately, this technique does not allow arbitrary looks onto the landscape. However, with some mathematical tricks you can get 5 degrees of freedom (DOF) in total perspective correctness and simulate the 6th degree for small angles. This is what I did with this engine, and I think you should check out the program by yourself to see the difference of this kind of visualization to standard polygon rendering and enjoy flying through landscapes without edges. (Note that this is all without hardware acceleration!)

Development on this project was started in October 1999 when I found an article about voxel based landscapes in the PC-Underground series of German magazine PC-Magazin. I was immediately fascinated and implemented my own first engine (in Turbo Pascal at that time). But the original magazine's engine was slow and very basic, offering only 4 DOF, no perspective correctness and absolutely no interpolation. Since then I invested a lot of time into this project and rewrote the engine over and over again, put a lot of mathematical efforts into it, for more perspective correctness, more degrees of freedom and (last but not least) more speed, while switching to C and finally to pure assembler taking use of the special MMX instructions, with the result of having a code that has practically nothing left from the original one but has dozends of features implemented while still drawing the landscapes at high speed render rates.


Features

  • Sampling Anti-Aliasing
  • 5-6 DOG
    - full freedom in 5 dimensions !!!
    - limited freedom from -45° to 45° when looking up and down (approximated)
  • Full perspective correctness (central projection) in 5 DOG
  • Realistic-looking landscape modelling
  • Interpolated height and color texture data
  • Highcolor and Truecolor
  • Realtime render frame rate on a modern CPU (1 GHz)
  • Moving and morphing clouds
  • Adjustable weather conditions (sunny - cloudy - foggy, day - night)
  • Dynamic map loading
  • Just-in-time parameter changing (everything in realtime)

Download

Minimum system requirements:

  • Intel Pentium II or AMD Athlon/Duron
  • Windows 95 with DirectX

Download:

terrender-0.47.zip


Copyright 2003-2005, Michael Noisternig