diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2022-06-03 10:49:39 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-03 10:49:39 +0200 |
commit | 798b39ed44a053111ade243296d0ecad0e832444 (patch) | |
tree | 8806492e6f5de8b035f70ceefcb68eb64f3cd3ae | |
parent | 60f66958dcf7c0e5c7df0302959e432d6b002aad (diff) | |
parent | 8bcce0ebb2ab5da94cc86f77df4c86f63bc5d22e (diff) |
Merge pull request #61623 from smix8/navigation_navpoly_getmesh_4.x
-rw-r--r-- | doc/classes/NavigationPolygon.xml | 6 | ||||
-rw-r--r-- | scene/2d/navigation_region_2d.cpp | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/doc/classes/NavigationPolygon.xml b/doc/classes/NavigationPolygon.xml index ee57d8f26b..0a2ceeedc5 100644 --- a/doc/classes/NavigationPolygon.xml +++ b/doc/classes/NavigationPolygon.xml @@ -80,6 +80,12 @@ Clears the array of polygons, but it doesn't clear the array of outlines and vertices. </description> </method> + <method name="get_mesh"> + <return type="NavigationMesh" /> + <description> + Returns the [NavigationMesh] resulting from this navigation polygon. This navmesh can be used to update the navmesh of a region with the [method NavigationServer3D.region_set_navmesh] API directly (as 2D uses the 3D server behind the scene). + </description> + </method> <method name="get_outline" qualifiers="const"> <return type="PackedVector2Array" /> <argument index="0" name="idx" type="int" /> diff --git a/scene/2d/navigation_region_2d.cpp b/scene/2d/navigation_region_2d.cpp index 260faf1d68..41773d81c5 100644 --- a/scene/2d/navigation_region_2d.cpp +++ b/scene/2d/navigation_region_2d.cpp @@ -331,6 +331,7 @@ void NavigationPolygon::_bind_methods() { ClassDB::bind_method(D_METHOD("get_polygon_count"), &NavigationPolygon::get_polygon_count); ClassDB::bind_method(D_METHOD("get_polygon", "idx"), &NavigationPolygon::get_polygon); ClassDB::bind_method(D_METHOD("clear_polygons"), &NavigationPolygon::clear_polygons); + ClassDB::bind_method(D_METHOD("get_mesh"), &NavigationPolygon::get_mesh); ClassDB::bind_method(D_METHOD("add_outline", "outline"), &NavigationPolygon::add_outline); ClassDB::bind_method(D_METHOD("add_outline_at_index", "outline", "index"), &NavigationPolygon::add_outline_at_index); |