The Bullet open source physics engine and library is becoming a leading element in the emerging middleware stack for realistic animation.
The open source Bullet physics engine and library is seeing broad uptake in the 3D modeling and animation industry. Recently both Luxology and Autodesk Softimage have announced add-ins that take advantage of Bullet.
The Bullet physics library was developed primarily by Erwin Coumans, who worked in R&D at Sony Entertainment from 2003 to 2010. He now works for AMD. Coumans told the faithful at the Bullet Physics website that he plans to continue his work on Bullet while he’s at AMD.
The library, developed primarily for the game industry, supports graphics acceleration through OpenCL and DirectCompute. It has tools to simulate clothing in BulletSoftBody. It also includes rigid body and soft body simulation with discrete and continuous collision detection. Collision shapes include: sphere, box, cylinder, cone, convex hull using GJK (Gilbert–Johnson–Keerthi distance algorithm), non-convex, and triangle mesh.
The library is supported by all the major 3D modeling companies including Maya, Houdini, Softimage, Maxon Cinema 4D, LightWave 3D, and Blender. It also supports COLLADA 1.4 physics content. In addition the technology includes optimization for PlayStation 3 Cell SPU, CUDA, and OpenGL.
Bullet and Autodesk Softimage
Exocortex Technologies is distributing a plug-in for Softimage called Momentum 2.0 for $149. It was developed by Helge Mathee of the University of Hamburg, a prolific plug-in developer for Softimage. Momentum simulates rigid bodies and is used to simulate ropes, the behavior of plastics, soft bodies, and cloth. According to users Momentum competes convincingly against Nvidia’s PhysX and Lagoa Multiphysics and it is compatible with both of them.
One of the key technologies Softimage developed before it was gobbled up by Autodesk was its Interactive Creative Environment (ICE) development framework. As a matter of fact, the ICE framework was one of the things that made Softimage so interesting to Autodesk. Exocortex founder and CTO Ben Houston signed on with Softimage in 2008 as a strategic partner. He was very interested in ICE as well. At that time he said, “The Softimage ICE platform offers a development environment ideal for next-generation fluid simulation. Combined with the Gigacore 2 interactive processing power in Softimage|XSI 7, we believe we will be able to reach new levels for real-time fluid interactivity.”
Exocortex Momentum 2.0 is primarily accessed via a toolbar, but it also provides ICE integration. Additionally, all simulations can be plotted for later non-simulation playback. Momentum 2.0 supports Softimage 2010, 2011, and 2012. Individual licenses of Momentum 2.0 cost $149, while site licenses of up to 50 seats cost $1,999.
Bullet and Luxology Modo
Luxology has just announced its newest plug-in, the Recoil Physics Engine, which uses the Bullet physics engine. The Luxology implementation was developed by Weta graphics programmer Eric Soulvie using Modo’s Plug-In SDK. It runs on both the PC and Mac versions of Modo 501 and version 2.77 of the Bullet physics engine. Luxology says Recoil simplifies the setup and execution of complex physical simulations by combining robust collision detection with a variety of constraints, forces, and controls. It allows any mesh item to be tagged “dynamic,” and then the object can respond to forces such as gravity or collisions from other objects.
Soulvie says the process of integrating Bullet into Modo was a smooth process and he says, “the resulting animations are astonishingly realistic.” He says the Recoil plug-in supports the option of collision detection directly with the Subdivision Surfaces and not just the cage geometry, which enables detailed simulation results.
• Any mesh item can be made dynamic, making it subject to forces such as gravity or collisions with other objects in the scene
• Objects can be given “wake-up” conditions and an initial “impulse” behavior. A common wake-up event would be a collision, perhaps with an impulse behavior to jump up slightly and then respond to the force of gravity.
• A system of connectors, including springs and motors, enables complex linked behaviors like spinning gears, elastic coils or swinging chains
• Dynamic simulation can be combined with traditional key-frame animation so that a swinging bat can collide with a tower of pins that scatter and fall to the ground
• Recoil is also useful for stacking objects so that they come to a resting position naturally, such as cubes of sugar in a dish or gumballs in a vending machine
Luxology’s Brad Peebler says Soulvie’s Bullet plug-in represents the “most extensive use of the Modo Plugin SDK to date, and represents a significant milestone for Modo as a 3D platform.”
The Recoil plug-in is available for $199.
What do we think?
Physics is becoming a requirement for 3D modeling and animation tools. While we were researching the Luxology story, we found that Bullet has been implemented in just about all of the 3D modeling products used in the entertainment industry. Increasingly, we are seeing middleware move out of the proprietary R&D offices at companies in the film and game development industry and into open source or at independent companies that can develop the technology, sell and support it to a team of content creators from effects and post houses. It makes a lot of sense because content development is about the content and not the technology.
One really exciting use of Physics we’ve seen is Siemens implementation of Nvidia’s PhysX technology to model the behavior of mechanical models. Companies like AMD, Intel, and Nvidia are taking advantage of middleware to sell hardware. Customers are getting a wealth of tools and increasingly, those tools work together.