Elsevier

Computers & Graphics

Volume 37, Issue 6, October 2013, Pages 638-644
Computers & Graphics

SMI 2013
Shape modeling for animated characters using ordinary differential equations

https://doi.org/10.1016/j.cag.2013.06.001Get rights and content

Highlights

  • A method combines the strengths of joint-based, physics-based, and curve-based surface modeling techniques.

  • A mathematical model with vector-valued fourth order ordinary differential equations and boundary constraints.

  • An efficient finite difference solution of the mathematical model to animate skin deformation of character models.

Abstract

In this paper, we develop a new approach to animate skin deformation of character models. It aims to combine the strengths of joint-based approaches, physics-based algorithms and curve-based surface modeling methods together for efficient and realistic animation of skin deformation. We first transform the deformation of skin surfaces of character models into that of the curves defining the skin surfaces, and introduce a mathematical model consisting of a vector-valued fourth order ordinary differential equation and boundary conditions to describe the curve deformation. In order to achieve capacity and high animation efficiency, we propose an efficient finite difference solution of the mathematical model, and apply our proposed solution to animate skin deformation of character models. The application examples demonstrate that our proposed approach can create realistic skin deformations for real-time character animation.

Introduction

Skin deformation plays a very important role in creating realistic and efficient character animation. How to create high-fidelity skin deformations quickly is one of the most challenging areas of computer animation. To this end, various skin deformation techniques have been developed. Among them, joint-based [1], physics-based [2], and example-based techniques [3] are widely applied, and curve-based surface modeling [4] also has some applications.

Joint-based techniques are the most popular in the animation industry because they seem intuitive. However, the animator must spend time and effort to manually manipulate the skin surface in relation to the motion of the skeleton. This is because the relationship between skin deformation and skeleton movement must be manually tuned by applying proper weights. Physics-based approaches consider anatomy and biomechanics and can create more realistic skin deformations. However, they involve a lot of numerical calculations, and reduce the efficiency of animating skin deformations. Example-based methods use example skin shapes to improve the realism of skin deformations. Although they do not require any manual skills to specify the weights required by skeleton-based techniques, sufficient example skin shapes must be used to achieve realistic skin deformations. Curve-based surface modeling transforms modeling and deformations of surfaces into those of curves. It is very efficient but requires investigations into the relationships between surfaces and the curves defining the surfaces.

As discussed above, there is not one complete method for skin deformation that can meet all the requirements of the animation industry like realism, effectiveness and less computational time. Each method has its strengths and weaknesses. This paper aims to combine the strengths of joint-based approaches, physics-based algorithms, and curve-based surface modeling methods, and uses two example skin shapes for efficient and realistic animation of skin deformations. It uses surface curves to define the skin shape, example skin shapes and the underlying physical law of curve deformations to improve realism, and employs curve shape changes to drive skin deformations for reducing computational cost. In order to maximize the capacity of our proposed approach, an efficient finite difference solution of the proposed mathematical model is developed. It can effectively tackle the problems of line distribution forces in local regions and/or concentrated forces which are difficult to solve with analytical approaches.

Our proposed approach first transforms a skin surface into a set of curves defining the skin surface. Then, the forces acting on the set of curves which drive the skin surface to deform from an initial pose to a final pose are determined using our proposed physics-based deformation algorithm similar to that of beam bending. Next, the forces at any poses between the initial and final poses are obtained using interpolation. With the obtained forces, our proposed physics-based algorithm will generate the deformation of all the curves and create the deformed skin surface.

Section snippets

Related work

Skin deformation techniques can be classified into three major categories: surface-based, volume-based and curve-based techniques [5].

Among various surface-based techniques, joint-based techniques deform skin surfaces through the transformations associated with the joints of the skeleton of a character model. Since the transformations do not involve the physics of skin deformations, skin shapes are achieved by manually applying appropriate weights to modify the transformations [6], [7], [8], [9]

Defining geometric models

