Refine
Document Type
- Bachelor Thesis (2)
- Diploma Thesis (1)
- Doctoral Thesis (1)
- Master's Thesis (1)
Keywords
- Raytracing (5) (remove)
Institute
This thesis presents an approach to optimizing the computation of soft shadows from area lights. The light source is sampled uniformly by traversing shadow rays as packets through an N-tree. This data structure stores an additional line space for every node. A line space stores precomputed information about geometry inside of shafts from one to another side of the node. This visibility information is used to terminate a ray. Additionally the graphics processing unit (short GPU) is used to speed up the computations through parallelism. The scene is rendered with OpenGL and the shadow value is computed on the GPU for each pixel. Evaluating the implementation shows a performance gain of 86% by comparison to the CPU, if using the GPU implementation. Using the line space instead of triangle intersections also increases the performance. The implementation provides good scaling with an increasing amount of triangles and has no visual disadvantages for many rays.
Ray tracing acceleration through dedicated data structures has long been an important topic in computer graphics. In general, two different approaches are proposed: spatial and directional acceleration structures. The thesis at hand presents an innovative combined approach of these two areas, which enables a further acceleration of the tracing process of rays. State-of-the-art spatial data structures are used as base structures and enhanced by precomputed directional visibility information based on a sophisticated abstraction concept of shafts within an original structure, the Line Space.
In the course of the work, novel approaches for the precomputed visibility information are proposed: a binary value that indicates whether a shaft is empty or non-empty as well as a single candidate approximating the actual surface as a representative candidate. It is shown how the binary value is used in a simple but effective empty space skipping technique, which allows a performance gain in ray tracing of up to 40% compared to the pure base data structure, regardless of the spatial structure that is actually used. In addition, it is shown that this binary visibility information provides a fast technique for calculating soft shadows and ambient occlusion based on blocker approximations. Although the results contain a certain inaccuracy error, which is also presented and discussed, it is shown that a further tracing acceleration of up to 300% compared to the base structure is achieved. As an extension of this approach, the representative candidate precomputation is demonstrated, which is used to accelerate the indirect lighting computation, resulting in a significant performance gain at the expense of image errors. Finally, techniques based on two-stage structures and a usage heuristic are proposed and evaluated. These reduce memory consumption and approximation errors while maintaining the performance gain and also enabling further possibilities with object instancing and rigid transformations.
All performance and memory values as well as the approximation errors are measured, presented and discussed. Overall, the Line Space is shown to result in a considerate improvement in ray tracing performance at the cost of higher memory consumption and possible approximation errors. The presented findings thus demonstrate the capability of the combined approach and enable further possibilities for future work.
Die Computergrafik befasst sich mit der Erzeugung von virtuellen Bildern. Im Bereich der 3D-Computergrafik werden die dargestellten Objekte im dreidimensionalen Raum beschrieben. Dazu bedient man sich diverser Generierungsverfahren. Einer dieser so genannten Renderer ist das Raytracing-Verfahren. Es erfreut sich in der Computergrafik wegen der erreichten Bildqualität bei ueberschaubarer Komplexität großer Beliebtheit. Dabei wird versucht, immer realistischere Ergebnisse zu erreichen. In der Vergangenheit wurde Raytracing deswegen beispielsweise um globale Beleuchtungsmodelle oder um reflektierende beziehungsweise um transparente Objekte erweitert. Dabei wurde aber ein wichtiger Punkt häufig vernachlässigt, welcher ebenfalls den Grad an Realismus deutlich erhöhen kann: die Kamera. Meistens geht man auch heutzutage von einem vereinfachten Lochkameramodell aus. Aus diesem Grund genügen solche Modelle nicht den Ansprüchen physikalisch-korrekter Renderingverfahren. Eine wirklich umfassend korrekte Abbildung von Szenen darf also nicht vernachlässigen, dass ein generiertes Bild durch ein Linsensystem noch einmal entscheidend beeinflusst wird. In dieser Arbeit wird deswegen ein physikalisch korrektes Kameramodell vorgestellt, welches die geometrischen Eigenschaften des Linsensystems berücksichtigt und die Belichtung auf der Bildebene korrekt berechnet.
This thesis presents the use of a local linespace data structure, which is designed and implemented on the basis of an existing GPU-based raytra- cer with a global linespace data structure. For each scene object, an N-tree is generated whose nodes each have a linespace. This saves informations about existing geometry in its shafts. A shaft represents a volume between two faces on the outside of the node. This allows a faster skipping of em- pty spaces during raytracing. Identical objects can access already calcula- ted linespaces, which can reduce the memory requirement by up to 94.13% and the initialization time of the datastructure by up to 97.15%. Due to the local access possibilities dynamic scenes can be visualized. An increase in quality can also be observed.
One of the fundamental decisions during the development of any system is the representation of data. In computer graphics, objects are usually represented as sets of triangles. There are however many different variants with their own strengths and weaknesses. This thesis will explore distancefields as a representation for objects. Distancefields are functions, which map every point in space to the distance to the closest surface point. While this description is very simple, a number of interesting properties can be derived, allowing for a multitude of shapes, operations and effects. An overview of the necessary background and methods is given. Furthermore, some extended or new approaches are presented, such as displaying implicit surfaces, approximating indirect illumination or implementing a GPU tracer.