summaryrefslogtreecommitdiff
path: root/scene/3d/navigation_agent_3d.cpp
AgeCommit message (Collapse)Author
2023-02-14Add NavigationLink helper functions for global positionssmix8
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-11Strip name prefix of navigation agent debug properties in the inspectorHaoyu Qiu
2023-02-09Merge pull request #72947 from DarkKilauea/nav-fix-avoidance-callbackRémi Verschelde
Fix missing avoidance updates when using same velocity
2023-02-08Fix missing avoidance updates when using same velocityJosh Jones
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-08Fix NavigationAgent debug functions bindings in release buildssmix8
Fixes that certain NavigationAgent debug functions bindings were not available in release builds.
2023-02-02Improve consistency of NavigationAgent settersJosh Jones
2023-02-01More codespell fixes, do more changes from previous ignore listRémi Verschelde
2023-01-31Add NavigationAgent Path Debug Visualizationsmix8
Adds path debug visuals for NavigationAgent2D, NavigationAgent3D and NavigationServer.
2023-01-27Use Callable for Navigation Agent callbacksJosh Jones
2023-01-26Rename Navigation uses of 'location' to 'position'smix8
Contrary to the entire rest of the engine NavigationAgent's and NavigationLinks decided to deal with locations instead of positions.
2023-01-05One Copyright Update to rule them allRémi Verschelde
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".
2022-12-29Add safety-checks before some servers `free()`Adam Scott
2022-12-21Merge pull request #69688 from smix8/navagent_stop_origin_automove_4.xRémi Verschelde
Stop NavigationAgents without a target from moving to world origin
2022-12-17Add support for emitting a signal when entering a NavLinkJosh Jones
2022-12-17Fix Navigation API abbreviations inconsistencysmix8
Schema for navigation to name user facing API with "navigation" without abbreviation and e.g. NavigationServer internals with abbr "nav".
2022-12-12Fix Navigation agent callback wild pointer crashsmix8
Fixes crash in sanitizer builds when callback agent or object are already freed.
2022-12-06Stop NavigationAgents without a target from moving to world originsmix8
Stops NavigationAgents moving to the world origin without anyone telling them to do so.
2022-10-31Merge pull request #65452 from timothyqiu/agent-targetRémi Verschelde
Make NavigationAgent `target_location` a property
2022-10-27Emit target_reached signal after state is updatedSam Briels
2022-10-27Make NavigationAgent `target_location` a propertyHaoyu Qiu
2022-09-28Update NavigationAgent to use query_pathJosh Jones
This paves the way for having agents respond to link traversal.
2022-09-19Change return type of `get_configuration_warnings` to `PackedStringArray`Marc Gilleron
2022-08-13Rename Navigation's `neighbor_dist` to `neightbor_distance`Micky
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-06-29Group NavigationAgent propertiessmix8
Groups the ill-defined NavigationAgent properties between pathfinding and avoidance to make it more clear which property affects what.
2022-06-20Merge pull request #62214 from smix8/navigation_layer_bitmask_helpers_4.xRémi Verschelde
2022-06-19Add navigation layer bitmask helper functionssmix8
Adds helper functions to work with the navigation layer bitmask.
2022-06-18Add NavigationAgent desired path distancesmix8
Add NavigationAgent desired path distance
2022-06-15Streamline Navigation layer function names.smix8
Streamline Navigation layer function names.
2022-06-14Add NavigationAgent set_navigation_map() functionsmix8
Add NavigationAgent set_navigation_map() and get_navigation_map() function.
2022-06-01Fix NavigationAgent reparent issuessmix8
Fix NavigationAgent reparent issues
2022-05-20Process NavigationAgent2D/3D avoidance on demand onlysmix8
Changes NavigationAgent avoidance callback to a toggle that is disabled by default. Also fixes a few missing descriptions / wrong warnings.
2022-05-19Use suffixes for units in nodes and resourcesAaron Franke
2022-05-17Make Navigation Agents and Obstacles respect parent process modesmix8
Temporarily removes agent from navigation map when parent node cannot process due to SceneTree pause and process_mode property. Normal process_mode does not work as other agents would still avoid the paused agents because they were still active on the navigation map and the rvo world. Also fixes potential crash when region_get_map or agent_get_map is called while no map is set.
2022-04-01Merge pull request #59331 from bartekd97/navigation-agent-layersRémi Verschelde
2022-03-28String: Remove TTR and DTR defines in non-tools buildRémi Verschelde
This ensures we don't use TTR in runtime code, as it's specifically meant to source translations for the editor.
2022-03-20Expose navigable layers for NavigationAgent2D/3DBARTEK-PC\Bartek
2022-02-15Use `switch` consistently in `_notification` (`scene` folder)Rémi Verschelde
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-10-08Improved readability for failing error conditionsDuroxxigar
2021-08-13Fix some unnecessary includesAaron Franke
2021-07-18Optimize StringName usagereduz
* Added a new macro SNAME() that constructs and caches a local stringname. * Subsequent usages use the cached version. * Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time. * Replaced all theme usages by this new macro. * Replace all signal emission usages by this new macro. * Replace all call_deferred usages by this new macro. This is part of ongoing work to optimize GUI and the editor.
2021-04-27Fix NavigationAgent3D not emitting "target_reached" Signalsmix8
Fix NavigationAgent3D not emitting "target_reached" Signal when reaching pathfinding target.
2021-04-19Fix broken NavigationAgent3D collision avoidance callbacksmix8
Fix broken NavigationAgent3D collision avoidance callback
2021-04-11Use Array for node configuration warningsNathan Franke
Previously, the warnings were passed as a string and delimitation of which were hard coded at each implementation.
2021-03-10Remove Navigation2D/3D nodes, and move the navigation map to the world resourceGilles Roudière
2021-01-01Update copyright statements to 2021Rémi Verschelde
Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
2020-12-28Rename empty() to is_empty()Marcel Admiraal
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-10-01Merge pull request #38743 from arrowinaknee/node-config-warningsRémi Verschelde
Update all get_configuration_warning() to retrieve warnings from the parent
2020-05-27Split `Geometry` singleton into `Geometry2D` and `Geometry3D`Andrii Doroshenko (Xrayez)
Extra `_2d` suffixes are removed from 2D methods accoringly.