Download presentation
Presentation is loading. Please wait.
Published byGodwin Murphy Modified over 9 years ago
1
Simulation Level of Detail Or Doing As Little Work As Possible Jonathan Robbins Physically Based Modeling, Simulation, and Animation February 10, 2003
2
Definitions Dynamics Simplification - Using a simplified motion model Simulation Level of Detail - Reducing the level of detail in a simulation using dynamics simplification
3
Examples Simulation Proxies Tilt-A-Whirl Bumper Cars Reducing LOD Prairie Grass Grouping Particles Fountain Galaxy
4
Simulation Proxies Stephen Chenney and David Forsyth. “View- Dependent Culling of Dynamic Systems in Virtual Environments” Reduce simulation fidelity in regions outside the viewing area Allow for strong, medium, and weak influence of the initial conditions Examples: Tilt-A-Whirl and Bumper Cars
5
Influence of Initial Conditions Strong – Viewer can predict state based on initial conditions accurately, so must simulate Medium – Viewer can make some qualitative predictions Weak – Viewer can make no predictions, but can have expectations of state, based on physical principles
6
Tilt-A-Whirl
7
- Angular position of platform on the track - Angular position of the car on the platform Parameters
8
Start State Platforms accelerate
9
Run State Motion in a steady state
10
Chaotic Behavior in Run State For 2 cars whose initial conditions vary by 10° and 10°/s Very hard to predict state and, after 9 seconds of virtual time, state can be sampled from a probability density
11
Stop State Platforms slow down and stop
12
Decay State Cars are still in motion, and energy is decaying as a damped harmonic oscillator Once the car’s angular velocity has dropped far enough, we can use a linear model
13
Stationary State Everything is stationary
14
Re-entering View Determine which phase the tilt-a-whirl is in and find a state which matches the last observation In general, can integrate forward to get state For run state, can get state from probability distribution For decay state, can determine energy remaining in system, and choose state accordingly For stationary state, only one option
15
Building the Distribution Physically simulate the run state over a long time Create discrete cells corresponding to ranges of states At each step, increment a counter corresponding to the state the system is in The probability of being in a state i is
16
Simulation Cost
17
Bumper Cars
18
Parameters Position of each car on an elliptical track Orientation and angular velocity of each car Velocity of each car State for each car is given by
19
Simulation Use perturbed motion of 12 cars following an elliptical path Sample the position of each car independently If a collision occurs, move the cars so that they are farther apart, but their mutual center is maintained
20
Influence of Initial State The uncertainty of the state of each car grows with time, making it harder for a viewer to predict where the cars ought to be After sufficient time, the states of the car may be chosen from a distribution
21
Future Work Automated technique for modeling dynamic systems
22
Prairie Grass Frank Perbert and Marie-Paule Cani. “Animating Prairies in Real-Time” Animate prairie grass in real-time 3 LODs: Near, Medium, and Far Pre-compute physically- based wind effects, and implement with procedural wind effects
23
LODs Near Geometric 3D model Medium Volumetric texture mapped onto vertical polygon strips (“2.5D”) Far Static 2D Texture
24
Transition: Near to Medium Volumetric texture for a patch of grass generated from the 3D model Linearly interpolate each blade of grass to its corresponding position on the texture map
25
Transition: Medium to Far Without hills, simple cross dissolve is sufficient, since the 2D texture is far away To improve appearance with hills, make 2.5 D texture polygons grow (vanish) from (into) the ground, while making the 2D texture vanish (appear)
26
Wind Primitives Types Gentle Breeze Gust Whirlwind Blast
27
Posture Range of motion for a blade of grass is computed using a physically-based model
28
Variation in Posture Index A constant wind starts blowing
29
Samples http://www- imagis.imag.fr/Membres/Frank.Perbet/p rairie_dea/
30
Speed QualityLowMediumHigh Nb. of blades per patch160320500 2.5D distance range3m - 8m2m –12m3m – 20m Nb. Seg. Per blade of grass 348 Approx. nb. Blades per image 100,000500,0001,000,000 Frame rate on SGI O25 Hz4 Hz2 Hz Frame rate on ONYX25 Hz12.5 Hz8 Hz
31
Future Work Change sizes of patches at different LODs Add different types of grass to scene
32
Particle Systems David O’Brien, Susan Fisher, and Ming Lin. “Automatic Simplification of Particle System Dynamics” General approach: Group particles into clusters, calculate change in state for the entire cluster, and apply it to each particle
33
“Cluster” System PPPPP…P FFFFF P…PP…P FFFFF CC
34
SLOD vs No-SLOD http://www.cs.unc.edu/~geom/SLOD
35
Regions of Interest The desired resolution for different areas is specified Higher resolution for places where accuracy is more important Center of view Near point of collisions
36
SLOD-Trees Physically-based subdivision hierarchy Particles are grouped by location, assuming particles close to each other will behave similarly Other parameters can be used to limit merging Relative speed Angle between velocity vectors Size determined by desired resolution and frame rate
37
SLOD-Tree Implementation Combination of k-D tree and uniform grid K-D tree allows adaptively partitioning particles based on the physical parameters of the particles (e.g. position, mass, velocity) Uniform grid provides a fast way to insert particles
38
SLOD-Tree Implemtation Cells of the uniform grid may serve as the root of a k-D tree
39
Overlapping ROIs Each ROI has its own uniform grid ROIs ordered so that higher resolutions are “before” lower resolution
40
Updating Subdivisions When a particle is inserted or a cluster crosses a subdivision boundary, the SLOD-tree is queried to determine where in the tree it should be Cluster crosses implemented as bottom-up search, with occasional top- down searches to compensate for overlapping ROIs
41
Simulating Particle Motion Use the center of mass of the cluster Update x com and v com using standard particle dynamics Apply x and v to each particle in the cluster
42
Error Analysis
43
Maintaining Frame Rate When the frame rate deviates from the desired frame rate, the clustering parameters in each ROI are adjusted This causes the simulation to speed up or slow down gradually as particles are repartitioned
44
Frame Rate for Fountain Simulation
45
Speed-up
46
Future Work Maintain some internal motion of particles within clusters Relative motion with respect to center of mass Statistically based variations in v and x Group particles to minimize differences in acceleration
47
Conclusion Simulation Proxies Useful when objects disappear from view for a long time, but could return Relies on the difficulty of the user to predict state Good for chaotic systems
48
Conclusion LOD Objects are distant Behavior of the objects has little if any influence on closer objects Grouping Particles Need to simulate many particles Many particles have similar behavior
49
References S. Chenney, J. Ichnowski and D.A.Forsyth. Dynamics Modeling and Culling. IEEE Computer Graphics and Applications, March/April 1999, pages 79-87. S. Chenney and D. Forsyth. View-dependent culling of dynamic systems in virtual environments. In Proceedings 1997 Symposium on Interactive 3D Graphics, pages 55-58, 1997. Providence, RI. F. Perbet and M. Cani. Animating Prairies in Real-Time. In Proceeding 2001 Symposium on Interactive 3D Graphics, pages 103-110, 2001. D. O’Brien, S. Fisher, and M. Lin. Automatic Simplification of Particle System Dynamics. In Proceedings 2001 Computer Animation. 2001.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.