Efficient terrain generation for game applications
Modeling 3D terrain is subject to many applications, ranging from video game, flight simulation, building construction, geographical studies, etc. A lot of software has been released to support developers to create 3D terrain. However, many of these software are only used for their own fields and ar...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Final Year Project |
Language: | English |
Published: |
2009
|
Subjects: | |
Online Access: | http://hdl.handle.net/10356/16998 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
Summary: | Modeling 3D terrain is subject to many applications, ranging from video game, flight simulation, building construction, geographical studies, etc. A lot of software has been released to support developers to create 3D terrain. However, many of these software are only used for their own fields and are not reusable in other applications.
In this project, the author has developed a software prototype which provides users with tools to generate and edit 3D terrain as required. We can call it general-purpose terrain editor. This software is able to receive input from heightmap and generate triangular meshes from it. In addition, we can also apply some operations to the output meshes such as texture mapping and structure placement.
At first, various mesh data structures and algorithms for terrain generation were investigated and compared. In the end, Quad-Edge data structure was chosen as the mesh data-structure and a hybrid of the Data-Dependent and Delaunay Triangulation is used to generate triangular meshes. The concept of a new and innovative feature, voxel control map, is also being proposed and developed.
Two major modules, which are mesh generator and mesh renderer, were implemented in the C++ language. The mesh generator receives heightmap input and used chosen mesh generation algorithm to produce triangular meshes. Mesh renderer receives those triangular meshes and output the meshes onto the display screen.
GUI for the terrain editor has also been designed and developed. Other than the main interface, there are four major interfaces, which will empower user to customize heightmap input, customizing output meshes, applying texture mapping and structure placement. |
---|