Ordered by Date

We present three useful parameterizations of a BSSRDF model based on empirical reflectance profiles.
The model is very simple, but with the appropriate parameterization it matches brute-force Monte Carlo
references better than state-of-the-art physically-based models (quantized diffusion and photon beam diffusion) for many common materials. Each reflectance profile is a sum of ... more

Subspace deformable body simulations can be very fast, but can behave unrealistically when behaviors outside the prescribed subspace, such as novel external collisions, are encountered. We address this limitation by presenting a fast, flexible new method that allows full space computation to be activated in the neighborhood of novel events ... more

We present an implementation of the [Marschner et al. 2003] model for importance sampling light reflected from hair. The implemen- tation makes use of a version of Adaptive Importance Sampling (AIS), specialized to fit easily sampled distributions to BCSDFs. Our model is novel among importance sampling implementations in that it ... more

Sometimes, when 3D CG objects are viewed from a distance, a great deal of geometry can end up inside a single pixel. When this happens, full-sized facets, or pixels in a displacement map should play the role of traditional micro-facets. Here we describe how to alter traditional shading calculations to ... more

In this book, developers from the visual effects industry, including George ElKoura and Manuel Kraemer from Pixar, provide practical advice on multithreading techniques used in popular visual effects software. Concrete examples show how multithreading paradigms are applied to achieve high performance computation for visual effects in the challenging world ... more

This paper introduces a method for accurately computing the visible
contours of a smooth 3D surface for stylization. This is a
surprisingly difficult problem, and previous methods are prone to
topological errors, such as gaps in the outline. Our approach is to
generate, for each viewpoint, a new triangle mesh with contours that
are topologically-equivalent ... more

Importance sampling methods for ray tracing are numerous. One reason is due to the lack of a robust, quantitative method for comparison. This tech memo takes strides to provide a framework for comparing sampling methods on fair ground. We define a simple, mathematical notion of strictly preferring one method to ... more

We present a new approach to clothing simulation using low-dimensional linear subspaces with temporally adaptive bases. Our method exploits full-space simulation training data in order to construct a pool of low-dimensional bases distributed across pose space. For this purpose, we interpret the simulation data as offsets from a kinematic deformation ... more

Disney/Pixar's Brave is visually complex, containing fully clothed and articulated crowds characters, a forest full of vegetation, ruins littered with debris, and a full fledged castle. In fact, it is so complex that our previous methods to remove unnecessary geometry are no longer adequate in keeping the renders feasible.

We recently participated in the Siggraph 2013 Physically Based Shading course, with all notes and documents stored at http://blog.selfshadow.com/publications/s2013-shading-course. We provide here direct access to our own chapter, describing the Physically Based System we designed at Pixar (on top of RenderMan) for the movie Monsters University and the short film ... more

Artistic simulation of hair presents many challenges - ranging from incorporating artistic control to dealing with extreme motions of characters. Additionally, in a production environment, the simulation needs to be fast and results need to be usable "out of the box" (without extensive parameter modifications) in order to produce ... more

Available in the Proceedings of the Symposium on Computer Animation 2013.

Skilled artists, using traditional media or modern computer painting
tools, can create a variety of expressive styles that are very
appealing in still images, but have been unsuitable for animation.
The key difficulty is that existing techniques lack adequate
temporal coherence to animate these styles effectively.
Here we augment the ... more

We present a new technique for generating sets of stratified samples on the unit square. Though based on jittering, this method is competitive with low-discrepancy quasi-Monte Carlo sequences while avoiding some of the structured artifacts to which they are prone. An efficient implementation is provided that allows repeatable, ... more

We present a method for creating and sampling volumetric light sources directly using the volumetric data, obtaining high quality results with any mirror, glossy or diffuse objects, and integrating with any global illumination framework.

We propose a novel 3D wavelet based tone mapping framework for high dynamic range videos. Still image tone mapping methods can be applied to videos in a frame by frame fashion, but they often exhibit haloing artifacts and do not guarantee temporal coherence, resulting in flickering. Directly extending wavelet analysis/synthesis ... more

Current multitouch frameworks require application developers to write recognition code for custom gestures; this code is split across multiple event-handling callbacks. As the number of custom gestures grows it becomes increasingly difficult to 1) know if new gestures will conflict with existing gestures, and 2) know how to extend existing ... more

We present a novel method for high-performance GPU-based rendering of Catmull-Clark subdivision surfaces. Unlike previous methods, our algorithm computes the true limit surface up to machine precision, and is capable of rendering surfaces that conform to the full RenderMan specification for Catmull-Clark surfaces. Specifically, our algorithm can accommodate base meshes ... more

