|
 
 
 
 
|
Low-Level
The low-level topics covered in this project are:
- Architecture/Integration
This work package covers the development coordination and to ensure the
integratability of the results into a coherent whole. It also includes
cross-package development efforts, e.g. the common mesh structure.
- Multi-Threading
The efficient and simple to use support of multiple independent threads working
on the scenegraph is one of the central problems of a modern rendering system.
This work package develops mechanisms to efficiently divide and synchronize the
data used by different threads.
- Traversal / Rendering Backend
Traversing the graph is a central problem of a scenegraph system to fulfill
different tasks. This package will define und create a mechanism which supports
easy extensibility to allow adding new traversals dynamically as well as fine
granularity to easily replace parts of existing tasks with new designs.
Furthermore the multi-thread capabilities of the system are to be employed to
distribute different connected traversal tasks to different threads.
One of the if not THE central tasks of a scenegraph system is converting the
data stored in the graph into an image. Modern algorithms for realtime rendering
need more than a simple traversal to do that. Multipass methods needs multiple
runs over parts of the graph, other methods need tmporary images that have to be
generated before the main image, and to efficiently use the graphics hardware
all the visible objects have to be sorted according to their OpenGL state. A
simple traversal cannot fulfill these requirements. The approach followed here
will create a efficiently parsed and sorted temporary structure to hold that
data.
- State Handling
An important aspect of efficiently using graphics hardware using OpenGL is
the minimization of changes of the state of the chip, as this disrupts the
pipeline stages. In this work package mechanisms to minimize state changes are
developed, together with criteria to judge the impact of the different state
changes on the performance of the system.
- Material Abstraktion
Modern graphics hardware supports highly advanced features to render
high-quality surfaces. Unfortunately the different systems support different
methods of doing that. The goal of this work package is to provide a mechanism
that supports a simple und uniform interface for different shading methods that
can be mapped to available systems.
- Multipipe Handling/Clustering
To drive multi-screen immersive projection systems multiple projectors need to
be powered by different video streams. These can be created by multiple graphics
boards in a single system, as delivered by multiple vendors like sgi, SUN and
HP. This work package will design and implement the necessary infrastructure to
support these kinds of systems.
A new trend uses multiple independent standard PCs to drive these systems. To
support these the scenegraph has to be distributed across multiple machines. The
support for this distribution is also developed in this package.
|