Particle Systems. Applications Particle systems are broadly defined for: Explosion Cloth Fluid And more… It is integrated into many animation software,

Slides:



Advertisements
Similar presentations
Numerical Integration
Advertisements

Courant and all that Consistency, Convergence Stability Numerical Dispersion Computational grids and numerical anisotropy The goal of this lecture is to.
Numeric Integration Methods Jim Van Verth Red Storm Entertainment
Formal Computational Skills
Real-Time Game Physics
What is Projectile Motion?
1cs533d-winter-2005 Notes  Assignment 1 is not out yet :-)  courses/533d-winter-2005.
1 Computer Graphics Physical simulation for animation Case study: The jello cube The Jello Cube Mass-Spring System Collision Detection Integrators.
LINCS: A Linear Constraint Solver for Molecular Simulations Berk Hess, Hemk Bekker, Herman J.C.Berendsen, Johannes G.E.M.Fraaije Journal of Computational.
Integration Techniques
Dynamics of Articulated Robots Kris Hauser CS B659: Principles of Intelligent Robot Motion Spring 2013.
1cs542g-term Notes  Final exam: December 10, 10am-1pm X736 (CS Boardroom)  Another extra class this Friday 1-2pm.
1Notes. 2 Building implicit surfaces  Simplest examples: a plane, a sphere  Can do unions and intersections with min and max  This works great for.
1Notes  Textbook: matchmove 6.7.2, B.9. 2 Match Move  For combining CG effects with real footage, need to match synthetic camera to real camera: “matchmove”
MAT 594CM S10Fundamentals of Spatial ComputingAngus Forbes Week 2 : Dynamics & Numerical Methods Goal : To write a simple physics simulation Topics: Intro.
Particle Systems 1 Adapted from: E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012.
CSE245: Computer-Aided Circuit Simulation and Verification Lecture Note 5 Numerical Integration Spring 2010 Prof. Chung-Kuan Cheng 1.
Interactive Animation of Structured Deformable Objects Mathieu Desbrun Peter Schroder Alan Barr.
Ch. 7: Dynamics.
1cs426-winter-2008 Notes  If you’re interested, read Bridson, Hourihan, Nordenstam, “Curl noise for procedural fluid flow”, SIGGRAPH ‘07.
Game Physics Chris Miles. The Goal To learn how to create game objects with realistic physics models To learn how to simulate aspects of reality in order.
Stable Cloth Animation By Matthew Fisher. Overview Choose Underlying Model Define Equations of State Integrate Equations of State –Deal With Explosions.
1cs533d-term Notes  list Even if you’re just auditing!
Cloth Simulation CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
Particle Systems CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2004.
Cornell CS 468Andrew Butts 1 Implementing Particle Systems CS 468 Spring 2004 Andrew Butts.
Molecular Dynamics Classical trajectories and exact solutions
Particle Systems Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University.
1cs426-winter-2008 Notes. 2 Velocity fields  Velocity field could be a combination of pre-designed velocity elements E.g. explosions, vortices, …  Or.
Cloth Simulation CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2004.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Introduction to Modeling Fluid Dynamics 1.
Computer graphics & visualization Rigid Body Simulation.
MATH 685/ CSI 700/ OR 682 Lecture Notes Lecture 10. Ordinary differential equations. Initial value problems.
Numerical Solutions to ODEs Nancy Griffeth January 14, 2014 Funding for this workshop was provided by the program “Computational Modeling and Analysis.
CS 4730 Physical Simulation CS 4730 – Computer Game Design.
Physically Based Animation and Modeling
Vibrations and Waves Chapter 12.
Game Physics – Part I Dan Fleck Coming up: Rigid Body Dynamics.
Erin Catto Blizzard Entertainment Numerical Integration.
Animation of Fluids.
Modeling and simulation of systems Numerical methods for solving of differential equations Slovak University of Technology Faculty of Material Science.
CS559: Computer Graphics Lecture 38: Animation Li Zhang Spring 2008 Slides from Brian Curless at U of Washington.
Physically Based Modeling Let physics take over!.
Computer Animation Algorithms and Techniques
Large Steps in Cloth Simulation - SIGGRAPH 98 박 강 수박 강 수.
Introduction to Projectile Motion
Physics Lesson 6 Projectile Motion
Scientific Computing Numerical Solution Of Ordinary Differential Equations - Euler’s Method.
Maths & Technologies for Games Linear Dynamics Particle Based Physics CO3303 Week
+ Numerical Integration Techniques A Brief Introduction By Kai Zhao January, 2011.
MA/CS 375 Fall MA/CS 375 Fall 2002 Lecture 12.
Finite Difference Methods Definitions. Finite Difference Methods Approximate derivatives ** difference between exact derivative and its approximation.
1 Uniform Circular Motion SP1. Students will analyze the relationships between force, mass, gravity, and the motion of objects. g. Measure and calculate.
Game Technology Animation V Generate motion of objects using numerical simulation methods Physically Based Animation.
What is Projectile Motion?. Instructional Objectives: Students will be able to: –Define Projectile Motion –Distinguish between the different types of.
Numerical Integration for physically based animation
INTEGRATOR CLASSIFICATION & CHARACTERISTICS
ECE 383 / ME 442 Fall 2015 Kris Hauser
Physically Based Simulations For Games
What is Projectile Motion?
CSE245: Computer-Aided Circuit Simulation and Verification
Numerical integration for physically based animation
Ordinary differential equaltions:
Find the velocity of a particle with the given position function
CSE245: Computer-Aided Circuit Simulation and Verification
Motion in Real and Virtual Worlds
Advanced Games Development Game Physics
Section 9.4 – Solving Differential Equations Symbolically
Overview Class #2 (Jan 16) Brief introduction to time-stepping ODEs
Conceptual Dynamics Part II: Kinematics Chapter 2
Presentation transcript:

Particle Systems

Applications Particle systems are broadly defined for: Explosion Cloth Fluid And more… It is integrated into many animation software, such as Maya. It is based on particles. A particle: Has no volume Has no orientation, no rotation Only has a position (and velocity, and acceleration)

Position: Velocity: Acceleration: Math

Basic Animation Scheme Given the status at the current frame, simulate the status for the next frame. t0t0 t1t1 t2t2 t3t3 Time step: Δt = t i+1 -t i

A simple Example When a particle is only affected by gravity, it follows a parabolic trajectory (such as a cannon ball). Constant gravity t0t0 t 0 +Δt t 0 +2Δt t 0 +3Δt

A simple Example What about the particle position? velocity, not constant t0t0 t 0 +Δt t 0 +2Δt t 0 +3Δt

Integral Definition t v v(t) t0t0 t1t1 What is x 1 -x 0 ? Δt v0v0 v1v1 Solution 1: Explicit Euler Solution 2: Implicit Euler Solution 3: Trapezoid Rule

A simple Example No need to keep x and v for each frame. Just have a single vector for each of them, and update them over time. t0t0 t 0 +Δt t 0 +2Δt t 0 +3Δt

Mass-Spring System The mass-spring system is based on the Hooke’s law:

Mass-Spring System Damping force:

Mass-Spring System Total force: It is a function of x and v:

Velocity Update The velocity update in a mass-spring system: t0t0 t 0 +Δt t 0 +2Δt t 0 +3Δt Explicit Euler Method

Position Update The position update in a mass-spring system: t0t0 t 0 +Δt t 0 +2Δt t 0 +3Δt Explicit Euler Method

Summary: Explicit Method Both velocity and Position update: t0t0 t 0 +Δt t 0 +2Δt t 0 +3Δt

Summary: Implicit Method Both velocity and Position update: t0t0 t 0 +Δt t 0 +2Δt t 0 +3Δt

Implicit Method Given x 0 and v 0, we need to find x 1 and v 1 : Difficult to solve directly, solve v 1 using Taylor expansion as an approximation instead.

Explicit vs. Implicit Explicit Easy to understand Easy to implement Has the stability issue (the time step Δt must be small, otherwise it will produce wrong solutions or even crash) Each time step runs faster, but overall, it is slower Implicit Take time to implement Has less (or even no) stability issue Each time step needs more time, but overall, it runs faster

Errors and Stability Numerical simulation always has errors (caused by the approximation of the integral). Smaller time steps have less error. Larger time steps have more error. Intuitively, stability doesn’t mean less error. Instead, it means whether the error can diminish over time. Instability means the error becomes bigger and bigger, so eventually the result becomes useless…

Summary: Explicit Method void Update(dt) { Calculate F; x+=v*dt; v+=F*dt/m; } 1 st -order Forward Euler void Update(dt) { x+=v*dt; Calculate F; v+=F*dt/m; } Leapfrog Method (more accurate)

Force in a Mass-Spring System P P0P0 P1P1 P2P2 P3P3 P4P4 The force on P: Gravity Damping Spring force

Mass-Spring Models A string: Stretching Bending No twisting

Mass-Spring Models Cloth (Structured): Bending

Mass-Spring Models Cloth (Unstructured):