Hair and fur are increasingly important visual features in
production rendering, and physically-based light scattering models
are now commonly used. In this paper, we enable efficient Monte
Carlo rendering of reflections from hair fibers by describing a
simple and practical importance sampling strategy for the reflection
term in the Marschner hair model. Our ... more

A wide variety of non-photorealistic rendering techniques make use of random variation in the placement or appearance of primitives. In order to avoid the "shower-door" effect, this random variation should move with the objects in the scene. Here we present coherent noise tailored to this purpose. We compute the coherent ... more

Set construction is the process of selecting and positioning
virtual geometric objects to create a virtual environment
used in a computer-animated film. Set construction artists
often have a clear mental image of the set composition, but
find it tedious to build their intended sets with current mouse
and keyboard interfaces. We investigate whether multitouch
input can ... more

Local image histograms contain a great deal of information
useful for applications in computer graphics, computer vision
and computational photography. Making use of that information
has been challenging because of the expense of computing histogram
properties over large neighborhoods. Efficient algorithms
exist for some specific computations like the bilateral filter,
but not others. ... more

Multitouch workstations support direct-touch, bimanual, and multifinger
interaction. Previous studies have separately examined the
benefits of these three interaction attributes over mouse-based interactions.
In contrast, we present an empirical user study that considers
these three interaction attributes together for a single task,
such that we can quantify and compare the performances of each attribute.
In our ... more

This technical memo describes a fast point-based method for
computing diffuse global illumination (color bleeding). The
computation is 4-10 times faster than ray tracing, uses less
memory, has no noise, and its run-time does not increase due to
displacement-mapped surfaces, complex shaders, or many complex light
sources. These properties make the method suitable ... more

Oscillatory motion is ubiquitous in computer graphics,
yet existing animation techniques are ill-suited to its authoring.
We introduce a new type of spline for this
purpose, known as a ``Wiggly Spline.'' The
spline generalizes traditional piecewise cubics
when its resonance and damping are set to zero, but
creates oscillatory animation when its resonance
and damping ... more

We propose a numerical method for modeling highly deformable nonlinear
incompressible solids that conserves the volume locally near
each node in a finite element mesh. Our method works with
arbitrary constitutive models, is applicable to both passive
and active materials (e.g. muscles), and works with simple
tetrahedra without the need for multiple quadrature points ... more

Detailed descriptions of the ray-tracing and photon-mapping algorithms
for rendering complex scenes with indirect illumination, caustics,
participating media, and subsurface scattering. The emphasis is on
the practical insight necessary to use and implement these algorithms
in production of high-quality image in movies, games, architecture, etc.

The passion for cooking and food are the central theme of Pixar's recent film - Ratatouille. This complex and multi-faceted problem posed many challenges that were solved using diverse computer graphics and production techniques. In this course we will comprehensively cover all aspects including modeling, dressing, shading, lighting and effects.

A particularly heavy effects sequence in the film Ratatouille depicts
a colony of rats fleeing their home and crossing a long narrow river
in several makeshift boats during a rainy afternoon. Nearly the entire
sequence was photographed inches above the ground from a s
perspective. Although this perspective provided a very interesting
point of view ... more

An illustration of Gusteau comes to life and introduces a new facet of the film Ratatouille. To do this, a technique was needed to convert
an animated 3D character into a 2D illustration. Existing renderman shaders based on normal and depth maps were difficult to control. Post processing per gprim id ... more

3d paint has long been one of the most expensive parts of rendering at Pixar. This proposal is for a new baking technique that would greatly reduce the run-time cost of 3d paint and require no changes to the existing workflow. The implementation makes heavy use of existing code, which ... more

In this paper we consider the problem of creating and controlling
volume deformations used to articulate characters for use
in high-end applications such as computer generated feature films.
We introduce a method we call harmonic coordinates
that significantly improves upon existing volume deformation
techniques. Our deformations are controlled using a topologically flexible
structure, called a cage, ... more

Many applications in Computer Graphics contain computationally
expensive calculations. These calculations are often performed at
many points to produce a full solution, even though the subspace of
reasonable solutions may be of a relatively low dimension. The
calculation of facial articulation and rendering of scenes with global
illumination are two example applications that ... more

He's fat. Enormously so. Essentially a clothed sphere. (A very deformable and complexly animated sphere, with legs, arms, and no neck.) For Ratatouille, creating dynamic costumes for every human character in the film required extensive development and innovation in Pixar's cloth pipeline, particularly for the character Gusteau. Modeling and shepherding ... more

