smix8
1c134f4a3d
Add navigation path simplification
...
Adds navigation path simplification for NavigationServer and NavigationAgent.
2024-04-11 12:32:21 +02:00
Rémi Verschelde
21f0529aa9
Revert "Update Node::get_configuration_warnings signature"
...
This reverts commit d3852deaa4
.
2024-02-17 19:03:21 +01:00
RedMser
d3852deaa4
Update Node::get_configuration_warnings signature
2024-02-08 23:05:20 +01:00
Nicholas Foo
e7ee672120
Add getters to navigation servers
...
Add virtual functions and bind to navigation servers
Implement getters
Add documentation
2023-12-19 19:51:49 +01:00
Yuri Sizov
302e41c264
Merge pull request #82561 from ershn/fix_navigation_agents_is_target_reached_behavior
...
Make `target_desired_distance` affect the navigation of `NavigationAgent2D/3D`
2023-12-14 21:22:35 +01:00
Rémi Verschelde
1389d8a23f
Merge pull request #83814 from smix8/navagent_properties
...
Fix missing NavigationAgent property updates in constructor
2023-12-04 22:59:38 +01:00
Ershn
fce16b6662
Make target_desired_distance affect the navigation of NavigationAgent2D/3D
...
When the target is reachable, stop the navigation only when the target is reached.
2023-11-29 23:48:54 +09:00
smix8
9640179f93
Fix missing NavigationAgent property updates in constructor
...
Fixes missing NavigationAgent property updates in constructor.
2023-10-23 04:27:49 +02:00
smix8
b7be45279d
Solve race condition between AThousandShips and Akien
...
Solves race condition between AThousandShips and Akien.
2023-10-21 19:04:41 +02:00
smix8
4771431b28
Fix NavigationAgent3D stored y-axis velocity and make it optional
...
Fixes NavigationAgent3D stored y-axis velocity and makes it optional.
2023-10-21 01:11:26 +02:00
A Thousand Ships
a29416e332
[Scene,Main] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-12 12:53:06 +02:00
Rémi Verschelde
2926ddec1c
Merge pull request #78939 from Scony/navi-crash-fix
...
Fix crash in `NavigationAgent3D`
2023-07-03 15:26:14 +02:00
Rémi Verschelde
813ff4b460
Merge pull request #78857 from smix8/navagent_pos_fix_4.x
...
Fix NavigationAgent position not always updating
2023-07-03 15:26:11 +02:00
Pawel Lampe
fcbb521392
Fix crash in 'NavigationAgent3D', fixes #78910
2023-07-02 22:30:03 +02:00
smix8
34bc410fb4
Fix NavigationAgent position not always updating
...
Fixes NavigationAgent position not always updating.
2023-06-30 00:18:26 +02:00
smix8
c912df9d05
Fix NavigationAgent continues avoidance velocity
...
Fixes NavigationAgent continues avoidance velocity.
2023-06-29 21:10:03 +02:00
smix8
ae9dd47d0c
Add agent pause mode to NavigationServer
...
Adds agent pause mode to NavigationServer.
2023-06-18 12:37:03 +02:00
smix8
a6ac305f96
Rework Navigation Avoidance
...
Rework Navigation Avoidance.
2023-05-10 05:01:58 +02:00
smix8
6e324bb341
Expose NavigationAgent path postprocessing and pathfinding algorithm options
...
Exposes the path postprocessing and pathfinding algorithm options of the NavigationAgent internal NavigationPathQueryParameters object.
2023-03-25 21:37:18 +01:00
smix8
0b8798a995
Fix NavigationAgent3D debug path duplicated points
...
Fixes duplicated points in NavigationAgent3D debug path.
2023-03-16 09:19:04 +01:00
smix8
8be4af38e4
Tweak NavigationAgent3D defaults
...
Tweaks default values for NavigationAgent3D to work better out of the box within a new 3D project.
2023-02-16 14:26:39 +01:00
smix8
d87f124768
Add NavigationLink helper functions for global positions
...
Adds helper functions to set the links start and end position with global positions or get them as global positions.
Adds global start and end position for the navigation link to the 'link_reached' signal of NavigationAgent. That signal gets emitted when a navigation link waypoint is reached. Requires that 'owner' meta data is enabled on the NavigationAgent.
2023-02-14 21:56:58 +01:00
Haoyu Qiu
65223e98de
Strip name prefix of navigation agent debug properties in the inspector
2023-02-11 16:34:08 +08:00
Rémi Verschelde
d69809cab6
Merge pull request #72947 from DarkKilauea/nav-fix-avoidance-callback
...
Fix missing avoidance updates when using same velocity
2023-02-09 10:13:35 +01:00
Josh Jones
097f8a5fdb
Fix missing avoidance updates when using same velocity
...
When using avoidance, if you set the same velocity for the agent, you won't get an update from the avoidance system.
This changes both the `set_target_position` and `set_velocity` setters to always accept user provided values, even if they are the same. This ensures that repathing and avoidance logic is always run when the user expects.
2023-02-08 23:18:53 -08:00
smix8
820b841fcb
Fix NavigationAgent debug functions bindings in release builds
...
Fixes that certain NavigationAgent debug functions bindings were not available in release builds.
2023-02-08 21:49:04 +01:00
Josh Jones
20fdfd466b
Improve consistency of NavigationAgent setters
2023-02-02 22:51:37 -08:00
Rémi Verschelde
e52213e2fa
More codespell fixes, do more changes from previous ignore list
2023-02-01 12:11:36 +01:00
smix8
0ab764e84b
Add NavigationAgent Path Debug Visualization
...
Adds path debug visuals for NavigationAgent2D, NavigationAgent3D and NavigationServer.
2023-01-31 18:27:35 +01:00
Josh Jones
22f9ef19e1
Use Callable for Navigation Agent callbacks
2023-01-27 23:14:36 -08:00
smix8
bf1571979c
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.
2023-01-26 18:19:03 +01:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Adam Scott
ea33001b95
Add safety-checks before some servers `free()`
2022-12-29 16:23:38 -05:00
Rémi Verschelde
f84c308cf8
Merge pull request #69688 from smix8/navagent_stop_origin_automove_4.x
...
Stop NavigationAgents without a target from moving to world origin
2022-12-21 19:39:25 +01:00
Josh Jones
5d8ba2b2d1
Add support for emitting a signal when entering a NavLink
2022-12-17 16:33:41 -08:00
smix8
34e7628f5f
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".
2022-12-17 22:06:22 +01:00
smix8
194c1c44e0
Fix Navigation agent callback wild pointer crash
...
Fixes crash in sanitizer builds when callback agent or object are already freed.
2022-12-12 13:03:55 +01:00
smix8
860379fc16
Stop NavigationAgents without a target from moving to world origin
...
Stops NavigationAgents moving to the world origin without anyone telling them to do so.
2022-12-06 22:53:18 +01:00
Rémi Verschelde
0844f0ed10
Merge pull request #65452 from timothyqiu/agent-target
...
Make NavigationAgent `target_location` a property
2022-10-31 11:56:17 +01:00
Sam Briels
815231943b
Emit target_reached signal after state is updated
2022-10-27 14:05:43 +02:00
Haoyu Qiu
e4100495b5
Make NavigationAgent `target_location` a property
2022-10-27 13:51:38 +08:00
Josh Jones
a2c53b881b
Update NavigationAgent to use query_path
...
This paves the way for having agents respond to link traversal.
2022-09-28 23:01:12 -06:00
Marc Gilleron
aed3822a93
Change return type of `get_configuration_warnings` to `PackedStringArray`
2022-09-19 16:43:15 +01:00
Micky
b62d06fbed
Rename Navigation's `neighbor_dist` to `neightbor_distance`
...
NavigationAgent2D/3D.`neighbor_dist` -> `neighbor_distance` (also affects setters and getters)
NavigationServer2D/3D.`agent_set_neighbor_dist()` -> `agent_set_neighbor_distance()`
Also changes their parameters' names.
Doesn't affect "Agent.neighborDist_" in Agent.h
2022-08-13 12:40:55 +02:00
smix8
dde09be302
Group NavigationAgent properties
...
Groups the ill-defined NavigationAgent properties between pathfinding and avoidance to make it more clear which property affects what.
2022-06-29 18:42:51 +02:00
Rémi Verschelde
21b0c7fc22
Merge pull request #62214 from smix8/navigation_layer_bitmask_helpers_4.x
2022-06-20 15:13:33 +02:00
smix8
55923ade68
Add navigation layer bitmask helper functions
...
Adds helper functions to work with the navigation layer bitmask.
2022-06-19 13:47:19 +02:00
smix8
07740302f3
Add NavigationAgent desired path distance
...
Add NavigationAgent desired path distance
2022-06-18 19:11:49 +02:00
smix8
245da150e7
Streamline Navigation layer function names.
...
Streamline Navigation layer function names.
2022-06-15 00:18:48 +02:00
smix8
f10ff0efda
Add NavigationAgent set_navigation_map() function
...
Add NavigationAgent set_navigation_map() and get_navigation_map() function.
2022-06-14 21:48:47 +02:00