Up to date
This page is up to date for Godot 4.0
. If you still find outdated information, please open an issue.
NavigationLink3D
Inherits: Node3D < Node < Object
Creates a link between two positions that NavigationServer3D can route agents through.
Description
Creates a link between two positions that NavigationServer3D can route agents through. Links can be used to express navigation methods that aren’t just traveling along the surface of the navigation mesh, like zip-lines, teleporters, or jumping across gaps.
Tutorials
Properties
| ||
| ||
| ||
| ||
| ||
| ||
|
Methods
get_global_end_position ( ) const | |
get_global_start_position ( ) const | |
get_navigation_layer_value ( int layer_number ) const | |
void | set_global_end_position ( Vector3 position ) |
void | set_global_start_position ( Vector3 position ) |
void | set_navigation_layer_value ( int layer_number, bool value ) |
Property Descriptions
bool bidirectional = true
Whether this link can be traveled in both directions or only from start_position to end_position.
bool enabled = true
Whether this link is currently active. If false
, NavigationServer3D.map_get_path will ignore this link.
Vector3 end_position = Vector3(0, 0, 0)
Ending position of the link.
This position will search out the nearest polygon in the navigation mesh to attach to.
The distance the link will search is controlled by NavigationServer3D.map_set_link_connection_radius.
float enter_cost = 0.0
When pathfinding enters this link from another regions navigation mesh the enter_cost value is added to the path distance for determining the shortest path.
int navigation_layers = 1
A bitfield determining all navigation layers the link belongs to. These navigation layers will be checked when requesting a path with NavigationServer3D.map_get_path.
Vector3 start_position = Vector3(0, 0, 0)
Starting position of the link.
This position will search out the nearest polygon in the navigation mesh to attach to.
The distance the link will search is controlled by NavigationServer3D.map_set_link_connection_radius.
float travel_cost = 1.0
When pathfinding moves along the link the traveled distance is multiplied with travel_cost for determining the shortest path.
Method Descriptions
Vector3 get_global_end_position ( ) const
Returns the end_position that is relative to the link as a global position.
Vector3 get_global_start_position ( ) const
Returns the start_position that is relative to the link as a global position.
bool get_navigation_layer_value ( int layer_number ) const
Returns whether or not the specified layer of the navigation_layers bitmask is enabled, given a layer_number
between 1 and 32.
void set_global_end_position ( Vector3 position )
Sets the end_position that is relative to the link from a global position
.
void set_global_start_position ( Vector3 position )
Sets the start_position that is relative to the link from a global position
.
void set_navigation_layer_value ( int layer_number, bool value )
Based on value
, enables or disables the specified layer in the navigation_layers bitmask, given a layer_number
between 1 and 32.