Skinning is a simple yet popular deformation technique combining compact storage with efficient hardware accelerated rendering. While skinned meshes (such as virtual characters) are traditionally created by artists, previous work proposes algorithms to construct skinning automatically from a given vertex animation. However, these methods typically perform well only for a certain class of input sequences and often require long pre-processing times. We present an algorithm based on iterative coordinate descent optimization which handles arbitrary animations and produces more accurate approximations than previous techniques, while using only standard linear skinning without any modifications or extensions. To overcome the computational complexity associated with the iterative optimization, we work in a suitable linear subspace (obtained by quick approximate dimensionality reduction) and take advantage of the typically very sparse vertex weights. As a result, our method requires about one or two orders of magnitude less pre-processing time than previous methods.
Links and Downloads
We would like to thank the anonymous reviewers and our colleagues, Martin Pražák, Daniel Sýkora, Rachel McDonnell and Simon Dobbyn, for their insightful comments and suggestions. We are also indebted to Peter Lozsek for creating the characters and cloth animation (see Figure 9). We thank Doug James for the flag animation [JT05], Robert Sumner and Jovan Popović for the clothHorse, horse, camel and elephant datasets [SP04] and Daniel Vlasic and his colleagues for the samba, swing and crane mesh sequences [VBMP08]. The elasticCow animation was obtained from the geometry videos project [BSM*03]. This work was supported by Science Foundation Ireland (project Metropolis).