Particle systems

Particles are objects

Particle Systems consist of

Basic particle systems:

Particle lifetime

  1. Seeding
  2. Attribute assignment
  3. Animation

Seeding particles

Creation/Deletion of particles.

Location:

When:

Attributes

Animation

Types of rules that govern motion:

Update cycle:

  1. Clear forces
  2. Calculate and accumulate forces
  3. Solve for accelerations
  4. Integrate velocity/position
  5. Record state
  6. Update other variables

Particle Physics

Newtonian Particle

Each particle is an ideal point mass.

Six degrees of freedom: 3 position coords, 3 velocity coords.

Newton’s second law: $F = ma$

Forces: depend on position velocity time

Acceleration (2nd derivative) $x’’ = f(x, x’, t) / m$ can be:

Vector field of velocities/accelerations (depends on what this field represents)

Vector field

Differential equations to solve initial value problems.

Euler’s method

Approximation. Break into discrete time steps. Choie of $\Delta t$ (time interval) is thus critical. Wrong choice can make movement inaccurate and unstable.

Velocity-time: $v_t = x’_t = f(x_t, t)$.

Position-time: $x_{t+1} = x_t + \Delta t v_t$.

Midpoint method is a modification of Euler’s method.

  1. $\Delta x = \Delta t f(x, t)$
  2. $v_\text{mid} = f(x + \frac{\Delta x}{2}, t + \frac{\Delta t}{2})$
  3. $x_{t + 1} = x_t + \Delta t v_\text{mid}$

Use the midpoint velocity to derive the next step’s position, instead of the velocity at the start of the interval.

Advanced Particle Systems

  1. Mass Spring systems
  2. Smoothed particle hydrodynamics (SPH)
  3. Crowd simulation (human crowds)

Mass spring systems

Hooke’s law: $f_s = k_s(x - r) - k_d v$

Right layout, stiffness, integration.

Layout of 2D mass spring particles in cloth:

Cloth layout

\[x'' = M^{-1} (- \frac{\delta})\]