This paper presents a unified dynamics solver developed by the author which was first released in Autodesk™ MAYA 8.5. The solver however is a standalone library which could potentially be used in other applications. Current dynamics solvers are usually fine tuned for specific effects such as rigid bodies or cloth. Handling the interaction between these solvers is often problematic as one of them takes precedence over the others.
In our Nucleus solver we model all matter as a simplicial complex: a generalization of a triangle mesh that also includes points, curves and solids. This allows interactions such as collisions between various elements of different dimensionality. The internal deformations such as stretch and bend are handled through constraints instead of springs. This makes the simulation more stable for stiff materials such as cloth. Through mutual interactions and constraints many interesting phenomena emerge automatically. The basic philosophy behind Nucleus is that complexity arises by combining simple constraints.