Multi-Layered Navigation Meshes Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts ICT.OPEN 2011.

Slides:



Advertisements
Similar presentations
Lecture 7: Potential Fields and Model Predictive Control
Advertisements

AI Pathfinding Representing the Search Space
Efficient access to TIN Regular square grid TIN Efficient access to TIN Let q := (x, y) be a point. We want to estimate an elevation at a point q: 1. should.
Convex drawing chapter 5 Ingeborg Groeneweg. Summery What is convex drawing What is convex drawing Some definitions Some definitions Testing convexity.
Approximations of points and polygonal chains
Kernel memory allocation
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
Tutorial 6 of CSCI2110 Bipartite Matching Tutor: Zhou Hong ( 周宏 )
Developer’s Survey of Polygonal Simplification Algorithms Based on David Luebke’s IEEE CG&A survey paper.
Roland Geraerts and Mark Overmars ICRA 2007 The Corridor Map Method: Real-Time High-Quality Path Planning.
Way to go: A framework for multi-level planning in games Norman Jaklin Wouter van Toll Roland Geraerts Department of Information and Computing Sciences.
Creating High-quality Roadmaps for Motion Planning in Virtual Environments Roland Geraerts and Mark Overmars IROS 2006.
 Mankyu Sung Scalable, Controllable, Efficient and convincing crowd simulation (2005)  Michael Gleicher “I have a bad case of Academic Attention Deficit.
Fractional Cascading CSE What is Fractional Cascading anyway? An efficient strategy for dealing with iterative searches that achieves optimal.
Motion planning, control and obstacle avoidance D. Calisi.
1 Minimum Ratio Contours For Meshes Andrew Clements Hao Zhang gruvi graphics + usability + visualization.
Robert Pless, CS 546: Computational Geometry Lecture #3 Last Time: Convex Hulls Today: Plane Sweep Algorithms, Segment Intersection, + (Element Uniqueness,
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
High-Quality Simplification with Generalized Pair Contractions Pavel Borodin,* Stefan Gumhold, # Michael Guthe,* Reinhard Klein* *University of Bonn, Germany.
Presenter: Robin van Olst. Avneesh SudRussell Gayle Erik Andersen Stephen GuyMing Lin Dinesh Manocha.
Chapter 4.2 Collision Detection and Resolution. 2 Collision Detection Complicated for two reasons 1. Geometry is typically very complex, potentially requiring.
On Improving the Clearance for Robots in High-Dimensional Configuration Spaces Roland Geraerts and Mark Overmars IROS 2005.
Filling Arbitrary Holes in Finite Element Models 17 th International Meshing Roundtable 2008 Schilling, Bidmon, Sommer, and Ertl.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song, Nancy M. Amato Department of Computer Science Texas A&M University College Station,
Dynamic Medial Axis Based Motion Planning in Sensor Networks Lan Lin and Hyunyoung Lee Department of Computer Science University of Denver
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
Graphical Dictionaries Presentation by Roger Kahn1 Graphical Dictionaries & Memorable Space of Graphical Passwords.
Navigation Meshes for Realistic Multi-Layered Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts Utrecht University, The Netherlands.
Visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Surface Simplification Using Quadric Error Metrics.
Data Structures for Computer Graphics Point Based Representations and Data Structures Lectured by Vlastimil Havran.
Ioannis Karamouzas, Roland Geraerts, Mark Overmars Indicative Routes for Path Planning and Crowd Simulation.
A Navigation Mesh for Dynamic Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts CASA 2012.
Introduction Tracking the corners Camera model and collision detection Keyframes Path Correction Controlling the entire path of a virtual camera In computer.
UNC Chapel Hill M. C. Lin Point Location Reading: Chapter 6 of the Textbook Driving Applications –Knowing Where You Are in GIS Related Applications –Triangulation.
1 CO Games Development 1 Week 6 Introduction To Pathfinding + Crash and Turn + Breadth-first Search Gareth Bellaby.
Flow Fields Hao Li and Howard Hamilton. Motivation for Flow Fields Multiple AI algorithms in a computer game can produce conflicting results. The AI must.
Using the Corridor Map Method for Path Planning for a Large Number of Characters Roland Geraerts, Arno Kamphuis, Ioannis Karamouzas, Mark Overmars MIG’08.
ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, :00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.
Line Arrangement Chapter 6. Line Arrangement Problem: Given a set L of n lines in the plane, compute their arrangement which is a planar subdivision.
Roland Geraerts Seminar Crowd Simulation 2011
Motion Planning in Games Mark Overmars Utrecht University.
Adrian Treuille, Seth Cooper, Zoran Popović 2006 Walter Kerrebijn
Jumping, Climbing, and Tactical Reasoning Section 2.5 Tom Schaible CSE 497 – AI & Game Programming.
From Path Planning to Crowd Simulation
View-dependent Adaptive Tessellation of Spline Surfaces
Learning to Navigate Through Crowded Environments Peter Henry 1, Christian Vollmer 2, Brian Ferris 1, Dieter Fox 1 Tuesday, May 4, University of.
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
Wouter G. van Toll Atlas F. Cook IV Roland Geraerts Realistic Crowd Simulation with Density-Based Path Planning ICT.OPEN / ASCI October 22nd, 2012.
Crowd Self-Organization, Streaming and Short Path Smoothing 學號: 姓名:邱欣怡 日期: 2007/1/2 Stylianou Soteris & Chrysanthou Yiorgos.
Roland Geraerts and Erik Schager CASA 2010 Stealth-Based Path Planning using Corridor Maps.
Rendering Large Models (in real time)
APE'07 IV INTERNATIONAL CONFERENCE ON ADVANCES IN PRODUCTION ENGINEERING June 2007 Warsaw, Poland M. Nowakiewicz, J. Porter-Sobieraj Faculty of.
UNC Chapel Hill David A. O’Brien Automatic Simplification of Particle System Dynamics David O’Brien Susan Fisher Ming C. Lin Department of Computer Science.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Distance Computation “Efficient Distance Computation Between Non-Convex Objects” Sean Quinlan Stanford, 1994 Presentation by Julie Letchner.
You can check broken videos in this slide here :
Indicative Routes for Path Planning and Crowd Simulation
A Comparative Study of Navigation Meshes . Motion in Games 2016
A Comparative Study of Navigation Meshes . Motion in Games 2016
Crowd Simulation (INFOMCRWS) - Course Introduction
Crowd Simulation (INFOMCRWS) - Introduction to Crowd Simulation
A Comparative Study of Navigation Meshes
Roland Geraerts and Mark Overmars CASA’08
Crowd Simulation (INFOMCRWS) - UU Crowd Simulation Software
Workshop II UU Crowd Simulation Framework
Workshop 1: Crowd Simulation Software & Collision Avoidance
Toward Solving Pathfinding
Alan Kuhnle*, Victoria G. Crawford, and My T. Thai
Classic Motion Planning Methods
Presentation transcript:

