Commit Graph

87 Commits

Author SHA1 Message Date
176a0e129c Fix querying paths. 2023-09-05 11:57:53 +02:00
8880722565 Removed cell height getters and setters from the Navigation2DServer. 2023-09-05 11:57:34 +02:00
73c1f1f673 Fix logic in NavMap::sync(). 2023-09-04 22:00:26 +02:00
a222159442 Backported from godot4: Add NavigationServer API to enable regions and links
Adds NavigationServer API to enable regions and links.
- smix8
69fad39cf5
2023-09-04 20:22:28 +02:00
b37e0e6a4e Backported from godot4: Update navigation obstacle API
Updates navigation obstacle API.
- smix8
c1fc331b88
2023-09-04 19:55:32 +02:00
aeb4d3fbe2 Backported from godot4: Add agent pause mode to NavigationServer
Adds agent pause mode to NavigationServer.
- smix8
https://github.com/godotengine/godot/commit/ae9dd47d0c1c237d0733439862aa5ff651dcac2
2023-09-04 19:04:29 +02:00
2f036edcc5 Backported from godot4: Fix cell_height for navigation meshes
Fixes `cell_height` for navigation meshes.
- smix8
180a5cded1
2023-09-04 18:34:15 +02:00
dcd93ef8ba Backported from godot4: Fix NavMesh map_update_id returning 0 results in errors
- zorbathut
d0564f2466
2023-09-04 17:56:34 +02:00
e3f2ee62ca Backported from godot4: Fix pathfinding funnel adding unwanted point
Fixes pathfinding funnel adding unwanted point due to precision issues.
- smix8
c51e264446
2023-09-04 17:40:28 +02:00
8485b37515 Ported from godot4: Fix Navigation API abbreviations inconsistency
Schema for navigation to name user facing API with  "navigation" without abbreviation and e.g. NavigationServer internals with abbr "nav".
- smix8
34e7628f5f
2023-09-04 17:09:39 +02:00
f84d928aff Backported from godot4: Improve NavigationServer.free() error msg when RID not found
Improves the error msg when NavigationServer.free() does not find the RID e.g. because it was already deleted or did never exist in the first place.
- smix8
b51cab3411
2023-09-03 09:23:39 +02:00
71fef953da Backported from godot4: Add more hints to navigation map cell size errors
Adds more hints to navigation map cell size errors.
- smix8
90e2d9fa7e
2023-09-02 13:43:37 +02:00
cb45a4b951 Backported from godot4: Fix closest possible navigation path position
Fixes closest possible navigation path position.
- smix8
e5c24f7118
2023-09-02 13:33:32 +02:00
2f1447dfe5 Backported from godot4: Add NavigationRegion rotation warning
Adds NavigationRegion rotation warning.
- smix8
4d8553ff63
2023-09-02 13:15:19 +02:00
e3f889a63b Backported from godot4: Improve navigation map synchronisation error msgs
Improves navigation map synchronisation error msgs related to mismatch of cell sizes.
- smix8
7f2417135f
2023-09-02 13:07:00 +02:00
6db8d89ab7 Backported from godot4: Add navigation map synchronization warnings.
- smix8
fef7b4efdc
2023-09-02 13:05:19 +02:00
c55f0b4520 Backported from godot4: Fix NavigationServer free error print
Fixes error print for NavigationServer free when a RID can not be found.
- smix8
73dc680fc1
2023-09-02 12:58:49 +02:00
de1763d40d Renamed neighbor_dist properties / getters / setters for the navigation server. 2023-06-12 08:37:57 +02:00
f058c87868 Backported from godot4: Rework Navigation Avoidance
Rework Navigation Avoidance.
- smix8
a6ac305f96
2023-06-10 20:58:49 +02:00
8b18898609 Backported from godot4: Rework const on NavigationServer methods
`const` is used on all methods, even when they cause modification of the server.  This reworks the methods of the server to only use `const` on method that don't change the state of the server.
- DarkKilauea
a0715b30f9
2023-06-09 22:03:42 +02:00
6384b9624f Ported from godot4: Make navigation mesh edge connections optional
Makes navigation mesh edge connections optional.
- smix8
f986b52b3c
2023-06-09 20:54:05 +02:00
29784d5d5b Ported from godot4: 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.
- DarkKilauea
5769b0e8d8
2023-06-09 19:46:44 +02:00
160cb38a50 Ported from godot4: Add support for emitting a signal when entering a NavLink
- DarkKilauea
5d8ba2b2d1
2023-06-09 19:08:38 +02:00
e07fd6da59 Ported from godot4: Prevent unnecessary navigation map synchronizations
Prevents unnecessary navigation map synchronizations triggered by redundant calls to setters of e.g. region, link or map properties.
- smix8
7e1a261cc6
2023-06-09 16:43:14 +02:00
19fac49904 Turn PoolVectors in NavigationPathQueryResults into Vectors. 2023-06-09 16:27:24 +02:00
c11500d480 Ported from godot4: Rename Navigation uses of 'location' to 'position'
Contrary to the entire rest of the engine NavigationAgent's and NavigationLinks decided to deal with locations instead of positions.
- smix8
bf1571979c
2023-06-09 10:28:31 +02:00
b940854ca9 Ported from godot4: Add NavigationServer Performance Monitor
Adds Performance Monitor for NavigationServer3D.
- smix8
9802914f97
2023-06-09 10:17:43 +02:00
038329e7d0 Backported form godot4: Fix NavigationServer internals still using float instead of real_t
Fixes that some NavigationServer internals still used float instead of real_t in some parts.
- smix8
217a27014b
2023-06-09 08:53:00 +02:00
0438c3cc3f Backported from godot4: Added node for Navigation links .
- DarkKilauea
3dd59013f4
2023-06-08 20:46:09 +02:00
f6e65112d7 Backported from godot4: Add NavigationPathQuery
Adds NavigationPathQueryParameters objects that can be used with NavigationServer.query_path() to query a customized navigation path.
- smix8
63dcb9aa80
2023-06-08 18:23:48 +02:00
82316363eb Removed the old navigation mesh generator and it's editor plugin. 2023-06-06 13:59:33 +02:00
890d6f1b28 Removed region_bake_navmesh from the NavigationServer. 2023-06-06 09:36:19 +02:00
b7892d6baf Backported from godot4: Implement NavigationMesh bake area.
Adds two new properties to NavigationMesh resources to restrict the navmesh baking to an area enclosed by an AABB with volume.
- smix8
0c4d99f4fd
2023-06-05 14:24:42 +02:00
6589d075bb Ported the improvements to the NavigationPolygon from the aforementioned pull request. 2023-06-05 14:13:02 +02:00
0a3d1d6cf5 Added in NavigationMeshGeneratorDummy and set up initialization. 2023-06-03 20:00:42 +02:00
2114b2239b Split NavigationPolygon and NavigationPolygonInstance into 2 files. Also renamedNavigationPolygonInstance to NavigationRegion2D. 2023-06-03 16:54:48 +02:00
1c505fe527 Make sure the dummy navigation server is used automatically if the normal is disabled. 2023-04-16 19:10:30 +02:00
86bdecbfe9 Now more than one Naviugation2D servers can be registered. 2023-04-16 18:19:57 +02:00
f6c1c1dc8d Move NavigationServer2d's forwarding logic to the navigation module as a new derived class. 2023-04-16 18:11:15 +02:00
7068f1834e Now more than one Navigation Server can be registered. 2023-04-16 17:42:34 +02:00
8d7090241a Make sure that the editor can be built even when the new code_editor module is disabled. 2023-02-17 23:20:10 +01:00
1b0aac6028 Renamed Map to RBMap. 2023-01-15 19:12:50 +01:00
227e32b67c Now modules make use of the new registration levels. 2023-01-15 17:04:00 +01:00
8075ef8e62 Added include guards to all module register_types.h-s. 2023-01-15 13:27:08 +01:00
e9a19c1a66 Added module initialization levels (similar idea to what's in godot4, although I added more). 2023-01-15 11:46:13 +01:00
bad1d64314 Fix compile and small cleanups after the backports. 2022-12-22 15:24:53 +01:00
smix8
9225e78f68 Fix Navigation agent callback wild pointer crash
Fixes crash in sanitizer builds when callback agent or object are already freed.

(cherry picked from commit 194c1c44e0a20faa4463e3a41bb12cf93a71fc03)
2022-12-22 14:12:00 +01:00
Haoyu Qiu
6126ddab8e Backport navigation crash fixes
Co-Authored-By: Sean <sean@geekotron.net>
2022-11-30 14:41:16 +01:00
575a19eafb Added back GridMap support for the NavigationMeshGenerator. 2022-10-09 00:01:13 +02:00
smix8
1c0898763c Fix avoidance calculation on NO_THREADS build 2022-10-08 17:24:55 +02:00