Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
NavigationLink3D
实验性: This class may be changed or removed in future versions.
连接两个位于 NavigationRegion3D 上的位置的链接,导航时能够让代理走这个链接。
描述
连接两个位于 NavigationRegion3D 上的位置的链接,导航时能够让代理走这个链接。这两个位置可以在同一个 NavigationRegion3D 上,也可以是在两个不同的区块上。链接可以用来表达沿着导航网格表面行进以外的导航方法,例如滑锁、传送、跳过沟壑等等。
教程
属性
|
||
|
||
|
||
|
||
|
||
|
||
|
方法
get_global_end_position() const |
|
get_global_start_position() const |
|
get_navigation_layer_value(layer_number: int) const |
|
get_navigation_map() const |
|
get_rid() const |
|
void |
set_global_end_position(position: Vector3) |
void |
set_global_start_position(position: Vector3) |
void |
set_navigation_layer_value(layer_number: int, value: bool) |
void |
set_navigation_map(navigation_map: RID) |
属性说明
返回这个连接是可以双向通行,还是只能从 start_position 通向 end_position。
该链接当前是否处于活动状态。如果为 false
,则 NavigationServer3D.map_get_path() 会忽略这个链接。
Vector3 end_position = Vector3(0, 0, 0)
🔗
链接的结束位置。
链接会搜索导航网格中最接近这个位置的多边形,并将自身与该多边形相关联。
链接搜索的距离由 NavigationServer3D.map_set_link_connection_radius() 控制。
当寻路从其他地区的导航网格进入该链接时,enter_cost 会加到路径距离中,用于确定最短路径。
决定链接所属导航层的位域。使用 NavigationServer3D.map_get_path() 请求路径时会检查这些导航层。
Vector3 start_position = Vector3(0, 0, 0)
🔗
链接的起始位置。
链接会搜索导航网格中最接近这个位置的多边形,并将自身与该多边形相关联。
链接搜索的距离由 NavigationServer3D.map_set_link_connection_radius() 控制。
当寻路沿着该链接移动时,移动距离会和 travel_cost 相乘,用于确定最短路径。
方法说明
Vector3 get_global_end_position() const 🔗
返回该链接的 end_position 的全局位置。
Vector3 get_global_start_position() const 🔗
返回该链接的 start_position 的全局位置。
bool get_navigation_layer_value(layer_number: int) const 🔗
返回 navigation_layers 位掩码中指定的层是否启用,给定的 layer_number
应在 1 和 32 之间。
RID get_navigation_map() const 🔗
返回该链接使用的当前导航地图 RID。
返回 NavigationServer3D 上该链接的 RID。
void set_global_end_position(position: Vector3) 🔗
使用全局位置 position
设置相对于链接的结束位置 end_position。
void set_global_start_position(position: Vector3) 🔗
使用全局位置 position
设置相对于链接的起始位置 start_position。
void set_navigation_layer_value(layer_number: int, value: bool) 🔗
根据 value
,启用或禁用 navigation_layers 位掩码中指定的层,给定的 layer_number
应在 1 和 32 之间。
void set_navigation_map(navigation_map: RID) 🔗
设置该链接应使用的导航地图的 RID。默认情况下,该链接会自动加入 World3D 默认导航地图,因此该函数只需要覆盖默认地图即可。