1Notes  Text:  Motion Blur A.3  Particle systems 4.5 (and 4.4.1, 6.6.2…)  Implicit Surfaces - 4.6  Classic particle system papers  W. Reeves, “Particle.

Slides:



Advertisements
Similar presentations
Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Advertisements

Motivation Hair animation used in movies, games, virtual reality, etc. Problem due to complexity –Human head has over 100,000 strands of hair –Computation.
1 Computer Graphics Physical simulation for animation Case study: The jello cube The Jello Cube Mass-Spring System Collision Detection Integrators.
Blender Particle Fluids. Blender Particle Fluids integrate into the existent powerful Blender particle system a fluid simulation tool that allows a wide.
Week 14 - Monday.  What did we talk about last time?  Bounding volume/bounding volume intersections.
1cs533d-term Notes  Assignment 1 due today.
Notes Assignment questions… cs533d-winter-2005.
1Notes. 2Heightfields  Especially good for terrain - just need a 2d array of heights (maybe stored as an image)  Displacement map from a plane  Split.
1cs533d-term Notes  For using Pixie (the renderer) make sure you type “use pixie” first  Assignment 1 questions?
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  Assignment 2 is out  Flocking references  Reynolds, “Flocks, Herds, and Schools…”, SIGGRAPH’87  Tu and Terzopoulos, “Artificial Fishes…”, SIGGRAPH’94.
1cs533d-winter-2005 Notes. 2 Numerical Implementation 1  Get candidate x(t+∆t)  Check to see if x(t+∆t) is inside object (interference)  If so Get.
1Notes. 2 Triangle intersection  Many, many ways to do this  Most robust (and one of the fastest) is to do it based on determinants  For vectors a,b,c.
1cs533d-winter-2005 Computer Animation Robert Bridson (preview of CPSC 426)
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.
1cs533d-winter-2005 Notes  More optional reading on web for collision detection.
Particle-based fluid simulation for interactive applications
Interactive Animation of Structured Deformable Objects Mathieu Desbrun Peter Schroder Alan Barr.
1cs426-winter-2008 Notes  If you’re interested, read Bridson, Hourihan, Nordenstam, “Curl noise for procedural fluid flow”, SIGGRAPH ‘07.
1cs533d-winter-2005 Notes  Assignment 2 going okay? Make sure you understand what needs to be done before the weekend  Read Guendelman et al, “Nonconvex.
1cs426-winter-2008 Notes  Course project: Will be due at the end of the term You can do it in pairs Create an animation that combines an algorithm for.
1cs533d-winter-2005 Notes  More reading on web site Baraff & Witkin’s classic cloth paper Grinspun et al. on bending Optional: Teran et al. on FVM in.
1cs533d-term Notes  list Even if you’re just auditing!
1cs533d-winter-2005 Notes  Some example values for common materials: (VERY approximate) Aluminum: E=70 GPa =0.34 Concrete:E=23 GPa =0.2 Diamond:E=950.
Haptic Cloth Rendering 6th Dutch-Belgian Haptics Meeting TUDelft, 21 st June 2006 Lode Vanacken Expertise centre for Digital Media (EDM) Hasselt University.
1cs426-winter-2008 Notes  Please read: C. Reynolds “Flocks, Herds, and Schools…” SIGGRAPH ‘87
Modeling Fluid Phenomena -Vinay Bondhugula (25 th & 27 th April 2006)
1 7M836 Animation & Rendering Global illumination, ray tracing Arjan Kok
1cs533d-term Notes. 2 Poisson Ratio  Real materials are essentially incompressible (for large deformation - neglecting foams and other weird composites…)
1cs533d-term Notes  Typo in test.rib --- fixed on the web now (PointsPolygon --> PointsPolygons)
1cs426-winter-2008 Notes  Sorry about missed classes  Assignment 2: matchmove and particles  Final project.
1Notes. 2 Time integration for particles  Back to the ODE problem, either  Accuracy, stability, and ease-of- implementation are main issues  Obviously.
1cs426-winter-2008 Notes. 2 Velocity fields  Velocity field could be a combination of pre-designed velocity elements E.g. explosions, vortices, …  Or.
1cs426-winter-2008 Notes  Assignment 1 is out, due immediately after reading week (Feb 25)  Please read: William T. Reeves, "Particle systems: a technique.
CS 4730 Physical Simulation CS 4730 – Computer Game Design.
Physically Based Animation and Modeling
Modelling and Simulation Dynamics. Dynamics Dynamics is a branch of physics that describes how objects move. Dynamic animation uses rules of physics to.
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Spline curves 1/23 Curves and Surfaces.
Game Physics – Part I Dan Fleck Coming up: Rigid Body Dynamics.
Animation of Fluids.
CS559: Computer Graphics Lecture 38: Animation Li Zhang Spring 2008 Slides from Brian Curless at U of Washington.
Smoothed Particle Hydrodynamics (SPH) Fluid dynamics The fluid is represented by a particle system Some particle properties are determined by taking an.
Physically Based Modeling Let physics take over!.
2D/3D Shape Manipulation, 3D Printing Shape Representations Slides from Olga Sorkine February 20, 2013 CS 6501.
Course 13 Curves and Surfaces. Course 13 Curves and Surface Surface Representation Representation Interpolation Approximation Surface Segmentation.
Introduction to Procedural Methods, Particles Glenn G. Chappell U. of Alaska Fairbanks CS 481/681 Lecture Notes Monday, March.
Advanced Computer Graphics Rigid Body Simulation Spring 2002 Professor Brogan.
1996 Eurographics Workshop Mathieu Desbrun, Marie-Paule Gascuel
University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Particle Systems.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Physics for Games Spring 2012.
Emerging Technologies for Games Deferred Rendering CO3303 Week 22.
Interactive Graphics Lecture 10: Slide 1 Interactive Computer Graphics Lecture 10 Introduction to Surface Construction.
Physically based deformations of implicit surfaces Michal Remiš.
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
Game Technology Animation V Generate motion of objects using numerical simulation methods Physically Based Animation.
Computer Graphics Imaging Ying Zhu Georgia State University Lecture 29 Soft Bodies and Rigid Bodies.
Particle Animation and Rendering Using Data Parallel Computation Karl Sims Optomystic Thinking Machines Corporation Presentation ©2001 Brenden Schubert.
Advanced Computer Graphics Rigid Body Simulation
Physically Based Simulations For Games
Computer Animation Ying Zhu Georgia State University
Motion and Optical Flow
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Spring 2004
Physically Based Animation and Modeling
Computer Animation Algorithms and Techniques
Computer Graphics Lecture 15.
GPAT – Chapter 7 Physics.
Presentation transcript:

