smix8
b840c9837a
Reduce allocations for NavMap synchronisation
...
Improves navigation map sync performance be avoiding unnecessary memory allocations.
2024-11-05 22:10:53 +01:00
Marc Gilleron
a92e1d4a20
Optimize some parts of NavMap::sync
2024-10-19 14:58:49 +01:00
Zi Ye
db194f06e1
Replaced some distance checks with square distance checks in NavMap, wherever the purpose is only to find the nearest element.
2024-10-15 22:06:35 -05:00
smix8
a4cfc77dc0
Move NavigationServer mesh queries to dedicated file
...
Moves all the navigation mesh query related functions from NavMap and NavRegion to a dedicated file and makes them static.
2024-09-03 13:16:35 +02:00
Ershn
c3ee32f106
Use a heap to store traversable polygons for pathfinding
2024-09-01 11:24:14 +09:00
Rémi Verschelde
0274508647
Merge pull request #93498 from smix8/connection_relocation
...
Move NavRegion connections to NavMap
2024-08-19 16:05:05 +02:00
Rémi Verschelde
dbf4be308c
Merge pull request #93583 from smix8/obstacle_monitor
...
Add navigation obstacles to performance monitor stats
2024-08-16 23:45:10 +02:00
Artem
b8fc6b4979
NavigationServer3D.map_get_closest_point_to_segment - add an additional shortest distance check
...
For a case when shortest distance is between some point located on a face's
edge and some point located on a line segment.
2024-06-29 19:50:10 +02:00
smix8
f9876d3a88
Add navigation obstacles to performance monitor stats
...
Adds navigation obstacle count to navigation performance monitor.
2024-06-25 05:17:27 +02:00
smix8
83bd8fa396
Move NavRegion connections to NavMap
...
Moves bookkeeping for connections from region to map where connections are actually made.
2024-06-23 14:49:35 +02:00
smix8
40fc299aa3
Remove unused navigation polygon properties
...
Removes unused navigation polygon properties, a leftover from the old Godot 3 days that used polygon center to polygon center distance for (rather inaccurate) pathfinding cost calculation.
2024-06-22 21:55:48 +02:00
Artem
4ed747e255
Fixed closest edge and face check in NavigationServer3D.map_get_closest_point_to_segment
2024-06-17 15:34:46 +04:00
Per Melin
9b191f669c
Fix NavigationServer3D.get_closest_point_to_segment() with use_collision
2024-06-07 14:24:39 +02:00
A Thousand Ships
86de59d60a
[Core] Add LocalVector::has
for convenience
2024-05-06 18:03:37 +02:00
smix8
2da69294fc
Improve NavigationServer NavMap sync error msgs
...
Improves NavigationServer NavMap sync error msgs.
2024-02-22 13:49:31 +01:00
smix8
313c1d1100
Add function to get navigation map iteration id from NavigationServer
...
Adds function to get navigation map iteration id from NavigationServer.
2024-02-22 09:45:49 +01:00
Rémi Verschelde
24bd30716e
Merge pull request #87959 from Scony/fix-navi-sync-errors
...
Add means for fixing navmap synchronization errors
2024-02-12 13:34:30 +01:00
Pawel Lampe
9ea8d4fa38
Add means for fixing navmap synchronization errors
2024-02-11 21:06:47 +01:00
smix8
4cc8748c47
Make navigation map spatial queries thread-safe
...
Makes navigation map spatial queries thread-safe by adding a readers–writer lock.
2024-02-06 19:27:59 +01:00
Yuri Sizov
d4806d2d84
Merge pull request #85253 from sandygk/fix-reachable-polygon-closest-to-end-point
...
[Navigation] Do not use travel cost for minimum when re-selecting end point
2023-12-19 13:01:45 +01:00
Rémi Verschelde
84692c6252
Navigation: Fix GCC 12.3 -Wtype-limits
warnings
2023-12-12 11:00:06 +01:00
smix8
64a56245d8
Add NavigationServer random point queries
...
Adds query functions to get random points on navigation mesh to the NavigationServer.
2023-12-08 00:18:05 +01:00
Rémi Verschelde
8a9e3ad8d5
Merge pull request #84816 from Scony/add-obstacle-navserver-tests
...
Fix memory leak in 'NavigationServer3D' involving static obstacles
2023-12-04 23:05:39 +01:00
Sandy Gutierrez
11e63d244e
Do not use travel cost for minimum when re-selecting end point
2023-11-28 07:23:58 -05:00
Pawel Lampe
a4b3546577
Fix memory leak in 'NavigationServer3D' involving static obstacles
2023-11-17 21:20:14 +01:00
smix8
3f26191d16
Fix NavigationObstacle height
...
Fixes NavigationObstacle height.
2023-11-13 21:32:22 +01:00
smix8
fc4cc27e66
Fix NavigationObstacle elevation
...
FixesNavigationObstacle elevation.
2023-11-13 06:55:31 +01:00
smix8
ade4d3cf28
Fix NavigationLink enabled toggle
...
Fixes NavigationLink enabled toggle.
2023-10-21 03:11:37 +02:00
Ben Rog-Wilhelm
d0564f2466
Fix NavMesh map_update_id
returning 0 results in errors
2023-08-03 18:57:35 +02:00
Yuri Sizov
d7f07820aa
Merge pull request #79228 from smix8/fix_funnel_4.x
...
Fix pathfinding funnel adding unwanted point
2023-08-02 21:36:46 +02:00
smix8
69fad39cf5
Add NavigationServer API to enable regions and links
...
Adds NavigationServer API to enable regions and links.
2023-07-26 01:20:15 +02:00
smix8
c51e264446
Fix pathfinding funnel adding unwanted point
...
Fixes pathfinding funnel adding unwanted point due to precision issues.
2023-07-23 03:24:14 +02:00
smix8
e5c24f7118
Fix closest possible navigation path position
...
Fixes closest possible navigation path position.
2023-07-08 23:16:47 +02:00
Rémi Verschelde
d0c1dd16ee
Revert "Update RVO2 to git 2022.09"
...
This reverts commit c920881105
.
Fixes #78826 .
2023-06-29 12:50:49 +02:00
smix8
ae9dd47d0c
Add agent pause mode to NavigationServer
...
Adds agent pause mode to NavigationServer.
2023-06-18 12:37:03 +02:00
Rémi Verschelde
25b2f1780a
Style: Harmonize header includes in modules
...
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:
Includes from the platform port or module ("local" includes) should be listed
first in their own block using relative paths, before Godot's "core" includes
which use "absolute" (project folder relative) paths, and finally thirdparty
includes.
Includes in `#ifdef`s come after their relevant section, i.e. the overall
structure is:
- Local includes
* Conditional local includes
- Core includes
* Conditional core includes
- Thirdparty includes
* Conditional thirdparty includes
2023-06-15 14:35:45 +02:00
Rémi Verschelde
754a52a4ab
Merge pull request #78201 from smix8/navmesh_cell_height_4.x
...
Fix `cell_height` for navigation meshes
2023-06-14 09:27:33 +02:00
Rémi Verschelde
375156a637
Merge pull request #78099 from DeeJayLSP/rvo2023
...
Update RVO2 to git 2022.09
2023-06-14 09:25:10 +02:00
DeeJayLSP
c920881105
Update RVO2 to git 2022.09
2023-06-13 21:13:21 -03:00
smix8
180a5cded1
Fix cell_height
for navigation meshes
...
Fixes `cell_height` for navigation meshes.
2023-06-13 23:24:32 +02:00
Rémi Verschelde
c3e4dd86ff
Merge pull request #77693 from smix8/navmap_sync_warnings_4.x
...
Add navigation map synchronization warnings
2023-06-13 13:52:46 +02:00
smix8
7f2417135f
Improve navigation map synchronisation error msgs
...
Improves navigation map synchronisation error msgs related to mismatch of cell sizes.
2023-06-03 11:40:33 +02:00
smix8
fef7b4efdc
Add navigation map synchronization warnings.
...
Adds navigation map synchronization warnings.
2023-05-31 16:23:27 +02:00
smix8
f986b52b3c
Make navigation mesh edge connections optional
...
Makes navigation mesh edge connections optional.
2023-05-11 18:46:34 +02:00
smix8
7e1a261cc6
Prevent unnecessary navigation map synchronizations
...
Prevents unnecessary navigation map synchronizations triggered by redundant calls to setters of e.g. region, link or map properties.
2023-05-11 07:38:16 +02:00
smix8
a6ac305f96
Rework Navigation Avoidance
...
Rework Navigation Avoidance.
2023-05-10 05:01:58 +02:00
Rémi Verschelde
38094dfc4a
Merge pull request #74558 from smix8/navserver_real_t_4.x
...
Fix NavigationServer internals still using float instead of real_t
2023-04-03 16:00:42 +02:00
smix8
184427196f
Fix NavigationAgent enable avoidance crash
...
Fixes NavigationAgent enable avoidance crash.
2023-04-01 12:52:15 +02:00
smix8
64ce93cee9
Fix agents with disabled avoidance getting added to avoidance simulation
...
Fixes that agents with disabled avoidance were getting added to avoidance simulation.
2023-03-14 04:20:57 +01:00
smix8
217a27014b
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.
2023-03-07 22:10:48 +01:00