Chapter 3 : Computer Animation (continued) Chapter 3: Computer Animation Reminder: Descriptive animation • Describes a single motion, with manual control Ex: direct kinematics with key-frames, inverse kinematics • Advantage: –Skilled artist can create what they want • Problems: –Defining a new motion is very tedious –The user gets no help towards realism Objects may intersect each other, etc. Towards methods that generate motion ? • The user defines the laws of motion Procedural animation : Examples • Procedural virtual ocean Examples : • Physical laws (gravity, collisions…) • Behavioral laws (artificial intelligence) • The system generates motion from – The initial conditions – The laws to be applied « Procedural animation » • Describes a family of motions • Indirect control • Particle systems (fire, smoke, rain, bees, fishes…) – Points : X (x,y,z), V (vx, vy, vz) – V given by a “law” – Birth and death of particles Physically-based models Physically-based models Laws of motion from mechanics Standard animation algorithm • Model (mass etc) + initial conditions + applied forces Motion & deformations • Loop: t := t+t – For each object 1. Compute new speed (use law & applied forces) 2. Compute new position & deformation 3. Display Exercise: – For each pair of objects - Where is the approximation? 1. Detect collisions - Can you improve the loop? 2. Compute new applied forces Advantage: a help towards realism! – useful when dynamics plays an important part – easier for passive models! Examples : – Toy-Story, Shrek 6 5 Physically-based models We need… Which laws of motion do we need? Rigid bodies • Solids • Articulated solids Ex: – Rolling ball? – Lamps? – Wire? 7 8 We need… Main motions laws Deformable bodies Un-structured Structured – Deformation under forces – Back to equilibrium • Visco-elasticity – Speed of deformation • Fractures Point-based physics – Neighbors change! • Elasticity • Model [ m, X, V ] • Law: F = ∑ Forces = m A = m dV/dt • Plasticity – Absorbs deformations Solid physics • Fluids – Navier-Stokes – If distortion is too large Ex : ball, organ, cloth, paper… used in Computer Graphics Ex : mud, clay, liquids, smoke... Main motions laws used in Computer Graphics • Model [m, I inertia matrix, X, V, angular speed ] • Laws: ∑ F = m (dV/dt) ∑ T = I (d/dt) + I Difficulty: representation of orientations! 10 Research example: Animating fractures [James O‘Brien SIGGRAPH 2002] Articulated solids • Solid dynamics + unknown internal forces at joints! m,I (Lagrange multipliers..) Deformable models F • Linear & non-linear elasticity, plasticity • Navier-Stokes for fluids NB: Eulerian vs Lagrangian discretization [Terzopoulos 87] 12 Research example: Visco-elastic models Research example: Visco-elastic models • Cauchy : linear deformation law (force is a linear function of displacement) - OK for small displacements - but rotations produce forces! - the object inflates!! Solutions: • Green’s non-linear tensor : costly • Apply Cauchy in local frames: real-time! [Müller et al. 02, 04] 13 • Without versus with the detection of inverted finite elements. Research example: Liquid Research example: Liquid Vortex particles +Eulerian grid Navier stokes +Eulerian grid +”level set” (implicit) Bi-phasic fluids [Foster & Fedkiw 2001] [Enright et al. 2002] with vortex particles [Coquerelle, Cottet, Cani 2006] This year Do it all with point-based physics! • Physically-based model : Particles [ m, X, V ] • Motion law : ∑ Forces = m A Integration: • • Explicit Euler : may diverge! Implicit integration (next year) • From a model to another one – Choose the appropriate forces – Render with adapted geometry! Do it all with point-based physics? Structured deformable bodies 1D, 2D, 3D mass-spring networks Lots of simple objects Physically-based particle systems Animation algorithm – At each time step, for each particle V(t+dt) = V(t) + ∑ F(t)/m dt X(t+dt) = X(t) + V(t) dt Do it all with point-based physics? • Example : gravels, cereals – Gravity – Spheres for collisions detection – Random individual geometry Exercise : animating autumn – Leaves = particle + local frame – Wind primitives – Gravity Propose an adequate friction force Do it all with point-based physics? Articulated solids • Articulated solids? Joint = spring of zero length m, I F • Spring: F = k (x-x0) (where x is length) • Angular spring: F = k (α-α0) • Damping: or air friction: F = - v Exercise : • How would you model this using masses and springs? • Drawbacks compared to more accurate physics? Do it all with point-based physics? Unstructured objects Do it all with point-based physics? Unstructured objects [Clavet, Beaudoin, Poulin, SCA’2005] • Particle systems inspired from molecular dynamics – Lennard-Jones attraction/repulsion forces force [Tonensen91] distance [Desbrun98] Do it all with point-based physics? Do it all with point-based physics? Exercise: Hair animation Solution 1. Propose models for straight hair, and for wavy or curly hair 1. Models for hair 2. List the applied forces 3. Which issues will need to be solved to increase realism? 2. Elastic forces, gravity, friction… 3. Main issues: • Changes of length, rest states • Avoid interpenetrations, get hair volume
© Copyright 2026 Paperzz