1Notes  Text:  Motion Blur A.3  Particle systems 4.5 (and 4.4.1, 6.6.2…)  Implicit Surfaces  Classic particle system papers  W. Reeves, “Particle Systems…” SIGGRAPH ‘83 [REQUIRED READING]  K. Sims, “Particle Animation and Rendering…”, SIGGRAPH ‘90

2 Velocity fields  Velocity field could be a combination of pre-designed velocity elements  E.g. explosions, vortices, …  Or from “noise”  Smooth random number field  See later  Or from a simulation  Interpolate velocity from a computed grid  E.g. smoke simulation

3 Second order motion  Real particles move due to forces  Newton’s law F=ma  Need to specify force F (gravity, collisions, …)  Divide by particle mass to get acceleration a  Update velocity v by acceleration  Update position x by velocity

4 Time integration  Really solving ordinary differential equations in time:  Methods presented before are called “Forward Euler” and “Symplectic Euler”  There are better numerical methods  These are the simplest that can work - but big issue is stability - more on this later

5 Basic rendering  Draw a dot for each particle  But what do you do with several particles per pixel?  Add: models each point emitting (but not absorbing) light -- good for sparks, fire, …  More generally, compute depth order, do alpha- compositing (and worry about shadows etc.)  Can fit into Reyes very easily  Anti-aliasing  Blur edges of particle, make sure blurred to cover at least a pixel  Particle with radius: kernel function