Featuring plush rats, well-groomed humans, and a colony of rodents
numbering a thousand strong, Ratatouille had shots where the original
scene descriptions contained many hundreds of millions of hairs. To
make these shots renderable, we developed many new technologies to
optimize our RenderMan-based hair rendering pipeline, including
caching to speed up runtime sculpting, a technique ... more

In Disney/Pixar's Ratatouille, the creation of believable
cooking environments with all their complexity has been an important
element in presenting a rich world that helps draw the audience into
the story. Part of that complexity arises in the preparation of food
before cooking. To create complex animations of food in preparation,
we designed a system ... more

In Pixar's Ratatouille, a key story point involves a rat
being swept through the sewers of Paris, plummeting down waterfalls
and along steeply sloping tunnels, through a series of high-speed S-
bends which cause the torrent of water to bank up sharply on each
turn. Bringing ... more

In Pixar's Ratatouille a lot of scenes take place inside the kitchen where reflective surfaces like counter tops, stoves, pots and pans abound. Furthermore, these surfaces were often burnished or covered with dents, scratches or other displacements, which meant that the
reflections were soft and fuzzy. Physically accurate reflections are most ... more

From pouring sauces to sudsy sink water to violent sewer rapids, realistic animation of fluids presented interesting challenges in Ratatouille. The various fluid effects were simulated either using a physically-based solver or directly with generic particle systems.
Although the simulated particles move as a whole like a fluid, the number ... more

Creating the digital effects for cooking in Ratatouille posed a number
of unique challanges. First we had to adopt efficient methods for
simulating a wide variety of material behaviours. Second we needed to
direct our simulations in order to match the expressiveness of the
character's animation, e.g. forming specific shapes while the
character pounds a ... more

Contact is natural in the real world but often avoided in
3D animated features. Animators tend to make acting decisions that minimise
or avoid contact within and between their characters and the
world, and when apparent contact does occur, it can tend to feel
both "floaty" and unrealistic. "Ratatouille" called for dynamic,
tactile characters that ... more

Many renderers perform poorly on scenes that contain a lot of detailed geometry. The load on the renderer can be alleviated by simplification techniques, which create less expensive representations of geometry that is small on the screen. Current simplification techniques for high-quality surface-based rendering tend to work best with element ... more

It's difficult. In our society, rodents are usual portrayed in a negative
manner. To overcome this, every department on Ratatouille strove to
create appeal. In this sketch we will focus on how this was achieved
through articulation.

One of the major technical challenges in the animated film
Ratatouille was creating a believable rat colony. In numbers as high
as a thousand, these rats participated in highly complex and
coordinated behaviors ranging from chaotic swarming to gourmet
cooking. Often, the colony was ... more

This paper describes how we extended Pixar's RenderMan renderer with
ray tracing abilities. In order to ray trace highly complex scenes we
use multiresolution geometry and texture caches, and use ray
differentials to determine the appropriate resolution. With this
method we are able to efficiently ray trace scenes with much more
geometry and ... more

Available in Proceedings of the IEEE Symposium on Interactive Ray Tracing
2006, pages 1-6. IEEE 2006

We present a new method for the efficient simulation of large bodies
of water, especially effective when three-dimensional surface effects
are important. Similar to a traditional two-dimensional height field
approach, most of the water volume is represented by tall cells which
are assumed to have linear pressure profiles. In order to avoid the
limitations typically ... more

Accurate computation of depth-of-field effects in computer graphics
rendering is generally very time consuming, creating a problematic
workflow for film authoring. The computation is particularly
challenging because it depends on large-scale spatially-varying
filtering that must accurately respect complex boundaries. Here we
introduce an approximate depth-of-field computation that is good
enough for film preview, yet ... more

Global illumination provides important visual cues to an
animation, however its computational expense limits
its use in practice. In this paper, we present
an easy to implement technique for accelerating the computation of indirect
illumination for an animated sequence using stochastic ray
tracing. We begin by computing a quick but noisy
solution using a ... more

In computer cinematography, the process of lighting design involves
placing and configuring lights to define the visual appearance of
environments and to enhance story elements. This process is labor
intensive and time consuming, primarily because ... more

Noise functions are an essential building block for writing procedural
shaders in 3D computer graphics. The original noise function
introduced by Ken Perlin is still the most popular because it is
simple and fast, and many spectacular images have been made ... more

Hair is one of the crucial elements in representing believable digital
humans. It is one of the most challenging elements, too, due to the
large number of hairs on a human head, their length, and their complex
interactions. Hair appearance, in rendering and simulation, is
... more

Real-time graphics hardware continues to offer improved resources
for programmable vertex and fragment shaders. However, shader
programmers continue to write shaders that require more resources
than are available in the hardware. One way to virtualize the
resources necessary to run complex shaders is to partition the
... more

