Commit graph

291 commits

Author SHA1 Message Date
smix8
98f5305d4b Fix NavBase properties not requesting sync
Fixes that setters of NavBase properties never made the link or region dirty and requested a sync.
2025-02-12 12:16:53 +01:00
Kiro
7e9cbfbcb8 Remove erroneous squared version 2025-01-23 20:11:25 +01:00
Thaddeus Crews
86002e1a3c
Merge pull request #100882 from smix8/node_navmesh_geo_parsers
Make nodes handle their respective navigation source geometry
2025-01-16 17:18:01 -06:00
smix8
a7520fca6a Add functions to get axis-aligned bounds of navigation regions
Adds functions to get the navigation mesh Rect2 of a NavigationRegion2D or AABB of a NavigationRegion3D.
2025-01-13 20:18:33 +01:00
smix8
0ed2cb0439 Make nodes handle their respective navigation source geometry
Makes nodes handle their respective navigation source geometry.
2025-01-12 13:14:46 +01:00
Rémi Verschelde
cb483e53ca Merge pull request #101327 from Repiteo/scons/specify-module-optional-dependencies
SCons: Specify optional dependencies for modules
2025-01-09 13:51:14 +01:00
Rémi Verschelde
a682b076d7 Merge pull request #101223 from kiroxas/fixWrongIfConditionIn#100549
Fix wrong condition in `NavMeshQueries3D::_query_task_build_path_corridor`
2025-01-09 11:17:28 +01:00
Thaddeus Crews
f1f33169d9
SCons: Specify optional dependencies for modules 2025-01-08 21:59:18 -06:00
Kiro
f70acb0308 shift the polygon heap only if index is in range 2025-01-07 13:40:17 +01:00
Yufeng Ying
34d8255947 Force build editor with regex module, remove checking code.
Fix include.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-07 19:43:23 +08:00
Kiro
13f548c7f5 Simplify_NavMeshQueries3D::_query_task_build_path_corridor 2025-01-03 08:53:57 +01:00
smix8
4184884ad1 Make NavMeshQueries use NavRegionIteration polygons directly
Removes the duplicated NavMap polygon soup. All navmesh queries now use the NavRegionIteration polygons directly.
2025-01-02 15:35:29 +01:00
Thaddeus Crews
a9b6b3d932
Merge pull request #100776 from AThousandShips/improve_null_checks
Improve use of `Ref.is_null/valid`
2024-12-29 09:35:04 -06:00
smix8
c69408168c Patch navigation map async synchronization
Patches navigation map async synchronization.
2024-12-26 13:04:20 +01:00
A Thousand Ships
a1846b27ea
Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Yufeng Ying
33817b186f Remove unused header in drivers and modules.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2024-12-24 00:40:47 +08:00
smix8
d51615b334 Change navigation map synchronization to an async process
Changes the navigation map synchronization to an async process to avoid stalling the main thread.
2024-12-22 02:03:59 +01:00
smix8
c8242162d1 Fix early navigtion path return
Fixes early navigtion path return.
2024-12-19 01:21:38 +01:00
Rémi Verschelde
7bccc82721
Merge pull request #100401 from kiroxas/Simplify_NavMeshQueries3D_simplify_path_segment
Simplify `NavMeshQueries3D::simplify_path_segment`
2024-12-17 16:19:15 +01:00
Kiro
774e91470c Simplify NavMeshQueries3D::simplify_path_segment 2024-12-16 20:05:41 +01:00
Aaron Franke
0ab3dc273e
Rename internal EditorPlugin icon/name to match exposed methods 2024-12-15 17:31:01 -08:00
smix8
476479419b Despaghettify NavigationServer path queries
Despaghettify NavigationServer path queries.
2024-12-11 22:29:48 +01:00
Chaosus
ba39b078f5 [Scene] Add SceneStringName::FlatButton 2024-12-10 11:12:26 +03:00
smix8
4de615d1ae Fix avoidance dirty flag regression
The dirty flag can also still be set by some legacy functions triggered by the agents and obstacles.
2024-12-06 16:20:59 +01:00
Rémi Verschelde
7f3a8d0b1b
Merge pull request #97928 from kiroxas/navImprovement
Improve `NavMeshQueries3D::polygons_get_closest_point_info` performance
2024-12-02 15:50:11 +01:00
Kiro
4f17a7428b polygons_get_closest_point_info use edge check instead of triangulation 2024-11-29 16:00:04 +01:00
smix8
ba5a3577a5 Make NavMap objects request sync only on demand
Replaces brute-force sync check loop with a self-listing system where each object is responsible for its own dirty sync, requesting it on demand only.
2024-11-27 01:00:07 +01:00
smix8
37c3907d0e Change navigation map performance monitor to use a struct
Changes navigation map performance monitor to use a struct as it is easier to pass to sub functions.
2024-11-24 13:27:45 +01:00
Kiro
3a946aaa73 fixed navigation obstacle carving broken during 07b7f76 2024-11-15 13:47:47 +01:00
Thaddeus Crews
e960aa319f
Merge pull request #99030 from tracefree/obstacle_2d_transform
Make use of NavigationObstacle2D's transform
2024-11-12 09:28:03 -06:00
Rie
e39fc3e8c2 Make use of NavigationObstacle2D's transform 2024-11-11 23:34:47 +01:00
Thaddeus Crews
848d90837e
Merge pull request #96730 from tracefree/properly_transforming_obstacles
Make use of NavigationObstacle3D's transform
2024-11-11 14:18:33 -06:00
Kiro
07b7f76896
Improve NavMeshGenerator2D::generator_bake_from_source_geometry_data performance
Avoid copies and redundant work.
2024-11-11 12:31:19 +01:00
Rie
44ef3d35eb Make use of NavigationObstacle3D's transform
Co-authored-by: a0kami <dev.aokami@netc.fr>
2024-11-10 17:08:12 +01:00
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
Thaddeus Crews
2450dee1bc
Merge pull request #93401 from Repiteo/style/clang-tidy-fixes
Style: Apply `clang-tidy` fixes
2024-11-04 21:52:05 -06:00
Thaddeus Crews
6206578060
Merge pull request #90182 from Zylann/nav_map_optimizations
Optimize some parts of `NavMap::sync`
2024-11-04 21:51:52 -06:00
Thaddeus Crews
89a311205f
Style: Apply clang-tidy fixes
• `modernize-use-default-member-init` and `readability-redundant-member-init`
• Minor adjustments to `.clang-tidy` to improve syntax & remove redundancies
2024-11-04 12:11:06 -06:00
Thaddeus Crews
696ca9db3c
Merge pull request #98039 from aaronfranke/button-icon
Rename internal Button `*_icon` functions to `*_button_icon` to match exposed methods
2024-10-29 19:25:59 -05:00
Aaron Franke
562c666e3d
Rename internal Button icon to button_icon to match exposed methods 2024-10-29 16:23:03 -07:00
Adam Scott
0d350e7108
Set clang-format RemoveSemicolon rule to true
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04: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
Thaddeus Crews
9f9ee0c813
SCons: Add unobtrusive type hints in SCons files 2024-09-25 09:34:35 -05:00
Thaddeus Crews
b37fc1014a
Style: Apply new clang-format changes 2024-09-20 08:09:48 -05:00
Rémi Verschelde
b6906b9677
Merge pull request #96389 from kitbdev/extract-main-screen
Extract EditorMainScreen from EditorNode
2024-09-11 12:34:46 +02:00
smix8
287fdb16d5 Add navigation region point and segment queries
Adds point and segment queries for regions, e.g. closet point, point normal, or segment intersection.
2024-09-10 01:38:46 +02:00
kit
5e1c9d68aa Extract editor main screen 2024-09-09 11:06:18 -04: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
Rémi Verschelde
e004ae7bbe
Merge pull request #85965 from ershn/use_heap_in_astar_path_finding
Improve pathfinding performance by using a heap to store traversable polygons
2024-09-03 11:42:48 +02:00