CSG Ray Tracing Revisited: Interactive Rendering of Massive Models Made of Non-planar Higher Order Primitives
GRAPP 2017. Proceedings
International Conference on Computer Graphics Theory and Applications (GRAPP) <12, 2017, Porto, Portugal>
In many scientific and engineering areas, CAD models are constructed by combining simple primitives using Boolean set operations. Rendering such a dataset usually requires a preprocess, where the surface of the CAD model is approximated by an often highly complex triangle mesh. Real-time ray tracing provides an alternative to triangle rasterization as it allows for the direct visualization of (higher-order) solid and planar primitives without having to triangulate them. Additionally, Boolean compositing operations can be performed implicitly per ray, primitives have low storage requirements, and curved surfaces appear pixel-accurate. In this paper we demonstrate these properties using massive real-world CAD models.
Real-Time Parallel Streamsurface Computation
München, TU, Master Thesis, 2016
Streamsurfaces are one of the powerful visualization tools, which are used to gain insight into characteristics and features of flow fields. In practice, streamsurfaces are approximated by triangulating adjacent pairs of integral curves, originating from a seeding line. The generation of integral curves bears quite some similarities to ray tracing algorithms used in physically based renderers. Although, the techniques used in ray tracing may not have good performance in the streamline computation context due to their different computational nature, they can be optimized for streamline computation by introducing some modifications. In this master thesis, I present my work on accurate streamsurface computation and rendering in real-time, by exploiting the scalability and portability features of parallel architectures in heterogeneous computing, and utilizing concepts from physically based rendering. To improve the efficiency, I use a scheduler to divide the streamsurface computation and rendering tasks on different devices proportional to their computation powers. Additionally, I apply acceleration structures and the concepts of caching to improve the efficiency and utilization of streamsurface generation on modern GPUs and CPUs to achieve real-time results. Furthermore, the possible impact of applying ray-packing and ray-sorting to the streamline computation is investigated.