650 likes | 782 Views
Hair Simulation. COMP 768 Qi Mo. Motivation. Cosmetic prototyping Entertainment industry - Feature animation - Interactive systems. Motivation. Cosmetic prototyping Entertainment industry - Feature animation - Interactive systems. Motivation. Cosmetic prototyping
E N D
Hair Simulation COMP 768 Qi Mo
Motivation • Cosmetic prototyping • Entertainment industry - Feature animation - Interactive systems
Motivation • Cosmetic prototyping • Entertainment industry - Feature animation - Interactive systems
Motivation • Cosmetic prototyping • Entertainment industry - Feature animation - Interactive systems
Motivation • Cosmetic prototyping • Entertainment industry - Feature animation - Interactive systems
Motivation • Cosmetic prototyping • Entertainment industry - Feature animation - Interactive systems
Motivation • Cosmetic prototyping • Entertainment industry - Feature animation - Interactive systems
Motivation • Cosmetic prototyping • Entertainment industry - Feature animation - Interactive systems
Challenges • Over 100,000 hair strands • Real hair properties still under research
Overview • Styling Geometry of hair Density, distribution, orientation of hair strands • Simulation Dynamic motion of hair Collision between hair and other objects Mutual hair interactions • Rendering Light scattering and shadows
Overview • Styling Geometry of hair Density, distribution, orientation of hair strands • Simulation Dynamic motion of hair Collision between hair and other objects Mutual hair interactions • Rendering Light scattering and shadows
Hair Geometry • Curliness: Straight, wavy, curly, etc. • Shape of cross-section - Asian hair strand: circular - African hair strand: very elliptical - Caucasian hair strand: between the two
Hair styling • Attaching hair to the scalp • Global hair shape • Fine details
Attaching hair to the scalp • 2D Placement • 3D Placement • Distribution of hair strands on the scalp
Global Hair Shape Generation • Geometry-based hairstyling - Parametric surface - Wisps and generalized cylinders • Physically-based hairstyling - Fluid flow - Styling vector and motion fields • Generation of hairstyles from images
Global Hair Shape Generation • Geometry-based hairstyling - Parametric surface - Wisps and generalized cylinders
Global Hair Shape Generation • Geometry-based hairstyling - Parametric surface - Wisps and generalized cylinders
Global Hair Shape Generation • Geometry-based hairstyling - Parametric surface - Wisps and generalized cylinders
Global Hair Shape Generation • Physically-based hairstyling - Fluid flow - Styling vector and motion fields
Global Hair Shape Generation • Physically-based hairstyling - Fluid flow - Styling vector and motion fields
Global Hair Shape Generation • Physically-based hairstyling - Fluid flow - Styling vector and motion fields
Global Hair Shape Generation • Geometry-based hairstyling - Parametric surface - Wisps and generalized cylinders • Physically-based hairstyling - Fluid flow - Styling vector and motion fields • Generation of hairstyles from images
Hair Mechanics • Difficult to shear and stretch • Easy to bend and twist • Anisotropic friction • Hair geometry also affects motion
Dynamics of Individual Strand • Mass-spring systems • One dimensional projective equations • Rigid multi-body serial chain • Dynamic super-helices
Mass-Spring Systems • Particles connected by stiff springs bending rigidity ensured by angular spring at each joint • Simple and easy to implement • But does not account for tortional rigidity or non-stretching of each strand
One-dimensional Projective Equations • Hair strand as a chain of rigid sticks • Easy to implement • Efficient • Non-stretching • Bending • No tortional stiffness • Difficult to handle external punctual forces
Rigid Multi-body Serial Chain • Hair strand as a rigid multi-body open chain • Bending and twisting DOFs only, stretching DOF removed • Motion computed using forward dynamics
Super-Helices • Accurate Mechanical Model Kirchhoff Equation and Cosserat Curves
Super-Helices Model for Strands • Cosserat curve: a one-dimensional rod • A material frame defined at each point on the centerline
Kinematics r (s, t) – centerline s – curvilinear abscissa alongr t – time ni(s, t) – axis of material frame
Kinematics Ω(s, t) – Darboux Vector τ(s, t) – twist κi (s, t) - curvatures
Spatial Discretization N –number of segments Q –index of segments1≤Q ≤ N qi,Q(t) – constant curvatures & twist χQ (s) – characteristic function of Q
Dynamic Equations • Solve equations of motion using Lagrangian mechanics q (t) – generalized coordinates T (q, , t) – kinetic energy U (q, t)– internal energy D (q, , t) – dissipation potential F (s, t) – linenic density of forces JiQ (s, q, t) – Jacobian matrix
Energy Terms ρS – mass per unit length (EI)0 – torsional stiffness (EI)1,2 – bending stiffness κ0–natural twist κ1,2–natural curvatures γ –internal friction coefficient
Equation of Motion • Symbolic Integrations –inertia matrix –stiffness matrix qn–rest position A–all remaining terms
Key Features • Discrete model for Kirchhoff equations • Space integrations performed symbolically • Stiff constraint of inextensibility incorporated into reconstruction process, therefore removed from the equations of motion • Stable simulation even for small N • When N →∞, Kirchhoff Eq recovered
Parameters of Model • Chosen based on physical measurements - Hair mass - Mean radius and ellipticity - Natural curliness: - Internal friction γ
Dynamics of a Full Hairstyle • Hair as a Continuous Medium • Hair as Disjoint Groups • Collision detection and response • Hair-hair and hair-object interaction
Hair as a Continuous Medium • Fluid Dynamics • Loosely Connected Particles • Interpolation between Guide Hair Strands • Free Form Deformation
Animating Hair with Fluid Dynamics • Kinematically link each hair strand to fluid particles in their vicinity • Hair-hair interactions modeled by pressure and viscosity forces between strands • Hair-body interactions modeled by creating boundary particles around solid objects • Captures the complex interactions of hair strands • Cannot capture the dynamic clustering effects • Computationally expensive
Loosely Connected Particles • Use a set of fluid particles that interact in an adaptive way • Neighboring particles with similar orientations are linked • During motion particles interact with other particles in its local neighborhood through breakable links • Allows separation and grouping while maintaining constant hair length
Interpolation between Guide Hair Strands • Only simulate a sparse set of hair strands • Remaining strands created by interpolation • Only use the guide strands to detect and handle collisions - Might miss collisions
Free Form Deformation (FFD) • Define a mechanical model for a lattice surrounding the head • Lattice deformed using a global volumetric FFD scheme • Good for simulating complex hairstyles when head motion has low magnitude • Cannot reproduce discontinuities in hair
Hair as Disjoint Groups • Group nearby hair strands, simulate groups as independent, interacting entities • Account for discontinuities during fast motion • Save computation time • Simulation of - Hair strips - Wisps
Simulation of Hair Strips • Model groups of strands using a thin flat patch, e.g. a NURBS surface • Achieves real time using a strip to represent tens or hundreds of hairs • Limited in the types of hairstyle and motion
Simulation of Wisps • Group neighboring strands into wisps • Wisp representations - Trigonal prism-based wisp - Typical strand and random displacements - Layered wisp model