Multi-Layered Navigation Meshes Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts ICT.OPEN 2011

2 / 18 Motivation Path planning in games and simulations Send virtual characters from start to goal… – …in a smooth an visually convincing way… – …such that they pay attention to other characters – …in real-time, even for large crowds Typical solution: navigation mesh – Subdivision of the walkable space into 2D polygons – Allows smooth, flexible movement – Should be built automatically…

3 / 18 Research is necessary! If you think path planning in games is “solved”…

4 / 18 What to do? What’s the problem? Human error Poor data structures Poor algorithms What do we want? A general framework, as automatic as possible Our framework: path planning with corridors – Automatically built navigation mesh – Global path planning – Local forces Our paper

5 / 18 2D data structure: The medial axis The set of all points with at least two closest obstacle points “The middle” of the walkable space Maximum clearance to obstacles Preserves connectivity  A useful roadmap – “If there’s no path on the medial axis, then there’s no path at all”

6 / 18 The Explicit Corridor Map (ECM) Annotated medial axis (Geraerts, 2010) All event points store a closest obstacle point on both sides Exact subdivision of the walkable space A navigation mesh O(n) storage O(n log n) build time

7 / 18 The Explicit Corridor Map (ECM) - 2 Features of the ECM Global planning – On the MA only: efficient! – Result: path + corridor Indicative Route Method – (Karamouzas et al., 2009) Short paths with clearance Collision avoidance Local updates – “A Navigation Mesh for Dynamic Environments”, submitted to ICRA ‘12  Efficient, flexible path planning & crowd simulation

8 / 18 Multi-layered navigation? Crowd simulation is often a 2D problem Many “3D” environments have a 2D top view (footprint) But what about multi-layered environments? It’s not 2D It’s not 3D  It’s a set of connected 2D problems Existing methods are approximating 3D grid: loss of precision Our method is exact

9 / 18 This paper We extend the ECM to multi-layered environments It is constructed automatically Assumption: layers are given – Can be extracted from 3D data All 2D algorithms will still work  Real-time crowd simulation in multi-layered environments Recall: The ECM is an annotated medial axis Our algorithm first builds the multi-layered medial axis Same annotations: multi-layered ECM

10 / 18 C 01 Multi-layered: Definitions What is a multi-layered environment? A realistic set of layers and connections Layer L i Bounded planar area with a polygonal footprint  2D Connection C AB Line segment connecting L A to L B Half obstacle in L A, half window to L B (access side) Also appears in L B, with flipped sides “Realistic” Layers are logically connected All footprints are taken from 1 top view

11 / 18 Computing the M-L medial axis Construction algorithm 1. Build the 2D medial axis of each layer… – …treating connections as impassable obstacles – Correct, except in influence zones – i.e. the areas with an access side as a closest obstacle – These must be filled in

12 / 18 Computing the M-L medial axis - 2 Construction algorithm 2. Open up the connections one by one – Choose any connection, say C AB between layers L A and L B – Find the connection scene S AB : all obstacles adjacent to C AB – Compute the medial axis of S AB – Merge it with the medial axes of L A and L B – Treat L A and L B as one layer from now on 3. Repeat until all connections are open Result: 1 continuous medial axis of the whole environment LALA LBLB C AB

13 / 18 Computing the M-L medial axis - 3 Example Note: extra vertices on layer transitions Complexity n = #obstacle vertices; k = #connections Storage: O(n) usually O(kn) worst-case Construction: O(n log n) usually O(kn log n) worst-case – Worst case is very uncommon Incremental approach handles every case! Connections may be close together Order of opening does not matter

14 / 18 Result: Multi-layered ECM Add closest-point annotations ECM computed in 46 ms Real-time multi-layered crowd simulation

15 / 18 Experimental results Adding obstacles hardly affects stitching time Connection influence is usually local Running time increases with #connections Improvements are possible We can steer very large crowds in real-time Tens of thousands of characters

16 / 18 Conclusion Our incremental algorithm… builds the medial axis of a multi-layered environment extends this to the multi-layered Explicit Corridor Map Our navigation mesh… is built automatically, given the separate layers is the first exact mesh for polygonal multi-layered environments supports efficient and flexible crowd simulation

17 / 18 Future work What can still be added? Faster automatic layer extraction – Ongoing MSc projects Other game actions and environments – Jumping, 3D surfaces, … There will always be new interesting problems

18 / 18 The End Thank you!