1
0
Fork 0
Commit Graph

51 Commits

Author SHA1 Message Date
smix8 419fc6e22d Make NavigationServer backend engine selectable
Adds engine backend selection for NavigationServers, aka allows to swap navigation module for other backend implementations.
2025-10-30 08:59:06 +01:00
Thaddeus Crews b17aa3343a
Revert "SCons: Add `CPPEXTPATH` for external includes" 2025-10-06 13:09:22 -05:00
Aaron Franke 3d1c9fd5de
Move server files into their subfolders 2025-09-30 19:39:39 -07:00
Aaron Franke 9fbf5808a0
Rename server "free" functions to "free_rid" to match exposed API 2025-09-30 16:52:25 -07:00
smix8 19df15f1dc Make navmesh rasterization errors more lenient
Make navmesh rasterization on the navigation regions and map more lenient by starting out with a lower internal cell scale by default and changing the merge error to just warning that can be toggled.
2025-09-25 20:18:18 +02:00
Edward Moulsdale e366471fdc Add GDSOFTCLASS to deeper inheritors of Object 2025-09-24 19:15:56 +01:00
smix8 a3f393a3e1 Fix path post-processing edgecentered
Fixes path post-processing edgecentered.
2025-08-01 15:06:30 +02:00
Thaddeus Crews 9d917f4b14
Merge pull request #108281 from dmlary/nav_obstacle-avoidance-enabled-fix
NavMap3D: check if obstacles have avoidance enabled
2025-07-07 10:08:00 -05:00
A Thousand Ships f11aff3841
Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
David M. Lary 09c9bccb85 NavMap3D: check if obstacles have avoidance enabled
In `NavMap3D::_update_rvo_obstacles_tree_2d()` check if the
`NavObstacle3D` has avoidance enabled before adding it to the
tree.

