Archives for posts with tag: simulation

Dynamica is a plug-in for Maya that provides an interface to the Bullet rigid body engine. Bullet was originally created to simulate many rigid bodies quickly in a game context, but this plug-in helps extend its usefulness to film production. The Walt Disney Animation Studios used this plug-in to model the thousands of packing peanuts seen in BOLT.

Features of the Dynamica Maya plugin

  • Dynamica is cross-platform and works on Windows, Linux and Mac OSX
  • Dynamica runs on all versions of Maya.
  • Active, passive, and kinematic rigid bodies
  • Sphere, Box, Hull(convex), and Mesh(concave) collision shapes
  • Force breakable Nail, Hinge, Slider, and Six-degrees-of-freedom constraints
  • Frame based choreography control and simulation baking
  • The plugin exports to COLLADA Physics format and the native .bullet binary physics file format

It was used by Disney Animation and several other studios.


Home Page:
Project Page:
Language: C++
Platform: Windows, Linux, Mac OSX
License: MIT and zlib
Sponsor: Walt Disney Animation Studios

Vfxgal is a geometric algorithms library for the VFX industry. It contains a very fast and robust voronoi fracturer, as well as several other geometric algorithms (plane-clip, hull-clip etc). Vfxgal comes with Houdini11 bindings but has been written in such a way that minimal work is needed to bind to other frameworks.

Project Page:
Language: C++, python
Platform: Linux, OSX
License: GNU LGPL

We present a novel wavelet method for the simulation of fluids at high spatial resolution. The algorithm enables large- and small-scale detail to be edited separately, allowing high-resolution detail to be added as a post-processing step. Instead of solving the Navier-Stokes equations over a highly refined mesh, we use the wavelet decomposition of a low-resolution simulation to determine the location and energy characteristics of missing high-frequency components. We then synthesize these missing components using a novel incompressible turbulence function, and provide a method to maintain the temporal coherence of the resulting structures. There is no linear system to solve, so the method parallelizes trivially and requires only a few auxiliary arrays. The method guarantees that the new frequencies will not interfere with existing frequencies, allowing animators to set up a low resolution simulation quickly and later add details without changing the overall fluid motion.

This code is a reference implementation of our paper Wavelet Turbulence for Fluid Simulation. The code is intended as a pedagogical example, so clarity has been given preference over performance. Optimizations that inhibit readability have been removed, so the running times experienced will be longer than those reported in the paper.

Home Page:
Project Page:
Language: C++
Platform: Linux, Windows, OS X
License: GNU Public License
Sponsor: Cornell University

Blender is an integrated application that enables the creation of a broad range of 2D and 3D content.  Blender provides a broad spectrum of modeling, texturing, lighting, animation and video post-processing functionality in one package.  Through its open architecture, Blender provides cross-platform interoperability, extensibility, a small footprint, and a tightly integrated workflow.

Aimed world-wide at media professionals and artists, Blender can be used to create 3D visualizations, stills as well as broadcast and cinema quality videos, while the incorporation of a real-time 3D engine allows for the creation of 3D interactive content for stand-alone playback.

Originally developed by the company ‘Not a Number’ (NaN), Blender now is continued as ‘Free Software’, with the source code available under the GNU GPL license. It now continues development by the Blender Foundation in the Netherlands.


Home Page:
Project Page:
Language: C, Python
Platform: Windows, Mac OS X, Linux, FreeBSD 5.4 (i386), Sun Solaris 2.8 (sparc)
License: GNU GPL

PyODE is a set of open-source Python bindings for The Open Dynamics Engine, an open-source physics engine. PyODE also includes an XODE parser. PyODE does not wrap ODE’s API directly but changes it slightly to give a more Pythonic feel.

Home Page:
Project Page:
Language: C++
Platform: Windows, Linux, OSX
License: GNU Lesser General Public License or BSD-style license.