Motion interpolation (computer graphics)
Template:New unreviewed article Motion interpolation is used in data-driven character animation in order to create transitions between example motions and to extrapolate new motions.
Example motions are often created through keyframing or motion capture. However, keyframing is labor-intensive and lacks varieties of motion, and both processes result in motions that are time-consuming to alter. Motion interpolation provides a much faster alternative to creating new motions through the same means.[1]
Implementation
Formerly, a popular method of simulating a character's movement involved storing a variety of motions and choosing the most appropriate one during run-time. Unfortunately, storage limitations resulted in repetitive or imperfect results. Instead, with some additional computation, new, desired motions can be created by interpolating preexisting, similar motions. Using interpolation, motions can be generated in real time while preserving the realistic qualities of the example motions.[2]
Simulated Figure
The simulated figure that is manipulated to show the motion is represented as a hierarchical connection of rigid links by joints. The root of the hierarchy has six degrees of freedom: three degrees for the figure's position and three degrees for the figure's rotation. This representation is sufficient, because knowing only the degrees for each joint and the root, the figure can be rendered at any time.
Interpolation
Suppose that for a desired motion, "walk," there exist two example motions that convey different moods (e.g., happy and sad). A happy walking motion may be characterized by a simulated figure's posture being upright and its gait being energetic and fast-paced. A sad walking motion may be characterized by a slouched posture and a slow gait.
In order to interpolate these motions, they must be in canonical form. This means that their times must be made generic so that significant events occur simultaneously. To elaborate, the two example walking motions may vary in time, as the happy walk is described as fast-paced and the sad walk is described as slow. However, scaling their lengths of time to be equivalent is not sufficient for interpolation. This is because the slow walking motion is not simply an elongation of the happy walking motion. These motions must have their walk cycle key frames aligned, so that at a given generic time, both motions make a forward point contact.
Searching For Relevant Motions
For large sets of example motions, the process of finding relevant results is not trivial. Therefore, methods have been developed to extract motions based on logical similarities and to combine these results into a continuous, branching space of motions that can be searched.[3]
References
- ^ Rose, Charles (September 1998). "Verbs and Adverbs: Multidimensional Motion Interpolation". www.vuse.vanderbilt.edu. Retrieved 2016-12-14.
- ^ Wiley, Douglas (November 1997). "Interpolation Synthesis of Articulated Figure Motion" (PDF). www.computer.org. Retrieved 2016-12-14.
- ^ Kovar, Lucas (2004). "Parameterization of Motions in Large Data Sets". research.cs.wisc.edu/. Retrieved 2016-12-14.