Multi-scale Visualization of Molecular Architecture Using Real-Time Ambient Occlusion in Sculptor

The modeling of large biomolecular assemblies relies on an efficient rendering of their hierarchical architecture across a wide range of spatial level of detail. We describe a paradigm shift currently under way in computer graphics towards the use of more realistic global illumination models, and we apply the so-called ambient occlusion approach to our open-source multi-scale modeling program, Sculptor. While there are many other higher quality global illumination approaches going all the way up to full GPU-accelerated ray tracing, they do not provide size-specificity of the features they shade. Ambient occlusion is an aspect of global lighting that offers great visual benefits and powerful user customization. By estimating how other molecular shape features affect the reception of light at some surface point, it effectively simulates indirect shadowing. This effect occurs between molecular surfaces that are close to each other, or in pockets such as protein or ligand binding sites. By adding ambient occlusion, large macromolecular systems look much more natural, and the perception of characteristic surface features is strongly enhanced. In this work, we present a real-time implementation of screen space ambient occlusion that delivers realistic cues about tunable spatial scale characteristics of macromolecular architecture. Heretofore, the visualization of large biomolecular systems, comprising e.g. hundreds of thousands of atoms or Mega-Dalton size electron microscopy maps, did not take into account the length scales of interest or the spatial resolution of the data. Our approach has been uniquely customized with shading that is tuned for pockets and cavities of a user-defined size, making it useful for visualizing molecular features at multiple scales of interest. This is a feature that none of the conventional ambient occlusion approaches provide. Actual Sculptor screen shots illustrate how our implementation supports the size-dependent rendering of molecular surface features.


Online Technical Literature
In the main text we cited publications in printed journals or proceedings. However, given the technical nature of the work, much recent progress has been published online. We recommend that interested readers should extend their literature search to the following web sites for a more comprehensive view of prior work: • [1] is the molecular graphics documentation of the CCP4 suite of programs, with information specific to lighting, shadows, and shaders.
• [2] describes various 3D navigation and modeling tools for cellular biology by the Life Explorer Initiative.
• [3] describes the chemlab.graphics package. The purpose of the package is to provide a solid library to develop 3D applications to display chemical data in a flexible way.
• [4] shows usage examples of the open-source general packing algorithm autoPACK running in the molecular graphics package PMV.
shows an SSAO-based application of PMV in augmented reality.
• [6] highlights UnityMol, which uses the Unity3D game engine to create a molecular viewer and serious games.
We thank the anonymous reviewers for suggesting some of these sites.
To assess the impact of our implementation of SSAO on rendering speed, we conducted tests on various hardware platforms. The performance of GPUs and CPUs varies widely among computers in the field today, since computers are replaced less frequently now than they were a decade ago. We first tested the performance on an older, low-end system (Athlon X2 / GeForce 6600LE) to ensure backward compatibility for a wide range of users. Table 1 shows how computing time scales directly with the number of pixels covered. With the line-based method, interactive frame rates on the low end system are guaranteed even with a model that covers the entire screen area. For practical purposes, on standard definition displays and older graphics cards one can assume that 0.5 million is an upper bound on the number of pixels covered by the molecule. (Models are typically not displayed full screen, and controls and window with settings are opened next to the model.) Tests were performed on an Athlon X2 / GeForce 6600LE system.
Next, we tested the method on a classic mid-range system (Core 2 Duo 3GHz / GeForce8800GTX) that was connected to two projectors for stereoscopic rendering at full screen (0.79 million pixels per projector). Intel's Core 2 Duo chips were released way back in 2006, but they still perform well today in video game applications [10]. The point-based method required only 6 milliseconds compute time, and the line-based method only 2 milliseconds. Since two images for each frame were computed, these values must be doubled. This allowed for about 80 frames per second with the point-based sampling, and up to about 250 frames per second with the line-based method using stereoscopic rendering.
On a more recent mid-range system with a GeForce GTX295 graphics card, the impact on rendering speed was no longer measurable, even on a highdefinition screen with fully occupied 1.9 million pixels.
In summary, the performance penalty was negligible in all but the oldest systems we tested. We expect our implementation to impose no significant overhead on any current or future graphics systems.