Alembic is an open computer graphics interchange framework. Alembic distills complex, animated scenes into a non-procedural, application-independent set of baked geometric results. This ‘distillation’ of scenes into baked geometry is exactly analogous to the distillation of lighting and rendering scenes into rendered image data.

Alembic is focused on efficiently storing the computed results of complex procedural geometric constructions. It is very specifically NOT concerned with storing the complex dependency graph of procedural tools used to create the computed results. For example, Alembic will efficiently store the animated vertex positions and animated transforms that result from an arbitrarily complex animation and simulation process which could involve enveloping, corrective shapes, volume-preserving simulations, cloth and flesh simulations, and so on. Alembic will not attempt to store a representation of the network of computations (rigs, basically) which are required to produce the final, animated vertex positions and animated transforms.

The production ready version of Alembic 1.0 was announced at Siggraph 2011 and released on August 9th, 2011 by Lucasfilm and Sony Pictures Imageworks with support from major vendors including Autodesk, Side Effects Software, The Foundry, Luxology, Pixar’s Renderman and NVidia.

Home Page: http://alembic.io/
Project Page: http://code.google.com/p/alembic/
Language: C++, Python
Platform: Linux, OSX, Windows
License: New BSD License
Sponsor: Sony Pictures Imageworks, Lucasfilm

Pimath is a boost.python binding for the IMath library that is part of the OpenEXR project.

Pimath binds the Imath API as closely as possible. Each hpp file contains a comment block at the top, highlighting cases where the bindings differ and why. Common reasons include:

Making a function signature more Pythonic;
Removing slightly optimised functions (where the overhead of python itself would vastly outweigh the optimisation);
Removing API redundancy;
Changing misleading Imath function names (rare).
Nice things about pimath:

It provides integral template instantiations where possible – eg V3i;
It provides ‘half’ template instantiations where possible – eg M33h;
It provides to- and from-python conversion for the Imath ‘half’ type;
It spreads type instantiation over several cpp files for quick multithreaded compiling.
It’s organised as a mirror image of Imath – it has corresponding headers, and a free function in Imath is a free function in pimath. If you know Imath, you know pimath.

Project Page: http://code.google.com/p/pimath/
Language: C++, python
Platform: All
License: New BSD Licence
Sponsor: Dr. D. Studios

Arithmetic expressions appear in almost every animation system ever created. Being able to embed an expression language in a piece of custom software allows an amazing degree of artistic freedom. At Disney artists have enjoyed using expressions because they allow just enough flexibility without being overwhelming to non-programmer users. Developers have enjoyed them too for quick prototyping and deployment of fixes to production needs.

History

At Disney there have been various expression languages. SeExpr started as a language for our procedural geometry instancing tool, XGen. Work was done to generalize it into something that could be used in other contexts. Later it was integrated into paint3d, our texture painting facility, which opened the door to procedural synthesis. More recently, we have integrated it as a way of defining procedural controls to physical dynamical simulations and render time particle instancing.

Expressions can be seen as a way of allowing customization of inner loops. This is contrast to scripting which is mostly aimed at gluing large parts of code base together. So in this sense, C++ forms the center of your application, python could be used to put pieces of it together, and SeExpr is used to customize tight inner loops.

Major Features

  • Arithmetic expression of scalar/vector types
  • Large library of builtin functions
  • Extensible variables and functions (including with DSOs)
  • Simple to embed in any program

Home Page: http://www.disneyanimation.com/technology/seexpr.html
Project Page: http://github.com/wdas/seexpr/
Language: C++
Platform: Linux, OSX, Windows
License: New BSD
Sponsor: Walt Disney Animation Studios

Afanasy is a free and open source tool to control remote computing. You can compute anything quicker using a render farm – remote computers connected by a network. Afanasy is designed for computer graphics (3d rendering and 2d compositing) parallel calculation. It can compute different frames (or even parts of frames) on several computers simultaneously.

Afanasy provides render farm monitoring. It is very important to watch computers resources during the render process. You can see what kind of resource (CPU, memory, network etc.) is needed to render. It is very useful to know what your farm hosts are doing.

The Afanasy engine simply runs different command lines on hosts and controls running processes. You can use Afanasy to parallel calculate anything you can describe (split) through command lines.

Home Page: http://cgru.sourceforge.net/afanasy/doc/afanasy.html
Project Page: http://sourceforge.net/projects/cgru/
Language: C++, python
Platform: All
License: GPL

Particles are an important part of effects work, because they allow free-form information in 3D space. Unfortunately, there is no standard format for particles akin to Wavefront .obj. Most animation systems have their own proprietary particle formats. For example Maya uses the binary and ascii particle database formats .pdb and .pda file formats. Houdini uses the .geo and .bgeo geometry uber formats. Renderers typically have their own point cloud format such as RenderMan’s PTC format and Houdini’s .pc. All of these formats share a common theme. They allow particles to be iterated or indexed and associate a customizable set of attributes with them. The goal of Partio is to provide a unified interface akin to unified image libraries that makes it easier to load, save, and manipulate particle files.

Home Page: http://www.disneyanimation.com/technology/partio.html
Project Page: https://github.com/wdas/partio
Language: C++ Python
Platform: Linux, OSX, Windows
License: New BSD
Sponsor: Walt Disney Animation Studios