Rendering Three-Dimensional Scenes with Tetrahedral Meshes
Project Description
We propose a framework aimed to render three dimensional (3D) scenes in a fast and accurate manner. As opposed to the existing popular rendering approaches, the proposed approach utilizes the tetrahedral mesh of the empty space between the objects in the 3D scene to be rendered.
Computer-aided visualization has many uses in architecture, science, military and entertainment. Realistic visualization techniques have high computational cost. Therefore, rendering of complex scenes in a realistic fashion takes considerable amount of computation time. Increasing the performance of the rendering algorithms has the following benefits. (i) Designers can get quick feedback and see the result of their work in production quality in a short amount of time. This reduces the iteration times and the overall production cost. (ii) Fast rendering systems can be used in real-time applications. Real-time visualization is critical for many applications in different domains, such as entertainment industry (game development, animation and movie production) and military. (iii) A system that works in real-time can provide higher quality visuals and render complex scenes if the rendering performance increases. (iv) Fast rendering algorithms reduce the energy spent per rendering task, thus has a positive economic impact.
The proposed approach utilizes tetrahedral mesh as an acceleration structure for rendering. Ray-tracing is performed directly on the tetrahedral mesh built using the empty space between objects in the scene (see Figure 1). Tetrahedral meshes are adaptive to the scene geometry and do not need to be rebuilt under certain type of deformations. Tetrahedral meshes are considered as an alternative acceleration structure in the literature; however, slow traversal methods and complex tetrahedral mesh update procedures on dynamic scenes make them inferior against the-state-of-the-art acceleration structures. In this project, we will explore new methods for fast and general purpose rendering by addressing the negative aspects of this acceleration structure. Research and development will be carried on the topic of rendering and tetrahedral meshes. We will develop methods for fast and accurate traversal over tetrahedral meshes and ray-packet traversal. We will use a two-dimensional approach to reduce the computational cost of ray-tetrahedron intersection by projecting the ray and the tetrahedron to the two-dimensional space (see Figure 2).
These methods will then be used to speed-up the global illumination approaches. The proposed methods will be parallelized using CPU and GPU. In order to further increase the rendering performance, we will investigate different data structures and data layouts. We will develop methods to update tetrahedral meshes in an efficient manner to support dynamic scenes. We will develop efficient methods to preserve vertex attributes during tetrahedralization. We will compare the proposed methods with the-state-of-the-art methods in terms of the computational cost. We will develop a user-friendly system that supports the proposed functionality. Finally, we will develop a module that will detect and fix mesh errors and integrate it to the system in order to increase the flexibility of the system.
The proposed framework will be original in the following aspects: a fast rendering technique, supporting static and dynamic scenes, supporting general purpose rendering operations using tetrahedral meshes, and a user-friendly interface that will provide the proposed features.
We will develop a set of algorithms and methods for fast rendering and a user-friendly software system including these features. This software will be useful for researchers, application developers and content developers working in various application domains, such as entertainment industry and the military sector. The proposed methods and algorithms will result in scientific publications in prestigious international journals and conferences in the area of computer graphics and visualization.