Download presentation
Presentation is loading. Please wait.
Published byPreston Ward Modified over 9 years ago
1
Multimedia Programming 21: Particle Animation Departments of Digital Contents Sang Il Park
2
Outline Review: Playing with Video Particle Systems
3
OpenCV Video I/O OpenCV 의 Video Reading Functions –CvCapture –cvCaptureFromFile –cvCaptureFromCAM –cvReleaseCapture –cvQueryFrame –cvGetCaptureProperty –cvSetCaptureProperty
4
OpenCV Video I/O OpenCV 의 Video Writing Functions –cvCreateVideoWriter –cvReleaseVideoWriter –cvWriteFrame
5
Particle Animation Reference: Reeves W.: "Particle Systems -- A Technique for Modelling a Class of Fuzzy Objets", Computer Graphics, 17(3), pp. 359-376, 1983
6
Particle Systems Particle systems offer a solution to modeling amorphous, dynamic and fluid objects like clouds, smoke, water, explosions and fire.
7
Representing Objects with Particles An object is represented as clouds of primitive particles that define its volume rather than by polygons or patches that define its boundary. A particle system is dynamic, particles changing form and moving with the passage of time. Object is not deterministic, its shape and form are not completely specified. Instead
8
Particle Systems A particle is a point mass –Mass –Position –Velocity –Acceleration –Color –Lifetime Use lots of particles to model complex phenomena –Keep array of particles
9
Particle Systems For each frame: –Create new particles and assign attributes –Delete any expired particles –Update and move particles based on attributes and physics –Render particles
10
Particle Generation Particles are generated using processes with an element of randomness. One way to control the number of particles created is by the particles generated per frame: Nparts f = MeanParts f + Rand() X VarianceParts f Another method generates a certain number of particles per screen area: Nparts f = (MeanParts SAf + Rand() X VarianceParts SAf ) X ScreenArea With this method the number of new particles depends on the screen size of the object.
11
Particle Attributes Initial position Initial velocity Initial size –InitialSize = MeanSize + Rand() X VarSize Initial color Initial transparency Shape Lifetime Alias|Wavefront’s Maya
12
Creating/Deleting Particles Where to create particles? – Around some center – Along some path – Surface of shape – Where particle density is low When to delete particles? – Where particle density is high – Life span – Random
13
Example: Wrath of Khan
16
Particle Systems For each frame: –Create new particles and assign attributes –Delete any expired particles –Update and move particles based on attributes and physics –Render particles
17
Equations of Motion Newton’s Law for a point mass – f = ma Update every particle for each time step – a(t+Δt) = g (=gravity=-9.8m/sec 2 ) – v(t+Δt) = v(t) + a(t)*Δt – p(t+Δt) = p(t) + v(t)*Δt + a(t) 2 *Δt/2
18
Particle Dynamics Other attributes can vary over time as well, such as color, transparency and size. These rates of change can be global or they can be stochastic for each particle.
19
Particle Extinction When generated, given a lifetime in frames. Lifetime decremented each frame, particle is killed when it reaches zero. Kill particles that no longer contribute to image (transparency below a certain threshold, etc.).
20
Particle Rendering For Star Trek II, Reeves made two assumptions which made things easier for him: –assumed particles wouldn’t intersect other geometry (handled occlusion by compositing) Particles can obscure other objects behind them, can be transparent, and can cast shadows on other objects. The objects may be polygons, curved surfaces, or other particles. –treated particles as point light sources, each particle contributing a bit to the brightness of a pixel (avoiding hidden surface detection and shadows). However, the particles did not actually cast light on the geometry in the scene; lights had to be added.
21
Star Trek II: The Wrath of Khan
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.