We introduce a tiled 3D MIP map representation of global illumination data.
The representation is an adaptive sparse octree with a "brick" at each octree node;
each brick consists of 8 cubed voxels with sparse irradiance values. The
representation is designed to enable efficient caching. Combined with ... more

Published as pp. 133-141 in the Proceedings of the Eurographics Symposium
on Rendering 2004, Eurographics/ACM, June 2004.

When rendering only directly visible objects, ray tracing a few
levels of specular reflection from large, low curvatures surfaces, and
ray tracing shadows from point-like light sources, the accessed geometry
is coherent and a geometry cache performs well. But in many other cases,
... more

Deficient cloth-to-cloth collision response is the most serious
shortcoming of most cloth simulation systems. Past approaches to cloth-cloth
collision have used history to decide wheter nearby cloth regions have interpenetrated.
The biggest pitfall of history-based methods is that an error anywhere along the way
can give rise to persistent tangles...This ... more

This survey gives an overview of the use of
importance, an adjoint of light, in speeding up rendering. The
importance of a light distribution indicates its contribution to the
region of most interest --- typically the directly visible parts of a
scene. Importance can therefore be used to concentrate global
illumination and ray ... more

Available as IEEE Transactions on Visualization and Computer Graphics (TVCG),
Volume 9, Number 3, pages 329-340. IEEE, July 2003.

We introduce deep shadow maps, a technique that produces fast, high-quality shadows for primitives such as hair, fur, and smoke. Unlike traditional shadow maps, which store a single depth at each pixel, deep shadow maps store a representation of the fractional visibility through a pixel at all possible depths. Deep ... more

The creation of believable and endearing characters in computer
graphics presents a number of technical challenges, including the
modeling, animation and rendering of complex shapes such as heads,
hands, and clothing. Traditionally, these shapes have been
modeled ... more

We present a system for animating an articulate figure using a
physical skeleton, or armature, connected to a workstation. The
skeleton is covered with sensors that monitor the orientations of
the joints and send this information to the computer via
custom-built hardware. ... more

We describe an efficient method for constructing a smooth
surface that interpolates the vertices of a mesh of arbitrary
topological type. Normal vectors can also be interpolated at
an arbitrary subset of the vertices. The method improves
on existing interpolation techniques in that it is fast, robust
and general.

We describe and demonstrate an algorithm that takes as input an
unorganized set of points x1,...,xn in R3 on or near an unknown
manifold M, and produces as output a simplicial surface that
approximates M. Neither the topology, the presence of boundaries, nor
the geometry of M are assumed to be known in advance ... more

Texture On Demand (TOD) is a technique for organizing large amounts of
stored texture data in disk files and accessing it efficiently. Simply
reading entire texture images into memory is not a good solution for
real memory systems or for virtual memory systems. Texture data should be
read from disk files only on ... more

We present a solution to the aliasing problem for shadow algorithms that use
depth maps. The solution is based on a new filtering technique called percentage
closer filtering. In addition to antialiasing, the improved algorithm provides
soft shadow boundaries that resemble penumbrae. We describe ... more

An architecture is presented for fast high-quality rendering of
complex images. All objects are reduced to common world-space geometric entities
called micropolygons, and all of the shading and visibility calculations operate
on these micropolygons. Each type of calculation is performed in a coordinate
system that is ... more

Ray tracing, ray casting, and other forms of point sampling are
important techniques in computer graphics, but their usefulness has been
undermined by aliasing artifacts. In this paper it is shown that these
artifacts are not an inherent part of point sampling, but a consequence
of ... more

Available in ACM Transactions on Graphics, Volume 6, Number 1, January 1996.

Ray tracing is one of the most elegant techniques in
computer graphics. Many phenomena that are difficult or impossible with
other techniques are simple with ray tracing, including shadows, reflections,
and refracted light. Ray directions, however, have been determined precisely,
and this had limited the capabilities of ray tracing. By ... more

Most computer graphics pictures have been computed all at once, so that
the rendering program takes care of all computations relating to the overlap
of objects. There are several applications, however, where elements must be
rendered separately, relying on compositing techniques for the anti-aliased
accumulation of the full image. This ... more

Shading is an important part of computer imagery, but shaders have been based on fixed
models to which all surfaces must conform. As computer imagery becomes more
sophisticated, surfaces have more complex shading characteristics and thus require a less
rigid shading model. This paper presents a flexible tree-structured shading model ... more

A new reflectance model for rendering computer sythesized images is presented.
The model accounts for the relative brightness of different materials and
light sources in the same scene. It describes the directional distribution
of the reflected light and a color shift that occurs as ... more