0% found this document useful (0 votes)
139 views

Pathfinding in 3d Space

This document discusses pathfinding algorithms for 3D spaces. It reviews existing graph-based shortest path algorithms like Dijkstra's algorithm, A*, and Theta* and their applications to 2D and 3D surfaces. It then presents the authors' approach of using an octree representation, lazy Theta* algorithm, and edge-corner graph to find efficient paths in 3D environments for applications like video games and drone navigation. Evaluation results demonstrate the performance of their algorithm.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
139 views

Pathfinding in 3d Space

This document discusses pathfinding algorithms for 3D spaces. It reviews existing graph-based shortest path algorithms like Dijkstra's algorithm, A*, and Theta* and their applications to 2D and 3D surfaces. It then presents the authors' approach of using an octree representation, lazy Theta* algorithm, and edge-corner graph to find efficient paths in 3D environments for applications like video games and drone navigation. Evaluation results demonstrate the performance of their algorithm.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Pathfinding in

3D Space
CHIA-MAN HUNG & RUOQI HE
Outline

 Introduction
 I. State of the art
 II. Algorithms
 III. Implementation in 3D space
 IV. Results
 Conclusion
Introduction

 Objective: Find the shortest paths efficiently in 3D space


 Applications: video games, drone navigation
I. State of the art
 Homeworld (1999) :
First famous real-time strategy game with movement in 3D space
I. State of the art

 Shortest paths in a graph


 Dijkstra (single source)
 O((|V|+|E|)log(|V|))
 Bellman-Ford (single source, weighted directed graph)
 O(|V||E|)
 Floyd-Warshall (for all pairs of vertices, weighted graph , no negative cycle)
 O(|V|3)
 A* (single source, single destination)
 O(n), n = length of the solution path => O(|E|)
I. State of the art

 2D - exact
 Visibility graph
 Anya (2D grid)

 2D - approximate
 Waypoints
 Navigation mesh + tunnel
 Family of Theta*
Non-optimality

 Navigation mesh + tunnel

path found VS true shortest path


I. State of the art

 3D surface - exact
 Windows (Fast exact and approximate geodesics on meshes 2005
Surazhsky)

 3D surface - approximate
 Heat (Geodesics in heat 2013 Crane)
 Fast-marching (1996 Sethian)
II. Algorithms

 World representation
 Tetrahedralization
 Convex decomposition
 Grid
 Octree
II. Algorithms

 A* (1968 Hart)
h admissible if
no over-estimation and
h(y) <= h(x) + d(x, y)
II. Algorithms

 Theta* (2007 Nash)


II. Algorithms

 Lazy Theta* (2010 Nash)


III. Implementation

 Octree construction
 Triangle-cube intersection
 Progressive octree
 Graph construction

Dual graph (not standard) Edge-corner


III. Implementation

 Line of sight
 Fast
 Robust
III. Implementation

 Injection of source and destination


III. Implementation - Optimisation

 Avoid exhaustive search


 Precompute the connectivity of the graph nodes
III. Implementation - Optimisation

 Multisource
 Reuse information
III. Implementation - Extension

 Application in video games


 Waypoints
 Repulsive force
 Replanning
IV. Results

Red: A*
Green: Theta*
Blue: Lazy Theta*
IV. Results

Red: A*
Green: Theta*
Blue: Lazy Theta*
IV. Results

Red: A*
Green: Theta*
Blue: Lazy Theta*
Non-optimality of Theta*
Demo !

 Demo !
 Demo !
 Demo !
 Demo !
 Demo !
 Demo !

 Demo !

 Demo !
Conclusion

 Exploration in a new domain


 Our proposition : Lazy Theta * + Progressive Octree + Edge-corner graph
 Possible Improvements
 Distribution of computation at each frame
 Other possibilities of h
 Post-processing

You might also like