Faculty: Prof. Morgan McGuire Graphics Lab: TPL013

Computational Graphics is the science of enabling visual communication through computation. It is used in film, video games, medical imaging, engineering, and machine vision.

Williams has a world-class research program in computer graphics and offers several related undergraduate courses for students of all interests and abilities.

Summer 2014 Graphics Lab members, in raster order: Dan Evangelakos '15, Prof. Morgan McGuire, Sam Donow '16, Mike Mara (NVIDIA) '12, Kelly Wang '16, and Jamie Lesser '17


Our Latest Research Results   [All Papers...]

Efficient GPU Screen-Space Ray Tracing, McGuire and Mara, JCGT 2014

We present an efficient GPU solution for screen-space 3D ray tracing against a depth buffer by adapting the perspective-correct DDA line rasterization algorithm. Compared to linear ray marching, this ensures sampling at a contiguous set of pixels and no oversampling. This paper provides for the first time full implementation details of a method that has been proven in production of recent major game titles. After explaining the optimizations, we then extend the method to support multiple depth layers for robustness. We include GLSL code and examples of pixel-shader ray tracing for several applications.

Fast Global Illumination Approximations on Deep G-Buffers, Mara, McGuire, Nowrouzezahrai, and Luebke, NVIDIA Technical Report, 2014

We describe a method that can produce two-layer G-buffers in a single pass over geometry on a GPU and guarantee a minimum depth separation between them. We then apply this to computing robust ambient obscurance, radiosity, and specular reflections in screen-space in real time for complex scenes like San Miguel.

A Fast and Stable Feature-Aware Motion Blur Filter, Guertin, McGuire, and Nowrouzezahrai, ACM SIGGRAPH/Eurographics High Performance Graphics 2014

High-quality motion blur is an increasingly important and pervasive effect in interactive graphics that, even in the context of offline rendering, is often approximated using a post process. Recent motion blur post-process filters (e.g., [MHBO12, Sou13]) efficiently generate plausible results suitable for modern interactive rendering pipelines. However, these approaches may produce distracting artifacts, for instance, when different motions overlap in depth or when both large- and fine-scale features undergo motion. We address these artifacts with a more robust sampling and filtering scheme that incurs only small additional runtime cost. We render plausible, temporally-coherent motion blur on several complex animation sequences, all in just 3ms at a resolution 1280x720. Moreover, our filter is designed to integrate seamlessly with post-process anti-aliasing and depth of field.

A Survey of Efficient Representations for Independent Unit Vectors, Cigolle, Donow, Evangelakos, Mara, McGuire, and Meyer, JCGT, 2014

The bandwidth cost and memory footprint of vector buffers are limiting factors for GPU rendering in many applications. This article surveys time- and space-efficient representations for the important case of non-register, in-core, statistically independent unit vectors, with emphasis on GPU encoding and decoding. These representations are appropriate for unit vectors in a geometry buffer or attribute stream--where no correlation between adjacent vectors is easily available--or for those in a normal map where quality higher than that of DXN is required. We do not address out-of-core and register storage vectors because they favor minimum-space and maximum-speed alternatives, respectively. We evaluate precision and its qualitative impact across these techniques and give CPU reference implementations. For those methods with good quality and reasonable performance, we provide optimized GLSL GPU implementations of encoding and decoding.

Weighted Blended Order-Independent Transparency, McGuire and Bavoil, JCGT, 2013
I3D'14 Best Presentation Award

We present a new method for rendering scenes with complex transparency that works on a wide range of existing hardware and consumes low bandwidth compared to alternative order-independent approaches.

Plausible Blinn-Phong Reflection of Standard Cube MIP-Maps, McGuire, Evangelakos, Wilcox, Donow, and Mara, Technical Report, 2013

We describe the technique used in the G3D Innovation Engine 9.00 to produce reasonable real-time environment lighting. It adds two lines of code to a pixel shader to reasonably ap- proximate Lambertian and Blinn-Phong glossy reflection of a standard cube map environment with a MIP-chain without preprocessing. That is, we combine Blinn’s BSDF with Blinn’s en- vironment mapping in a modern physically-based way.

All Papers...