fixes #108259
2025-07-04 10:16:40 -05:00
Pāvels Nadtočajevs a272376f89
Cleanup accessibility names. 2025-06-23 11:08:36 +03:00
smix8 cbd446ac29 Add navigation path query parameter limits
Adds navigation path query parameter limits.
2025-06-13 14:42:26 +02:00
smix8 7ae2c0af9d Add MultiNodeEdit support for NavigationRegion3D
Adds MultiNodeEdit support for NavigationRegion3D.
2025-06-10 16:59:29 +02:00
smix8 877da269d8 Change navigation region and link updates to an async process
Changes navigation region and link updates to an async process.
2025-06-10 14:18:47 +02:00
Wagner 0cfa6b55a5 Fix navmesh border_size precision warnings 2025-06-09 18:59:08 -03:00
smix8 03e5d64dd9 Match avoidance defaults for NavigationAgent and NavigationServer NavAgent
Matches avoidance defaults for NavigationAgent and NavigationServer NavAgent. The node had different properties than the server agent and the 2d version still used outdate defaults form the 3d version.
2025-06-07 13:49:12 +02:00
smix8 e9a8c7e858 Move NavigationLink3DGizmoPlugin to navigation_3d module
Moves NavigationLink3DGizmoPlugin to navigation_3d module. Adds stub NavigationLink3DEditorPlugin.
2025-05-08 22:28:58 +02:00
Thaddeus Crews e36632a71d
Merge pull request #105588 from smix8/navobstacle_3d_plugin
Move `NavigationObstacle3DEditorPlugin` to `navigation_3d` module
2025-05-08 07:19:38 -05:00
smix8 3307be5038 Move NavigationObstacle3DEditorPlugin to navigation_3d module
Moves NavigationObstacle3DEditorPlugin to navigation_3d module.
2025-05-06 20:50:28 +02:00
smix8 63bd35e7cf Move NavigationRegion3DGizmoPlugin to navigation_3d module
Moves NavigationRegion3DGizmoPlugin to navigation_3d module.
2025-05-06 20:49:42 +02:00
Thaddeus Crews 75253b0815
Merge pull request #105592 from smix8/navregion_3d_plugin
Rename `NavigationMeshEditor` to `NavigationRegion3DEditor`
2025-05-06 08:38:07 -05:00
Thaddeus Crews fd1168620f
Merge pull request #105718 from aaronfranke/nav-const-caps
Capitalize global navigation constants
2025-05-06 08:38:07 -05:00
Thaddeus Crews c4de8ef825
Merge pull request #105765 from smix8/navlink_iteration_id
Add function to get navigation link iteration id from NavigationServer
2025-05-06 08:38:00 -05:00
smix8 01e85c49e9 Rename NavigationMeshEditor to NavigationRegion3DEditor
Renames NavigationMeshEditor to NavigationRegion3DEditor to better describe its actual purpose.
2025-05-05 22:32:14 +02:00
Aaron Franke 783728fcb4
Capitalize global navigation constants 2025-05-05 12:08:15 -07:00
smix8 b002ade3ed Add function to get navigation link iteration id from NavigationServer
Adds function to get navigation link iteration id from NavigationServer.
2025-04-25 20:59:10 +02:00
Lukas Tenbrink d74ef8cb01 Rename `LocalVector.invert()` -> `LocalVector.reverse()` to match the `Vector`, `String` and `List` APIs. 2025-04-24 22:36:32 +02:00
Pāvels Nadtočajevs 5b49fd4207
Selectively apply `FOCUS_ACCESSIBILITY` to the `Label`s instead of setting it by default. 2025-04-23 12:47:31 +03:00
Yyf2333 1a70a06a43 Change RID_Owner::get_owned_list. 2025-04-21 01:04:27 +08:00
Thaddeus Crews 0110048d46
Merge pull request #104826 from smix8/navregion_iteration_id
Add function to get navigation region iteration id from NavigationServer
2025-04-16 10:45:13 -05:00
Thaddeus Crews 2bf96fe18c
Merge pull request #105257 from smix8/navbuilder_linkpolys
Remove no longer needed link polygons from NavMapBuilder
2025-04-15 12:28:38 -05:00
smix8 2b8531d944 Add function to get navigation region iteration id from NavigationServer
Adds function to get navigation region iteration id from NavigationServer.
2025-04-15 19:17:45 +02:00
Thaddeus Crews e1509d533e
Merge pull request #105071 from smix8/map_changed
Make navigation maps emit map_changed directly
2025-04-14 19:39:52 -05:00
Thaddeus Crews 756053f05f
Merge pull request #105067 from smix8/navmesh_sync
Move NavigationServer navmesh sync from main() to process()
2025-04-14 19:39:51 -05:00
smix8 c901f39cda Remove no longer needed link polygons from NavMapBuilder
Removes no longer needed link polygons from NavMapBuilder.
2025-04-14 17:32:55 +02:00
smix8 af14aaecd4 Replace NavigationServer3D Point struct with Vector3
Replaces NavigationServer3D Point struct with Vector3.
2025-04-10 20:19:20 +02:00
smix8 4d76c197a7 Make navigation maps emit map_changed directly
Makes navigation maps emit map_changed directly.
2025-04-05 22:50:48 +02:00
smix8 a4c56d478a Move NavigationServer navmesh sync from main() to process()
Moves NavigationServer navmesh sync from main() to process().
2025-04-05 21:29:24 +02:00
smix8 565ea927d2 Emit changed signal after baking navigation mesh
Emits changed signal after baking navigation mesh.
2025-04-02 16:54:48 +02:00
Thaddeus Crews 1f56d96cf2
Merge pull request #104893 from Repiteo/scons/external-includes-alt
SCons: Add `CPPEXTPATH` for external includes
2025-04-02 07:48:03 -05:00
Thaddeus Crews c9c8556a47
Merge pull request #104862 from smix8/navserver_process
Prepare NavigationServer for `process()` and `physics_process()` split
2025-04-02 07:37:32 -05:00
Thaddeus Crews f25fc34439
SCons: Add `CPPEXTPATH` for external includes 2025-04-02 07:29:08 -05:00
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08:00
smix8 16fd7b6ae1 Prepare NavigationServer for process() and physics_process() split
Prepares the NavigationServer API for a split of its functionality between frame process() and stepped physics_process().
2025-04-02 11:01:08 +02:00
Thaddeus Crews f72511d908
Merge pull request #104811 from YeldhamDev/build_no_navigation
Allow to compile templates without navigation features
2025-04-01 19:53:29 -05:00
smix8 79ae9bf775 Change navigation module LocalVector size_t uses to uint32_t
Changes navigation module LocalVector size_t uses to uint32_t.
2025-04-01 23:44:43 +02:00
Michael Alexsander 556933306a
Allow to compile templates without navigation features 2025-04-01 11:53:35 -03:00
Thaddeus Crews d52b84e472
Merge pull request #103993 from aaronfranke/geometry-segment
Directly use segment points in Geometry2D/3D function parameters
2025-04-01 08:01:34 -05:00
Lukas Tenbrink ccdc5862e9 Add `LocalVector.erase_unordered`, mimicking `erase` but with `remove_at_unordered`, to remove duplicate logic.
`erase_unordered` should be preferred over `erase` where order is not important, for its performance benefits.

Co-authored-by: smix8 <smix8@users.noreply.github.com>
2025-03-31 13:31:53 +02:00
Aaron Franke c1acc839a8
Directly use segment points in Geometry2D/3D function parameters 2025-03-30 16:25:59 -07:00