Chris Seieroe
Final Project - Landscape Renderer
Features | Yet
to be Added | Sample Screen
shots
| Program Usage
Features
- Read a height map from a file (8-bit RAW format) that is 1024 x
1024 pixels. Each pixel in the file is represented as a single byte.
These values represent the height (y value) of that point in the
landscape. A value of 0x0
(black) is the lowest point and 0xFF (white) is the highest point.
- Since rendering every pixel takes a lot of horsepower, you can
specify a detail scale. This will skip certain pixels when rendering
the height map.
- Read a texture from a file (24-bit BMP format). This texture will
be applied to the landscape.
- Read a detail texture from a file (24-bit BMP format). This
texture is tiled through the landscape to improve visual quality.
- Move the camera like in a First-Person-Shooter game.
- Switch between different lighting conditions. Also has a night
mode that displays the moon.
- A sky box surrounds the scene. This gives the impression of a
world. This also changes to a different scene in night mode.
- Volumetric fog. Instead of fog that floods the scene, this only
shows fog in the lower portions of the landscape.
Yet to be Added
- Self shadows. This adds shadows from the landscape itself, like
mountains casting shadows on the valley below.
- Other environmental effects, like clouds, rain, or lightning.
Sample Screen shots
Night
Night with volumetric fog
Day
Day with detail texture
Day with detail texture and volumetric
fog
Program Usage
- To run the program, you must supply 4 command-line arguments
- step size
- The step size is an integer (preferable a power of 2). This
tells the program to use every Nth pixel as a vertex, allowing you to
render the scene faster. The preferred size is 4, but it is not
recommended that you use anything larger than 16 as it greatly
decreases the detail.
- height map filename
- texture filename
- detail texture filename
- To move the camera around the scene, drag the mouse around to
change where you are looking at. Movement is done with the "wasd" key
navigation. The 'w' key moves forward while the 's' key moves backward.
The 'a' key sidesteps to the left while the 'd' key sidesteps to the
right.
- To toggle the detail texture, press the spacebar.
- To toggle volumetric fog, press the 'f' key.
- To change the lighting modes (and switch to night mode for some
of them), press
the number keys.
- To quit the program, you can press the 'q' key.