This is a talk presented at CASA 2009, and published here: http://onlinelibrary.wiley.com/doi/10.1002/cav.292/abstract . It describes the force density method and it's application to skin sliding simulation.
1. Introduction Our Approach The Force Density Method Results
Fast Simulation of Skin Sliding
Xiaosong Yang, Richard Southern and Jian Jun Zhang
Bournemouth University
Computer Animation and Social Agents, 2009
2. Introduction Our Approach The Force Density Method Results
Outline
1 Introduction
2 Our Approach
3 The Force Density Method
4 Results
3. Introduction Our Approach The Force Density Method Results
The Problem
The human body is a
complex multi-layered
organism.
Each layer has different
elasticity properties.
In particular skin is quite
taut, while the fat which
connects it to muscle and
bone is loose.
4. Introduction Our Approach The Force Density Method Results
The Problem
Other approaches
Can be simulated with physically based systems, such as
Finite Element Method or Mass Spring systems.
These are difficult to set up and slow to solve.
Simple muscle simulations do not take fat layer into
account.
Requires XVID Codec.
5. Introduction Our Approach The Force Density Method Results
Desired Behaviour
Why skin sliding?
We want to give the impression of the muscle moving
underneath the taut skin surface.
Without skin sliding the muscle “sticks to” the skin.
6. Introduction Our Approach The Force Density Method Results
Desired Behaviour
Goals
Develop a method that approximates the behaviour of
muscles moving under skin.
The method should be independent of the deformation.
It should be simple to set up.
It has to be fast.
It must fit into the standard animation pipeline.
7. Introduction Our Approach The Force Density Method Results
Our Approach
Method Overview
Select a region on the surface which is to slide.
8. Introduction Our Approach The Force Density Method Results
Our Approach
Method Overview
Select a region on the surface which is to slide.
Embed the original mesh into a 2D domain.
9. Introduction Our Approach The Force Density Method Results
Our Approach
Method Overview
Select a region on the surface which is to slide.
Embed the original mesh into a 2D domain.
Embed the deformed mesh into a 2D domain.
10. Introduction Our Approach The Force Density Method Results
Our Approach
Method Overview
Select a region on the surface which is to slide.
Embed the original mesh into a 2D domain.
Embed the deformed mesh into a 2D domain.
Resample the deformed mesh based on the original mesh
embedding.
12. Introduction Our Approach The Force Density Method Results
Discussion
Alternative approaches
Why not slide the texture coordinates?
13. Introduction Our Approach The Force Density Method Results
Discussion
Alternative approaches
Why not slide the texture coordinates?
Texture boundary is discontinuous
14. Introduction Our Approach The Force Density Method Results
Discussion
Quality of resampling depends on:
The shape of the selected patch.
How the surface is interpolated.
How the surface is embedded in 2D.
15. Introduction Our Approach The Force Density Method Results
Discussion
Quality of resampling depends on:
The shape of the selected patch.
How the surface is interpolated.
How the surface is embedded in 2D.
Use quadrilateral patches: simple to define.
16. Introduction Our Approach The Force Density Method Results
Discussion
Quality of resampling depends on:
The shape of the selected patch.
How the surface is interpolated.
How the surface is embedded in 2D.
Non-quadrilateral patches may sometimes be useful.
17. Introduction Our Approach The Force Density Method Results
Discussion
Quality of resampling depends on:
The shape of the selected patch.
How the surface is interpolated.
How the surface is embedded in 2D.
Use triangular or generalized barycentric coordinates.
18. Introduction Our Approach The Force Density Method Results
Discussion
Quality of resampling depends on:
The shape of the selected patch.
How the surface is interpolated.
How the surface is embedded in 2D.
Use the Force Density Method.
19. Introduction Our Approach The Force Density Method Results
The Force Density Method: Introduction
History
A non-iterative method to find the form of cable networks.
Developed for the roof of the 1972 Munich Olympic
complex.
Linearises shape analysis of tensile structures.
20. Introduction Our Approach The Force Density Method Results
The Force Density Method: Definition
Components of the FDM
The force density of a cable element i is approximated by
qi = Fi/Li.
The cable network is defined by a branch–node matrix C.
The load vector applied to each node given by
(CTQC)X = R.
Cf Cu
1 2 3 4 5 6 7 8
a 1 -1 . . . . . .
b . 1 -1 . . . . .
c . . 1 -1 . . . .
d 1 . . -1 . . . .
e 1 . . . -1 . . .
f . 1 . . . -1 . .
g . . 1 . . . -1 .
h . . . 1 . . . -1
i . . . . 1 -1 . .
j . . . . . 1 -1 .
k . . . . . . 1 -1
l . . . . 1 . . -1
21. Introduction Our Approach The Force Density Method Results
Force Density Method: Embedding
To determine the form:
Define fixed (Xf ) and unfixed (Xu)
nodes.
Seperate C into Cf and Cu respectively.
Unfixed nodes can be computed by
solving for Xu in
CT
u QCT
u Xu = − CT
u QCT
f Xf .
22. Introduction Our Approach The Force Density Method Results
Force Density Method: Embedding
To determine the form:
Define fixed (Xf ) and unfixed (Xu)
nodes.
Seperate C into Cf and Cu respectively.
Unfixed nodes can be computed by
solving for Xu in
CT
u QCT
u Xu = − CT
u QCT
f Xf .
Embedding computed by using Xf ∈ R2
around edge of parameteric domain.
Xf
Xu
23. Introduction Our Approach The Force Density Method Results
Force Density Method: Embedding
Requires XVID Codec.
24. Introduction Our Approach The Force Density Method Results
Force Density Method: Properties
Properties
1 It is a sparse linear system.
2 It is foldover free.
3 It is defined only by edge properties.
4 It is stable under motion.
Quickly solved with Conjugate Gradient Method.
25. Introduction Our Approach The Force Density Method Results
Force Density Method: Properties
Properties
1 It is a sparse linear system.
2 It is foldover free.
3 It is defined only by edge properties.
4 It is stable under motion.
No foldover if
qi > 0, and
Xf is defined on the boundary of the
parameter space.
26. Introduction Our Approach The Force Density Method Results
Force Density Method: Properties
Properties
1 It is a sparse linear system.
2 It is foldover free.
3 It is defined only by edge properties.
4 It is stable under motion.
It ignores differential surface properties, so does not
minimize distortion.
27. Introduction Our Approach The Force Density Method Results
Force Density Method: Properties
Properties
1 It is a sparse linear system.
2 It is foldover free.
3 It is defined only by edge properties.
4 It is stable under motion.
It “jiggles” less than surface based methods.
28. Introduction Our Approach The Force Density Method Results
Force Density Method: Properties
Stability under motion
Rotate vertices of a face around the surface of a sphere.
Measure the magnitude of the vector cone from original to
deformed vertices (units of “jiggle”).
29. Introduction Our Approach The Force Density Method Results
Force Density Method: Properties
Requires XVID Codec.
33. Introduction Our Approach The Force Density Method Results
Conclusions
We have presented a method to simulate skin–sliding that:
is easy to specify,
is real–time,
works with any deformation technique, and therefore,
fits into any animation production pipeline.
In the future
34. Introduction Our Approach The Force Density Method Results
Conclusions
We have presented a method to simulate skin–sliding that:
is easy to specify,
is real–time,
works with any deformation technique, and therefore,
fits into any animation production pipeline.
In the future
Overlapping patches?
35. Introduction Our Approach The Force Density Method Results
Conclusions
We have presented a method to simulate skin–sliding that:
is easy to specify,
is real–time,
works with any deformation technique, and therefore,
fits into any animation production pipeline.
In the future
Overlapping patches?
Weight painting?
36. Introduction Our Approach The Force Density Method Results
Conclusions
We have presented a method to simulate skin–sliding that:
is easy to specify,
is real–time,
works with any deformation technique, and therefore,
fits into any animation production pipeline.
In the future
Overlapping patches?
Weight painting?
Wrinkles?
38. Force Density Optimizations
Choosing qi
Most systems find qi = 1/Li produces satisfactory results.
For performance reasons we approximate the force density
with
qi = max
j
|ej|2
− |ei|2
+ ,
where is a very small value used to prevent degenerate
cases.
39. Speeding up interpolation
Interpolation
Interpolation with barycentric coordinates requires us to
find the facet in which a point lies.
The embedding of the deformed surface is rendered,
different colors for each facet.
A 3 × 3 grid is tested around the point to find the facet.