TUD Logo

TUD Home » ... » Results of student work » Minor Theses » M.Feind C.Hennig

Computer Graphics

Minor Thesis of Matthias Feind and Christian Hennig

Conception and development of components for the creation and visualization of complex virtual worlds

Study course: Media Computer Science, summer semester 2005
Institute for Software- and Multimedia-Technology
Chair of Computer Graphics and Visualization

Tutor: Dipl.-Inf. (FH) Benjamin Neidhold
Professor: Prof. Dr. rer. nat. Stefan Gumhold

Content

  • Introduction
  • Conceptual Formulation
  • Content-Pipeline
  • TileEditor
  • ScenarioEditor
  • Download

Introduction

Nowadays VR-systems are used in many fields e.g. the automobile industry for the development of "Concept Cars" or the entertainment branch in various leisure parks. They are currently most common in flight simulators for the training of pilots. Here the prior goal of a VR-simulation is to attain a high degree of immersion. Immersion describes the intensity of experiencing the virtual world by the user. With an increasing immersion the borders between the real and virtual world become more and more insignificant. With the collaboration of the Chair of Computer Graphics a VR-simulation and visualization system is being developed at the Institutes for Materials Handling, Construction Machines and Logistics of the TU Dresden since 2002. The behavior of different construction machines is simulated in a synthetic environment. To generate the forces that act on the driver during the movement of the vehicle the simulator is standing on a platform whose position can be changed in six degrees of freedom with a movement system called "Hexaplot". This includes the motion alongside and the rotation about all three axes. Also the interior of the simulator is designed with an authentic driver's cab, LCD-driving mirrors and a 180 degree view on the virtual environment in order to create a preferably realistic driving experience. The task of the computer graphics group is the real-time visualization of a virtual landscape as well as the development of a fast and simple approach for the design of such a landscape and all its components on the other. The latter is the focus of this work.

Conceptual Formulation

One goal of the Chair of Computer Graphics is the development of a tool for the creation of virtual worlds to use it, amongst others, in the digger-simulator introduced before. The essential parts of the task are the modeling and texturing of a naturally appearing terrain, the building of various streets, editing of the street course followed by the generation of street geometry and the placement of 3D-objects on the terrain. In doing so algorithms shall be developed which carry out the automatic height modulation of the streets and the objects on the terrain. The functionality of this first step is realized in a tool called TileEditor. The terrain elements developed in the TileEditor should be merged to bigger units in another tool called ScenarioEditor. Therefore algorithms for the required modulation on the edges of the single parts are necessary. The XML-based format for the description of 3D-scenes, called XML3D, developed at the Chair of Computer Graphics is taken as a basis of data storage in all fields, thus as input-, intermediate- and output format for both steps.

As this thesis is a team work the tasks were spit as follows:

Matthias Feind:

  • Conception and development of the TileEditor
Christian Hennig:
  • Conception and development of theScenarioEditor
  • Development of the interface between internal data representation and XML3D-format

Content-Pipeline

The aim of the content pipeline is to reduce the overall design time of a virtual landscape in comparison to available solutions. After the analysis of some applications from the field of VR-modeling and the particularities applying specially for this case the concept of a Content-Pipeline was developed. The fundamental idea is the implementation of different abstraction levels. Every level makes different demands on the user which results in not having to carry out the whole development process by experienced modelers. The basic construction of the pipeline is pictured in the following.

Content-Pipeline

As one can see several tools are used in the course of developing the Content. Here the concept is focused on reutilization because the results of every level can be stored in a database for the time being and later be re-used and merged to bigger units at any time. Furthermore it leverages the different kinds of view on the designed object and moreover it allows an optimal division of labor. Using classical modeling tools fundamental objects are created in the first step and stored in a universal format in an object database for later reutilization. Hence, the extensive modeling work has to be done. Here you can see another aspect of the pipeline. All intermediate data is available in a standard format, namely XML3D. Therefore it can be visualized and compared with the XML3D-viewer at any time. Using the object database and an editor that was specifically developed in this thesis the scenario for the simulator shall be created in the next step. For this reason the editor should be easy to handle and labor-saving for the user. To minimize the present modeling input as much as possible this level was divided once more. According to the "what you see is what you get"-principle little rectangular terrain units are created in a 3D-view in the TileEditor, the so called "tiles". Those can be saved as XML3D-format and act from now on as input for the ScenarioEditor. With the ScenarioEditor the user is now able to merge the tiles in a top view for bigger scenarios using "drag and drop". The most important function is the option to adapt the tiles at their edges in such a way that the resulting scenario forms a unit. With that the creation of a static 3D-scene is completed. In the last step, the so called WorkspaceEditor, the scene shall become dynamic. In this manner the objects could additionally be given a certain behavior by using a simple script language. With this method cars could be made follow a certain route for example. Yet the WorkspaceEditor is only an idea and not part of this thesis either. This entire concept which primarily focuses on reutilization and automation shall enable to create beautiful virtual landscapes for the digger-simulator with only little work.

TileEditor

The TileEditor serves for the development of terrain tiles. This is completely done in 3D. The following graphic demonstrates a screenshot of the TileEditor:

Content-Pipeline

The TileEditor provides the user with the following functions:

  • 3D-representation of the tile
  • Development of the terrain using special tools and/or import of height maps
  • Terrain texturing
    • Layer compilation
    • Manual application of the layer
    • Procedural application of the layer
  • Street editing
    • Development of the street types
    • Import and export of street types
    • Adaptation of the course of the street to the terrain
    • Adaptation of the terrain to the street
    • Schemes/Models for the development of cross-ways in a modeling tool
  • Object editing
    • Import of XML3D-objects
    • Placing of objects on the tile
    • Adaptation of the objects to the terrain
    • Adaptation of the terrain to the objects
    • Adding snap points to the objects

ScenarioEditor

The ScenarioEditor is particularly used for the arrangement of three-dimensional tiles created in the TileEditor on a two-dimensional desktop and their mergence to a bigger scenario. Contrary to the TileEditor a 3D-view is not necessarily needed here but you even get a better overview viewing from above. The following graphic demonstrates a screenshot of the ScenarioEditor-main window:

Content-Pipeline

The ScenarioEditor provides the user with the following functions:

  • 2D- top view (simple handling and little hardware requirements)
  • Height view (illustration of the terrain's character using height maps)
  • Zoom-function (four different zoom levels for an optimal editing of big and small scenarios)
  • Automatic and manual adaptation of the size of the desktop
  • Placing of tiles using "drag and drop"
  • Turning the tiles (in 90°- steps)
  • Reset of tiles (to their initial state)
  • Adaptation of the tile edges
    • Terrain
    • Courses of the streets
  • Filling up gaps
    • Generating tiles (creation of a naturally appearing terrain and texturing)

Download

  • Download TileEditor (.zip) (1,68 MB)
  • Download ScenarioEditor (.zip) (4,00 MB)
  • Download Thesis (.pdf) (26,3 MB)
  • Download TileEditor documentation (.pdf) (5,1 MB)
  • Download ScenarioEditor documentation (.pdf) (0,86 MB)
  • Download Presentation (.pps) (22,1 MB)
  • Download Demo Video(.mpg) (11,6 MB)
Last modified: 1st Feb 2010, 2.38 PM
Author: Dipl.-Medieninf. cand. Johannes Richter