Speed and accuracy are mutually exclusive issues in the context of the physical simulation of deformable bodies in video games. Explicit numerical methods, like modified Euler integration, are computationally cheap, but, on the other hand, always introduce a stability error. Under certain conditions, this error increases the system energy; besides incorrect behavior of the physical environment, this could lead to a crash of the whole system.
The solution proposed by the authors is to use a purely geometric scheme to obtain unconditional stability without losing the efficiency of the explicit Euler method. The idea is simple and effective. The authors find a transformation through a fast shape matching process. If such a transformation is applied to the deformable body in its undeformed initial configuration, it minimizes the error with the actual configuration of the object, that is, the configuration of the particles forming the object under the influence of external forces (for example, gravity). The transformed configuration defines the goal position of each particle. Then, in order to achieve unconditionally stable deformations, it is sufficient to define a spring between each particle in its actual position and its goal position, and clamp the displacements such that particles do not overshoot the goal position.
The authors provide the methods for finding three kinds of transformations: rigid, linear, and quadratic. These methods are efficient and computationally cheap compared to approaches using modal analysis. Incidentally, such transformations are not sufficient to describe all of the possible modes in which a deformable object can change its own initial configuration. This problem is solved by subdividing the object into overlapping clusters of particles. Each cluster has its own transformation, and increases the number of modes in which the whole object can deform. The authors also describe how to extend their method to support plasticity.
The approach devised in this paper is currently one of the best solutions proposed to simulate, in a plausible way, deformable objects in the context of video games. It does not require a huge amount of memory, and the preprocessing phase is minimal compared to other approaches in the field. Furthermore, the method is general, since it does not require information about the connectivity of the initial object, but only the position of the particles forming the object. This makes it easier to extend this approach to fracturable bodies.
It is important to state that this method is not suitable for the realistic simulation of deformable bodies, since it doesn’t have a physical foundation, but rather is entirely based on geometric schemes. This approach is very good for simulations that must seem realistic, like in video games. Furthermore, in order to achieve good-looking animation for objects with a complex behavior (for example, human skin), the object should be divided into a large number of clusters. This could increase the computational effort.