Terrender

Terrender is a software voxel landscape engine based on the concept of height-tracking to achieve a real-time rendering rate (30 fps) even on a decade old hardware. It supports 5 degrees of freedom (DOF) in full perspective correctness, and simulates the 6th degree to some extent. Fully implemented in assembler, its visual outcome was remarkable back then when 3D graphics hardware was still in its infancy.

Development on this project was started in October 1999 when I found an article about voxel-based landscapes in the PC-Underground series of the German computer magazine PC-Magazin. I was immediately fascinated and implemented my own first engine (in Turbo Pascal at that time). But the original engine was slow and very basic, offering only 4 DOF, no perspective correctness, and absolutely no interpolation. So I sat down and rewrote the engine over and over again, putting a lot of mathematical efforts in it, eventually learning from it, and gradually moving from Turbo Pascal to C to pure assembler, taking advantage of SIMD (MMX) instructions. I ended up with a number of then exciting features, which are summarized here (mostly for sentimentality, I guess):

  • Sampling anti-aliasing
  • 5 degrees of freedom in full perspective correctness
  • Simulated (non-perspectivically correct) 6th degree of freedom
  • 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

You can still download a Windows binary if you are interested in testing the software. Here are the minimum system requirements:

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

Download: terrender-0.47.zip

Screenshots

A number of old screenshots from the engine: