22
Particle Systems – Technique for Modeling a Class of Fuzzy Objects Craig Schroeder Computer Graphics I April 22, 2004

Particle Systems – Technique for Modeling a Class of Fuzzy Objects Craig Schroeder Computer Graphics I April 22, 2004

Embed Size (px)

Citation preview

Particle Systems – Technique for Modeling a Class of Fuzzy Objects

Craig SchroederComputer Graphics I

April 22, 2004

Problem

• How do you model objects that are fuzzy or not well defined?– Fire– Clouds– Explosions

• How do you model complex behavior?– Motion blur– Fluid behavior– Changes in shape and appearance

High Level Approach

● Object is modeled as a system of particles– Particles might be spherical, elongated, points, etc.– Particles are simpler and more efficient to deal with

than meshes or other representations– Easier to produce effects like motion blur

● The technique is procedural and stochastic– Less human interaction required– Can zoom in for additional detail– Can be precisely controlled

Particles Have a Life, Too

● Each motion sequence consists of many steps– Generating new particles– Particles are given attributes– Particles die when they have lived a predetermined

amount of time– Particles are moved and updated at each frame based

on their characteristics and properties– The scene is rendered

Particle Generation● Quantity determined statistically based on

coverage density and area● Number created based on mean, variance, and a

uniform random number on [-1, 1]– Number = Mean + Rand * Variance– Number = (Mean + Rand * Variance) * ScreenArea– Mean may change– Why Variance? (Dimensional analysis failure

Particle Attributes

● Motion– Position

● Updated by addingvelocity at each frame

– Velocity● Constant here● Could be updated to

simulate gravity

● Lifetime– Measured in frames– Decremented at each frame, die when zero

More Attributes

● Color– Changes over time– Rate-of-change parameter

● Size – one pixel here● Transparency● Shape

– Point– Sphere– Elongated, for blurring

Particle Rendering

● Simplifying assumptions– Particles do not intersect modeling primitives– Particles are point light sources

● No shadows● Single pixel● Colors of all particles at that point are added● Colors saturate

● Vastly simplifies system● Rendered into frame buffer

Particle Hierarchy

● Particles in a hierarchy– Particles of a system may themselves be particle

systems– Attributes of parent used to determine characteristics

of children– Some changes to parent affect entire branch– Allows global control of system

● E.g., wind or terrain

Application – Genesis Demo● Simulates effect of Genesis bomb● Bomb hits surface, and a wall of fire radiates out● Creates oceans and mountains● Causes vegitation and earthlike conditions

Genesis Demo

● Top level simulation – Centered at impact– Each particle is a

secondary simulation

● Secondary simulation – Fire appearance– Explosion appearance

● Varying start times creates expanding wall

Explosions

● Particles fly away from surface

● Particles drawn back by gravity

● Motion blur used for realism

Impact

Expanding Wall of Fire

Wall of Fire

Approaching Fire

Engulfed by Fire

Application – Fireworks

Application – Fireworks

Application – Fireworks

Application – Grass

Future Work

● Particles reflect light● Clouds

– Complex– Large number of particles– More efficient rendering needed– Shadows