Presentation is loading. Please wait.

Presentation is loading. Please wait.

Crowd Simulations Guest Instructor - Stephen J. Guy.

Similar presentations


Presentation on theme: "Crowd Simulations Guest Instructor - Stephen J. Guy."— Presentation transcript:

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 ?


Download ppt "Crowd Simulations Guest Instructor - Stephen J. Guy."

Similar presentations


Ads by Google