Abstract
In this thesis, we investigate how to utilize the modern Graphics Process Units (GPU) to generate high quality images and animations in real-time rendering speed for the following three applications: “Hardware Accelerated Elliptical Weighted Average (EWA) Surface Splatting”, “GPU-Based Ocean Rendering”, and “Subpixel Reconstruction Antialiasing for Ray Tracing”. Although modern GPUs have great computational power as well as high memory bandwidth, they still require some tweaking to transform the problems into graphics-like shader programs that operate on textures and frame buffers to port the applications on GPUs listed above. In the work of hardware accelerated EWA Surface Splatting, we look into the performance-quality trade-off between previous methods that use a vertex-based rasterization setup and the object-space EWA splatting that uses a quad-based rasterization setup. Our main contributions are the addition of accurate low-pass filtering to the vertex-based method and the modification of the (screen-space) bounding box setup that avoids improper clipping of the splat ellipses. The end result is a vertex-based surface splatting method that produces rendering quality indistinguishable from quad-based object-space EWA splatting, especially in terms of perspective accuracy and anti-aliasing. We achieve better rendering quality than other GPU-accelerated surface splatting methods with little impact to rendering speed, especially in high-resolution display. In the work of real-time ocean rendering, we present an efficient algorithm using the newest features of GPU. It differs from previous works in three aspects: adaptive GPU-based ocean surface tessellation, sophisticated optical effects for shallow water, and effects of spray and spume for oscillating waves. Our tessellation scheme not only offers easier level-of-detail (LOD) control but also avoids the loading of vertex attributes from CPU to GPU at each frame. The object-space wave sampling approach allows us to produce sophisticated optical effects for shallow water and to implement a state-preserving particle system for simulating spray motions interactively. In the work of subpixel reconstruction antialiasing for ray tracing, we introduce a practical antialiasing approach for interactive ray tracing and path tracing. Our method is inspired by the Subpixel Reconstruction Antialiasing (SRAA) method which separates the shading from visibility and geometry sampling to produce antialiased images at reduced cost. While SRAA is designed for GPU-based deferred shading renderer, we extend the concept to ray-tracing based applications. We take a hybrid rendering approach in which we add a GPU rasterization step to produce the depth and normal buffers with subpixel resolution. By utilizing those extra buffers, we are able to produce antialiased ray traced images without incurring performance penalty of tracing additional primary rays. Furthermore, we go beyond the primary rays and achieve antialiasing for shadow rays and reflective rays as well.