Enable assigning an owner to navigation regions and links
This allows users of the server APIs to get back the nodes that created certain regions and links.
This commit is contained in:
parent
39fe0bfdc3
commit
5769b0e8d8
15 changed files with 140 additions and 0 deletions
|
|
@ -656,6 +656,7 @@ bool GridMap::_octant_update(const OctantKey &p_key) {
|
|||
|
||||
if (bake_navigation) {
|
||||
RID region = NavigationServer3D::get_singleton()->region_create();
|
||||
NavigationServer3D::get_singleton()->region_set_owner_id(region, get_instance_id());
|
||||
NavigationServer3D::get_singleton()->region_set_navigation_layers(region, navigation_layers);
|
||||
NavigationServer3D::get_singleton()->region_set_navmesh(region, navmesh);
|
||||
NavigationServer3D::get_singleton()->region_set_transform(region, get_global_transform() * nm.xform);
|
||||
|
|
@ -779,6 +780,7 @@ void GridMap::_octant_enter_world(const OctantKey &p_key) {
|
|||
Ref<NavigationMesh> nm = mesh_library->get_item_navmesh(cell_map[F.key].item);
|
||||
if (nm.is_valid()) {
|
||||
RID region = NavigationServer3D::get_singleton()->region_create();
|
||||
NavigationServer3D::get_singleton()->region_set_owner_id(region, get_instance_id());
|
||||
NavigationServer3D::get_singleton()->region_set_navigation_layers(region, navigation_layers);
|
||||
NavigationServer3D::get_singleton()->region_set_navmesh(region, nm);
|
||||
NavigationServer3D::get_singleton()->region_set_transform(region, get_global_transform() * F.value.xform);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue