Introduction to Computer Graphics β Animation (2) β
May 25, 2017 Kenshi Takayama
Introduction to Computer Graphics Animation (2) May 25, 2017 - - PowerPoint PPT Presentation
Introduction to Computer Graphics Animation (2) May 25, 2017 Kenshi Takayama Physics-based animation of deforming objects Classic: faithful simulation of physical phenomena Mass-spring system Finite Element Method (FEM)
May 25, 2017 Kenshi Takayama
2
rest length π, gravity π : π π2π¦ ππ’2 = βπ (π¦ β π) + π = π
int π¦ + π ext
ext : External force (gravity, collision, user interaction)
int π¦ : Internal force (pulling the system back to original)
πΉ π¦ β π 2 π¦ β π 2
π
int π¦ β β ππΉ
ππ¦ = βπ π¦ β π
3
Equation of motion
π π¦(π’) π π π π
π = π1, π2
πΉ π² β
ππ= π1,π2
ππ 2 π¦π1 β π¦π2 β ππ
2
4
ππ π2 π1
π
π π² β
πΉ π² β
π’π= π1,π2,π3
π΅π 2 π
π π² βΊπ π π² β π β± 2
π π2π² ππ’2 = βππΉ(π²) + π ext
5
Area of π’π Greenβs strain energy β β2Γ2 π¦π2 β π¦π1 π¦π3 β π¦π1 ππ2 β ππ1 ππ3 β ππ1
Tessellate the domain into triangular mesh Linear transformation which maps edges π π
ππ² ππ’ as
compute π²(π’) and π°(π’) for π’ > 0. (Initial Value Problem)
π π2π¦ ππ’2 = βπ π¦ β π + π ο¨ analytic solution exists (sine curve)
ο¨ From state π²π, π°π at time π’, compute next state π²π+1, π°π+1 at time π’ + β. (time integration)
6
π² 0 = π²0 and π° 0 = π°0 ,
go beyond the initial amplitude
ο¨ System energy explodes over time
7
Discretize acceleration using finite difference: π π°π+1βπ°π
β
= π int π²π + π ext
8
9
π°π+1 = π°π + β πβ1 π int π²π+1 + π ext Denote unknown π²π+1 as π³
π²π+1 = π²π + β π°π+1 π³ π+1 β π³ π β ππ ππ³
β1
π(π³ π ) = π²π + β π°π + β2πβ1 π int π²π+1 + π ext = π²π + β π°π + β2πβ1 βππΉ π²π+1 + π ext = π³ π β β2ππΉ π³ π + π
β1 π(π³ π )
2nd derivative of potential πΉ (Hessian matrix)
β2ππΉ π³ + π π³ β π π²π + β π°π β β2π ext = π π π³
10
Mass-spring
β³ γ FEM γ β³
Physical accuracy
11
[MΓΌller et al., SIGGRAPH 2005]
[MΓΌller et al.,VRIPhys 2006]
Compute positions making potential zero (goal position), then pull particles toward them
12
https://www.youtube.com/watch?v=CCIwiC37kks
ο¨ Energy never explodes in any case ο
13
π€π+1 β π€π +
β π π π β π¦π
π¦π+1 β π¦π + β π€π+1
π π¦(π’) π π π Explicit Euler Position-Based Dynamics
π€π+1 β π€π +
π½ β π β π¦π
π¦π+1 β π¦π + β π€π+1
such that it best matches the current deformed state
14
π°π+1 β π°π β β πβ1ππΉ π²π
Explicit Euler
Position-Based Dynamics
π½ β π‘ π²π β π²π
π²π+1 β π²π + β π°π+1
π²π π‘(π²π) π²0
15
Local regions from voxel lattice
Local regions from octree Animating hair using 1D chain structure
FastLSM; fast lattice shape matching for robust real-time deformation [Rivers SIGGRAPH07] Fast adaptive shape matching deformations [Steinemann SCA08] Chain Shape Matching for Simulating Complex Hairstyles [Rungjiratananon CGF10]
16
https://www.youtube.com/watch?v=0AWtQbVBi3s
Autonomous motion of soft bodies Example-based deformations
https://www.youtube.com/watch?v=45QjojWiOEc ProcDef; local-to-global deformation for skeleton-free character animation [Ijiri PG09] Real-Time Example-Based Elastic Deformation [Koyama SCA12]
πͺ = π²π + β π°π prediction π²π+1 = modify πͺ position correction π― = π²π+1 β π²π /β velocity update π°π+1 = modify π― velocity correction
17
Position Based Dynamics [MΓΌller et al., VRIPhys 2006] http://www.csee.umbc.edu/csee/research/vangogh/I3D2015/matthias_muller_slides.pdf
(My understanding is still weak)
Robust Real-Time Deformation of Incompressible Surface Meshes [Diziol SCA11] Long Range Attachments - A Method to Simulate Inextensible Clothing in Computer Games [Kim SCA12] Position Based Fluids [Macklin SIGGRAPH13] Position-based Elastic Rods [Umetani SCA14] Position-Based Simulation of Continuous Materials [Bender Comput&Graph14]
18
Twist constraint Stretch constraint Volume constraint Strain constraint Density constraint
19
Unified Particle Physics for Real-Time Applications [Macklin SIGGRAPH14] https://www.youtube.com/watch?v=z6dAahLUbZg
which particles it contains
nearby particles
20
Collision detection for deformable objects [Teschner CGF05] Staggered Projections for Frictional Contact in Multibody Systems [Kaufman SIGGRAPHAsia08] Asynchronous Contact Mechanics [Harmon SIGGRAPH09] Energy-based Self-Collision Culling for Arbitrary Mesh Deformations [Zheng SIGGRAPH12] Air Meshes for Robust Collision Handling [Muller SIGGRAPH15]
[Harmon09] [Zheng12] [Kaufman08] [Muller15]
21