

Dave Bock makes it look easy. Like all people who know their jobs well,
he can zip through the many steps required to produce a high-quality, highly
detailed visualization. For a beginner, it takes time to understand
visualization paradigms and to learn the software. But it isn't magic
and it isn't beyond the comprehension of the "average" computational
researcher.
Traditionally, high-fidelity, production-oriented visualization imagery
has been generated by specialists like Bock who are experienced in working
with data and visualization primitives using a variety of
visualization software tools, custom programs, scripts, converters,
and commercial rendering software. Bock is so good at his work that,
in addition to his NCSA job as a visualization specialist, he is an
instructor of computer graphics at Parkland College in Champaign, IL.
Recently he was interviewed by Computer Graphics World
about some new techniques he developed to
produce visualizations using
Pixar's RenderMan
software (generally used for
entertainment applications), the Blue Moon Rendering Toolkit
(BMRT), and his
home-grown software. That article did not delve into the
many-step production process Bock follows to produce images. Fortunately,
Bock's
own web pages provide details about the process, affording non-specialists
a chance to learn more.
Bock's new techniques, termed "visualization shading," leverages
the same technology used by Hollywood artists for special effects and
animated features such as Toy Story and Bug's Life. Using Pixar's
RenderMan software, Bock encapsulates visualization algorithms used to
transform data into modules, called shaders, used by Pixar's
high-quality rendering software. In this manner, data are rendered or
shaded directly. In typical visualization systems, many mapping
routines generate intermediate geometry that is rendered by a
separate, closed hardware or software rendering engine for the final
imagery. By encapsulating the mapping algorithm within a shader, data
are directly mapped to the final image thereby removing the necessity
for intermediate geometry.
This process of "shading the data" lends
itself well to exploring, developing, and accurately combining
representation techniques bringing further insight and understanding
to the underlying data. More recently, RenderMan's new C++ shadeop
functionality has provided the capability to develop more elegant data
shaders using previously written C++ classes Bock has developed to perform
general data management, filtering, and visualization mapping methods.
Motivation for Bock's work is to provide scientists with the ability
to create sophisticated, high-quality scientific imagery without the
need for a dedicated visualization specialist or extensive training in
high-end animation/rendering software.
In addition to the shaders, Bock has also been building
front-end system components whereby scientists can read in data,
investigate, and render with various visualization shaders. Such a
system manages these processes within a single easy-to-use tool
putting the power of this specialized procedure in the hands of the
scientists and researchers. This tool aims to bridge the gap
between interactive visualization and analysis systems and
sophisticated, commercial animation and rendering packages. His
enhancements manage these processes within a single relatively
easy-to-use tool that gives visualization know-how to scientists and
researchers, letting them investigate their own data.
Bock's goal is to make his front-end system components as well as
the many visual shaders available to the general science community
soon. He promises an announcment in an up-coming issue of
data link.
The process to follow to "do as Dave does" and render a complete image
from your dataset is not for the uninitiated. Review the process he followed
earlier this year when he collaborated with researchers from NCSA and
SUNY-Stony Brook to
visualize
colliding neutron stars.
Bock has collaborated
on
other
projects using these techniques, including
a method to ray-trace Adaptive Mesh Refinement (AMR) data sets implemented
as a RenderMan shader (title image and below left), a volumetric and geometric
representation of the electron
density distribution of the C60 (buckyball) molecule (right),
and rainwater distribution in an evolving thunderstorm simulation (paired and
middle images). His recent
buckyball rendering was featured on the
September cover
of Physics Today.
Bock and the other members of the
Visualization and Virtual Environment team
are interested in pushing the technology even further. If your research
offers challenges that might help them refine their techniques and tools,
contact Associate Director Polly Baker.