Download presentation
Presentation is loading. Please wait.
Published byBarbara Strickland Modified over 9 years ago
1
Crowd Simulations Guest Instructor - Stephen J. Guy
2
Outline Animation basics Key framing Simulation Loop How to move one man Walk Cycle IK How to move one thousand Crowd Models Collision Avoidance Data Structures Rendering
3
Outline Animation basics Key framing Simulation Loop How to move one man Walk Cycle IK How to move one thousand Crowd Models Collision Avoidance Rendering
4
Animation - Basics Comp 768 Preview … Goal: Illusion of continuous motion Divide into several small time-steps (length T) Show new image at each time-step Needs to happened at least ~12/second (more is better) Advance T Update StateDraw Picture
5
Outline Animation basics Key framing Simulation Loop How to move one man Walk Cycle IK How to move one thousand Crowd Models Collision Avoidance Data Structures Rendering
6
Walk Cycle Simply Translating a character to its goal is unrealistic Walk Cycle: A looping series of positions which represent a character walking (or running or galloping) Shifting the animation provides the illusion of walking InplaceShifted w/ Time
7
Digression - Eadweard Muybridge 19 th Century English Photograyher Used multiple cameras to capture motion Invented Zoopraxiscope (spinning wheel of still images) to animate images
8
Walk Cycle - Analysis Pros: Simple to implement Captures the basics of human movement Cons: Walks must cycle Can’t handle changes in stride length Can’t handle jumps Must be animated by hand
9
Walk Cycle - Alternatives Inverse Kinematics Using math to figure out where to place the rest of the body to get the feet moving forward Motion Capture Record data of real humans walking Motion Clips FSM of different motions
10
Outline Animation basics Key framing Simulation Loop How to move one man Walk Cycle IK How to move one thousand Crowd Models Collision Avoidance Data Structures Rendering
11
Crowd Simulation Models Simplest model – Agent Based: Capture Global Behavior w/ many interacting autonomous agents Each person is represented by one agent Chooses next state based on goal and neighbors Pioneered by Craig Reynolds Won 1998 (Technical) Academy Award Advance T Gather Neighbors Draw Agent Update State s For Each Agent
12
Agent Based Simulations Flocking Craig Reylonds SIGGRAPH1987 Social Forces Model Dirk Helbing Physics Review B 1995 Nature 2000 Reciprocal Velocity Obstacles Van den Berg I3D 2008
13
Agent Based Simulations Flocking Craig Reylonds SIGGRAPH1987 Social Forces Model Dirk Helbing Physics Review B 1995 Nature 2000 Reciprocal Velocity Obstacles Van den Berg I3D 2008
14
Flocking Seminal work in multi-agent movement Assign simple force to each agent Used in Lion King Batman Returns SeparationAlignmentCohesion
15
Boids - Continued New forces can be added to incorporate more behaviors Avoiding Obstacles Collision Avoidance Be Creative!
16
Boids Online Visit: http://www.red3d.com/cwr/boids/http://www.red3d.com/cwr/boids/ And: http://www.red3d.com/cwr/steer/Unaligned.htmlhttp://www.red3d.com/cwr/steer/Unaligned.html
17
Agent Based Simulations Flocking Craig Reylonds SIGGRAPH1987 Social Forces Model Dirk Helbing Physics Review B 1995 Nature 2000 Reciprocal Velocity Obstacles Van den Berg I3D 2008
18
Helbing’s Social Force Model Very similar to boid model Treats all agents as physical obstacles Solves a = F/m where F is “social force”: F ij – Pedestrian Avoidance F iW – Obstacle (Wall) Avoidance Desired Velocity Current Velocity Avoiding Other Pedestrians Avoiding Walls
19
Social Force Model – Pedestrian Avoidance r ij – d ij Edge-to-edge distance n ij – Vector pointing away from agent A i *e [(r ij -d ij )/B i ] Re pulsive force which is exponential increasing with distance g(x) x if agents are colliding, 0 otherwise t ij – Vector pointing tangential to agent V t ji – Tangential velocity difference F iW is very similar Collision AvoidanceNon-penetrationSliding Force
20
Helbing - Continued Noticed arching Also observed in real crowds Killed or injured people who experienced too much force (1,600 N/m) – became unresponsive obstacles Noticed Faster-is-slower effect
21
Agent Based Simulations Flocking Craig Reylonds SIGGRAPH1987 Social Forces Model Dirk Helbing Physics Review B 1995 Nature 2000 Reciprocal Velocity Obstacles Van den Berg I3D 2008
22
Reciprocal Velocity Obstacles Applied ideas from robotics to crowd simulations Basic idea: Given n agents with velocities, find velocities will cause collisions Avoid them! Planning is performed in velocity space RVO A B (v B, v A ) = {v’ A | 2v’ A – v A VO A B (v B )}
23
23 RVO: Planning In Velocity Space
24
24 RVO: Planning In Velocity Space
25
R A + R B 25 RVO: Planning In Velocity Space
26
(V A + V B )/2 RVO: Planning In Velocity Space 26
27
27 RVO: Planning In Velocity Space
28
28 RVO: Planning In Velocity Space
29
29
30
30 RVO: Planning In Velocity Space
31
31
32
RVO: Planning In Velocity Space 32
33
Videos 12 Agents in a Circle
34
Videos 1,000 agent’s in a circle
35
Related data-structures KD-trees Allowing efficient gathering of nearby neighbors O(log n) Roadmaps & A* Allows global navigation around obstacles
36
Roadmaps 1. Create roadmap in free space 2. Find visible source nodes 3. Graph Search to find path to Destination A* is very popular graph search algorithm 36
37
Video 1,000 people leaving Sitterson Hall Uses RVO, Roadmaps, A* and Kd-Trees
38
Outline Animation basics Key framing Simulation Loop How to move one man Walk Cycle IK How to move one thousand Crowd Models Collision Avoidance Data Structures Rendering
39
Rendering Crowds Traditional OpenGL pipeline can be too slow for 1000s of agents View Culling helps, but often not enough Need Level-of-Detail techniques Use models with more polygons up close, less when far away
40
Imposters 40 Replace Far off agents with an oriented texture Several Issues “Popping” Uniformity Lighting Shadows Many issues addressed in recent works
41
Questions ?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.