6 Motion blur  One case where you can actually do exact solution instead of sampling  Really easy for simple particles  Instead of a dot, draw a line (from old position to new position - the shutter time)  May involve decrease in alpha  More accurately, draw a spline curve  May need to take into account radius as well…

7 More detailed particle rendering  Stick a texture (or even a little movie) on each particle  E.g. a noise function  E.g. a video of real flames  Draw a little object for each particle  Need to keep track of orientation as well, unless spherical  We’ll get into full-fledged rigid bodies later  Draw between particles  curve (hair), surface (cloth)  Implicit surface wrapped around virtual particles (e.g. water)

8 Implicit Surface Rendering  Idea for water, mud, etc: implicit surface  Write down a function F(x) that implicitly defines surface  Where it is above threshhold t we are inside  Where it is below, we are outside  Where F(x)=t is the surface  Ray-tracing implicit surface is pretty easy  For ray O+sD solve F(O+sD)=t  Could use Bisection or Secant search to find s  Get surface normal from  F  Other rendering methods trickier…  E.g. for Reyes need to turn into a mesh or subdivision surface: “Marching Cubes”

9 Building implicit surfaces  Simplest examples: a plane, a sphere  Can do unions and intersections with min and max  This works great for isolated particles, but we want a smooth liquid mass when we have lots of particles together  Not a bumpy union of spheres

10 Blobbies and Metaballs  Solution is to add kernel functions together  Typically use a spline or Gaussian kernel around each particle  Still may look a little bumpy - can process surface geometry to smooth it out afterwards…

11 Marching Cubes  Going back to blobby/metaball implicit surfaces: often need mesh of surface  Idea of marching cubes (or marching tets):  Split space up into cells  Look at implicit surface function at corners of cell  If there’s a zero crossing, estimate where, put a polygon there  Make sure polygons automatically connect up

12Acceleration  Efficiency of neighbour location  Rendering implicit surfaces - need to quickly add only the kernel functions that are not zero (avoid O(n) sums!)  Also useful later for liquid animation and collisions  Use an acceleration structure  Background grid or hashtable  Kd-trees also popular

13 Back to animation  The real power of particle systems comes when forces depend on other particles  Example: connect particles together with springs  If particles i and j are connected, spring force is  The rest length is L and the spring “stiffness” is k  The bigger k is, the faster the particles try to snap back to rest length separation  Simplifies for L=0

14 Damped springs  Real springs oscillate less and less  Motion is “damped”  Add damping force:  D is damping parameter  Note: could incorporate L into D  Simplified form (less physical…)

15 Elastic objects  Can animate elastic objects by sprinkling particles through them, then connecting them up with a mesh of springs  Hair - lines of springs  Cloth - 2D mesh of springs  Jello - 3D mesh of springs  With complex models, can be tricky to get the springs laid out right, with the right stiffnesses  More sophisticated methods like Finite Element Method (FEM) can solve this

16Liquids  Can even animate liquids (water, mud…)  Instead of fixing which particles are connected, just let nearby particles interact  If particles are too close, force pushes them apart  If particles a bit further, force pulls them closer  If particles even further, no more force  Controlled by a smooth kernel function  Related to numerical technique called SPH: smoothed particle hydrodynamics  With enough particles (and enough tweaking!) can get a nice liquid look  Render with implicit surface

17Noise  Useful for defining velocity/force fields, particle variations, and much much more (especially shaders)  Need a smooth random number field  Several approaches  Most popular is Perlin noise  Put a smooth cubic (Hermite) spline patch in every cell of space  Control points have value 0, slope looked up from table by hashing knot coordinates  You can decide spatial frequency of noise by rescaling grid