Enhanced Direct Delta Mush
EEnhanced Direct Delta Mush
Serguei Kalentchouk [email protected]
Michael Hutchinson [email protected]
Deepak Tolani [email protected] (a) DDM (b) LBS (c) Enhanced DDM
Figure 1: Skinning deformation under non-rigid transformations, with first joint scaled by 2 in the Y axis and the second jointscaled uniformly by 0.5. DDM (a) distorts the original shape and does not capture the full magnitude of the scaling applied tothe vertices.
CCS CONCEPTS • Computing methodologies → Animation . KEYWORDS skinning, deformation, character animation, delta mush
ACM Reference Format:
Serguei Kalentchouk, Michael Hutchinson, and Deepak Tolani. 2020. En-hanced Direct Delta Mush. In
SIGGRAPH Asia 2020 (SA ’20 Posters), Decem-ber 04-13, 2020.
ACM, New York, NY, USA, 2 pages. https://doi.org/10.1145/3415264.3425464
Direct Delta Mush is a novel skinning deformation technique in-troduced by Le and Lewis (2019). It generalizes the iterative DeltaMush algorithm of Mancewicz et al (2014), providing a direct so-lution with improved efficiency and control. Compared to LinearBlend Skinning, Direct Delta Mush offers better quality of deforma-tions and ease of authoring at comparable performance. However,Direct Delta Mush does not handle non-rigid joint transformationscorrectly which limits its application for most production environ-ments.This paper presents an extension to Direct Delta Mush that inte-grates the non-rigid part of joint transformations into the algorithm.
Permission to make digital or hard copies of part or all of this work for personal orclassroom use is granted without fee provided that copies are not made or distributedfor profit or commercial advantage and that copies bear this notice and the full citationon the first page. Copyrights for third-party components of this work must be honored.For all other uses, contact the owner/author(s).
SA ’20 Posters, December 04-13, 2020, Virtual Event, Republic of Korea © 2020 Copyright held by the owner/author(s).ACM ISBN 978-1-4503-8113-0/20/11.https://doi.org/10.1145/3415264.3425464
In addition, the paper also describes practical considerations forcomputing the orthogonal component of the transformation andstability issues observed during the implementation and testing. “Squash and stretch” is one of the 12 basic principles of animation.In order to accurately model this behavior, it is often necessary toapply non-uniform scale to joint transformations during animation.Unfortunately, Direct Delta Mush (DDM) [Le and Lewis 2019] failsto accurately handle non-rigid joint transformations, as shown inFigure 1a, when compared to similar transformations with Lin-ear Blend Skinning (LBS), shown in Figure 1b. Not surprisingly,the original Delta Mush (DM) [Mancewicz et al. 2014] techniqueexhibits the same artifacts under non-rigid transformations. (a) at rest (b) deformed
Figure 2: Delta mush deformation under non-rigid transfor-mation fails to reconstruct the original shape. a r X i v : . [ c s . G R ] J a n A ’20 Posters, December 04-13, 2020, Virtual Event, Republic of Korea Kalentchouk, Hutchinson and Tolani (a) (b)
Figure 3: Smoothed vertices transformed by R 𝑖 , using acotangent Laplacian computed with (a) single precision, and(b) with double precision. Conceptually, DM/DDM applies joint transformations to meshvertices that have undergone Laplacian smoothing ˜u 𝑖 ∈ R , andthen restores the surface detail lost through smoothing by applyingthe delta between the smoothed and non-smoothed vertices atrest pose. However, while displacements of smoothed and non-smoothed vertices under rigid transformation are equivalent, vertexdisplacements under non-rigid transformation are not, as seen inFigure 2.The key insight is to compute the displacement of non-smoothedvertices under non-rigid transformation and reintroduce that dis-placement as a rigid transformation of smoothed vertices.To that end, the DDM runtime computation is updated as follows.Each joint transformation M 𝑗 ∈ R is factored into a combinedscale and shear matrix M 𝑠 𝑗 and a rigid only transformation matrix M 𝑟 𝑗 [Spencer 1991]. Then, for each vertex u 𝑖 ∈ R in the rest pose,a displacement under non-rigid transformations is computed as: d 𝑖 𝑗 = M 𝑠 𝑗 u 𝑖 − u 𝑖 , where M 𝑠 𝑗 is applied as a local transformation ateach joint. Finally, equation 7 rev. of the DDM algorithm is modifiedto be: (cid:20) Q 𝑖 q 𝑖 p 𝑇𝑖 (cid:21) = 𝑚 ∑︁ 𝑗 = M 𝑟 𝑗 D 𝑖 𝑗 Ω 𝑖 𝑗 (1)where: D 𝑖 𝑗 = (cid:169)(cid:173)(cid:173)(cid:173)(cid:171) d 𝑖 𝑗 d 𝑖 𝑗 d 𝑖 𝑗 (cid:170)(cid:174)(cid:174)(cid:174)(cid:172) With this formulation, the non-rigid transformation of eachinfluence joint is then weighted using the precomputed weights,producing the desired deformation seen in Figure 1c. This solu-tion supports mixed hierarchies of scale-propagating and scale-compensating joints, which are typical of production rigs in Mayaand other digital content creation tools.
To compute the orthogonal component of the vertex transformation,the full model variant of DDM calls for solving the Singular ValueDecomposition (SVD) of a 3 x Q 𝑖 − q 𝑖 p 𝑇𝑖 = M 𝑖 , so that R 𝑖 = U 𝑖 V 𝑇𝑖 . Performing a full SVD for each vertex comes at a significantcomputational cost and poses implementation challenges for real-time environments. Instead, we can take advantage of the fact that M is a square matrix to consider the Polar Decomposition as a solution to the Procrustes problem. Here, M 𝑖 = RS , where R is thenearest orthogonal matrix and S is a symmetric matrix. To solvefor R : R = M 𝑖 S − M 𝑇𝑖 M 𝑖 = S 𝑇 R 𝑇 RS = S R 𝑖 = M 𝑖 ( M 𝑇𝑖 M 𝑖 ) − / (2)The square root inverse of the symmetric 3 x While testing with a large range of motion we found instanceswhere the orthogonal matrix R 𝑖 contained reflection as well asrotation. This occurs with both the SVD formulation of Le andLewis, and our square root formulation. These reflections can resultin discontinuous motion and undesirable visual artifacts duringanimation, making it necessary to restrict the solution to rotationmatrices. To do so when using SVD, the formula for R 𝑖 is modifiedto be [Higham 1988]: R 𝑖 = U 𝑖 Σ ′ 𝑖 V 𝑇𝑖 (3)where: Σ ′ 𝑖 = (cid:169)(cid:173)(cid:171) 𝑑𝑒𝑡 ( U 𝑖 V 𝑇𝑖 ) (cid:170)(cid:174)(cid:172) The same correction can be applied to the square root formula-tion by negating the smallest eigenvalue when the determinant of M is negative. Note that this requires computing all three eigenval-ues using the Stephenson/Sawyers alternative method describedby Franca.Additional testing on more complex geometry revealed thatsome smoothed vertices were degenerating under the transforma-tion R 𝑖 p 𝑖 , as seen in Figure 3a. This issue was also present in theunmodified implementation of DDM. In order to achieve a stablesolution we found it necessary to use double precision arithmeticin the calculation of Laplacian cotangent weights. REFERENCES
Leopoldo P. Franca. 1989. An algorithm to compute the square root of a 3 × 3 positivedefinite matrix.
Computers & Mathematics with Applications
18, 5, 459–466. https://doi.org/10.1016/0898-1221(89)90240-XNicolas J. Higham. 1988. Matrix nearness problems and applications. In
Proceedingsof the IMA Conference on Applications of Matrix Theory . Oxford University Press,1–27.Binh Huy Le and JP Lewis. 2019. Direct Delta Mush Skinning and Variants.
ACM Trans.Graph.
38, 4, Article 113 (July 2019), 13 pages. https://doi.org/10.1145/3306346.3322982Joe Mancewicz, Matt L. Derksen, Hans Rijpkema, and Cyrus A. Wilson. 2014. DeltaMush: Smoothing Deformations While Preserving Detail.
Proceedings of the FourthSymposium on Digital Production , 7–14. https://doi.org/10.1145/2633374.2633376Thomas W. Spencer. 1991. Decomposing a Matrix Into Simple Transformations. In