Geometric models can be defined by four types of surfaces in Autodesk Maya: polygons, subdivision surfaces, patch modeling and with curves. In Autodesk Maya, a surface model can be changed into a wireframe model or created from a set of curves through skinning these curves. Curves can also be represented by Bézier, B-spline and NURBS.

In addition, the solution to a vector-valued fourth order ordinary differential equation subjected to suitably specified boundary conditions also gives a curve.

Static skin deformation

In addition to the relationships between surface curves and the surface described by these curves, another main issue is how to deform the curves describing the surface realistically.

For static deformations, the mathematical model will consists of a time-independent vector-valued fourth order ordinary differential equation and boundary conditions. The purpose of introducing a fourth order ordinary differential equation to describe the deformations of curves is that the equation is similar to

Application examples

We have implemented our proposed method with C++ and OpenGL. Several application examples are presented to demonstrate our proposed approach.

In the first example, we have used our proposed approach to animate two models of a human arm as shown in Fig. 6, Fig. 7. The arm model used in Fig. 6 consists of 31 curves and each curve has 103 nodes. The arm model used in Fig. 7 consists of 34 curves and each curve has 27 nodes. Here we demonstrate how to determine skin deformations with Fig. 7. The

Conclusions and future work

In this paper, we have presented a new approach to curve based skin deformation which is based on a mathematical model and a fast finite difference solution of static skin deformation. We have applied our proposed approach to animate the skin deformation of human arms, fingers and legs. We have also made a comparison among two important skinning methods and our proposed one. These application examples demonstrate that our proposed approach can create realistic skin deformation of character

Acknowledgments

This research is supported by the grants of the UK Royal Society International Joint Projects/NSFC 2010 and the Sino-UK Higher Education Research Partnership for Ph.D. Studies Project. Xiaogang Jin was supported by the National Natural Science Foundation of China (Grant nos. 61272298, 60933007), and the Major Science and Technology Innovation Team (Grant no. 2010R50040).

References (34)

  • K. Venkataraman et al.

    A kinematic-variational model for animating skin with wrinkles

    Comput Graph

    (2005)
  • Wang XC, Phillips C. Multi-weight enveloping: least-squares approximation techniques for skin animation. In:...
  • Capell S, Burkhart M, Curless B, Duchamp T, Popović Z. Physically based rigging for deformable characters. In:...
  • Allen B, Curless B, Popović Z. Articulated body deformation from range scan data. In: Proceedings of SIGGRAPH'02; 2002....
  • S.Y. Shin et al.

    On extracting the wire curves from multiple face models for facial animation

    Comput Graph

    (2004)
  • Chaudhry E, You LH, Zhang JJ. Character skin deformation: a survey. In: Proceedings of seventh international conference...
  • Thalmann NM, Laperriére R, Thalmann D. Joint-dependent local deformations for hand animation and object grasping. In:...
  • J. Lander

    Skin them bonesgame programming for the web generation

    Game Dev Mag

    (1998)
  • J. Lander

    Over my dead, polygonal body

    Game Dev Mag

    (1999)
  • Weber J, Run-time skin deformation. In: Proceedings of game developers conference;...
  • A. Mohr et al.

    Building efficient, accurate character skins from examples

    ACM Trans Graph (SIGGRAPH'03)

    (2003)
  • Kavan L, Žára J. Spherical blend skinning: a real-time deformation of articulated models. In: Proceedings of the 2005...
  • X. Yang et al.

    Curve skeleton skinning for human and creature characters

    Comput Anim Virt Worlds

    (2006)
  • L. Kavan et al.

    Geometric skinning with approximate dual quaternion blending

    ACM Trans Graph

    (2008)
  • Scheepers F, Parent RE, Carlson WE, May SF. Anatomy-based modeling of the human musculature. In: Proceedings of...
  • Wilhelms J, Van Gelder A. Anatomically based modeling. In: Proceedings of SIGGRAPH'97; 1997. p....
  • X.S. Yang et al.

    Automatic muscle generation for character skin deformation

    Comput Anim Virt Worlds

    (2006)
  • Cited by (0)

    View full text