summaryrefslogtreecommitdiffstats
path: root/servers/navigation_server_3d.h
diff options
context:
space:
mode:
authorGilles Roudière <gilles.roudiere@gmail.com>2021-03-15 12:45:28 +0100
committerGilles Roudière <gilles.roudiere@gmail.com>2021-03-15 15:58:59 +0100
commitac7073f58655094d08daf59e3b1b36946c5ee02b (patch)
treef536b050c4b026fb4aa87c1ddce5f66bc26a2ce0 /servers/navigation_server_3d.h
parent6eef187a81cbdd3cd314776de372e753f79f9831 (diff)
downloadredot-engine-ac7073f58655094d08daf59e3b1b36946c5ee02b.tar.gz
Allow Navigation to be more flexible
Diffstat (limited to 'servers/navigation_server_3d.h')
-rw-r--r--servers/navigation_server_3d.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/servers/navigation_server_3d.h b/servers/navigation_server_3d.h
index beed19d563..420f9c9c18 100644
--- a/servers/navigation_server_3d.h
+++ b/servers/navigation_server_3d.h
@@ -55,7 +55,7 @@ protected:
public:
/// Thread safe, can be used across many threads.
- static const NavigationServer3D *get_singleton();
+ static NavigationServer3D *get_singleton();
/// MUST be used in single thread!
static NavigationServer3D *get_singleton_mut();
@@ -111,9 +111,14 @@ public:
/// Set the navigation mesh of this region.
virtual void region_set_navmesh(RID p_region, Ref<NavigationMesh> p_nav_mesh) const = 0;
- /// Bake the navigation mesh
+ /// Bake the navigation mesh.
virtual void region_bake_navmesh(Ref<NavigationMesh> r_mesh, Node *p_node) const = 0;
+ /// Get a list of a region's connection to other regions.
+ virtual int region_get_connections_count(RID p_region) const = 0;
+ virtual Vector3 region_get_connection_pathway_start(RID p_region, int p_connection_id) const = 0;
+ virtual Vector3 region_get_connection_pathway_end(RID p_region, int p_connection_id) const = 0;
+
/// Creates the agent.
virtual RID agent_create() const = 0;