The Motion Dynamics of Snakes and Worms Ryan Kern
Overview Gavin Miller – SIGGRAPH 1988 Mass-Spring system Explicit Euler Integration
Mass-Spring system Series of connected cubes representing segments Each cube is a lattice of springs Mass at each corner Spring along each edge and face-diagonal
Generating Motion Traveling sine wave Directional Friction Varies the “natural” length of axial springs with time and position along body Directional Friction Prevents backwards movement
Motion Types Rectilinear Progression Horizontal Undulatory Progression “inchworm” motion Horizontal Undulatory Progression More familiar snake-like motion Also “sidewinding” and caterpillar motion
Maya Integration MEL script Skeletal / joint-chain data Few nodes (n+1)
Problems Unknown constants! Mass Segment length Amplitude Period/frequency Only interested in lateral movement, so the y-coord is fixed
Potential changes Write a plugin More motions Parameter changes require simulation restart NURBS surface generation using lattice as control points (allows for volume-preservation) More motions With missing data, non-level surfaces are possible (sometimes easy)
Demo I apologize for the head