“Building Highly Parallel Character Rigs” by Zimmermann, Helms and Ochs

  • ©Guido Zimmermann, Robert Helms, and Kevin Ochs




    Building Highly Parallel Character Rigs

Session/Category Title: Rigging the Outcome



    DreamWorks Animation introduced a new parallel graph system, LibEE [WATT and HAMPTON 2012] as the engine for our next generation in-house animation tool. It became clear that we needed to make changes in how we set up our character rigs for production.

    The new graph engine has two types of multithreading: first individual nodes are internally multithreaded, second the graph itself can run nodes and groups of nodes in parallel. The second type in particular turns out to give the greatest performance gains for the evaluation of our characters. It is also the part that is determined by the construction of the rig itself. To take full advantage of this new system we needed to restructure our characters by enabling different parts of the character to evaluate in parallel as much as possible.

    This talk focuses on how we build our character rigs to improve graph performance, including changes to workflows and strategies required by our transition from serial to parallel graph structures. Because our animation software engine is the first in the industry to have a parallelized graph, many of these changes are novel, and some were unexpected.

ACM Digital Library Publication:

Overview Page: