summaryrefslogtreecommitdiff
path: root/modules/gridmap/grid_map.h
AgeCommit message (Collapse)Author
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-20Change GridMap navigation_layers to be per mesh_library itemsmix8
Changes GridMap navigation_layers from a single bitmask for the entire GridMap to a bitmask for each item used in the mesh_library with a baked navmesh.
2022-12-19Add GridMap collision_prioritysmix8
Adds property 'collision_priority' for all physics bodies of the entire GridMap.
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-09-08Add GridMap function to change navigation map for baked navigation regionssmix8
Adds function to change the navigation map for baked navigation regions. Before all cells with a baked navigation mesh were locked to the default navigation map of the world resource.
2022-09-05Rename TileMap/GridMap.`world_to_map` and opposite to `local_to_map`Micky
For both TileMap and GridMap: - `world_to_map` -> `local_to_map` - `map_to_world` -> `map_to_local` Also changes any mention of "world" in this context to "local" to avoid future confusion. Finally, updates the docs of both methods for consistency. In particular, adding a note on how to convert the returned values from local to global coordinates and vice versa.
2022-09-01Merge pull request #64173 from ↵Rémi Verschelde
smix8/navigation_debug_gridmap_edgeconnections_4.x
2022-08-23Replace Array return types with TypedArray 2kobewi
2022-08-20Expose Basis `set_orthogonal_index` method as a GridMap functionrafallus
2022-08-13Add Navigation Debug for GridMap edge connectionssmix8
Adds navigation visual debug for GridMap edge connections that use baked navigationmesh with bake_navigation=true.
2022-06-19Add navigation layer bitmask helper functionssmix8
Adds helper functions to work with the navigation layer bitmask.
2022-06-15Streamline Navigation layer function names.smix8
Streamline Navigation layer function names.
2022-06-08Fix GridMap Navigation transforms and debugsmix8
Fix GridMap navigation transforms and debug.
2022-05-20Add a new HashSet templatereduz
* Intended to replace RBSet in most cases. * Optimized for iteration speed
2022-05-16Replace most uses of Map by HashMapreduz
* Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
2022-05-03Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`Hugo Locurcio
These typedefs don't save much typing compared to the full `Ref<Resource>` and `Ref<RefCounted>`, yet they sometimes introduce confusion among new contributors.
2022-03-02Remove unimplemented set_clip() methodkobewi
2022-02-16Add GridMap.get_used_cells_by_itemHaoyu Qiu
2022-01-16Consider gridmap collisions in navigation bakerafallus
2022-01-06Merge pull request #56006 from KoBeWi/6yearslaterJFonS
Add physics material to GridMap
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-17Add physics material to GridMapkobewi
2021-08-12Uniformize layer names, script methods and documentationPouleyKetchoupp
- Back to 1-based layer names to make it clearer in editor UI - Layer bit accessors are renamed to layer value and 1-based too - Uniform errors and documentation in render and physics - Fix a few remaining collision_layer used in place of collision_mask
2021-06-03Rename Transform to Transform3D in coreAaron Franke
2021-03-10Implement Navigation layersGilles Roudière
2021-03-10Remove Navigation2D/3D nodes, and move the navigation map to the world resourceGilles Roudière
2021-02-08Initialize class/struct variables with default values in modules/Rafał Mikrut
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-07-02Update GridMap to use Vector3i instead of three intsAaron Franke
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-03-27Renamed 2D and 3D nodes to make their types explicitJuan Linietsky
Fixes #30736.
2020-02-10- Integrated NavigationServer and Navigation2DServer.Andrea Catania
- Added Navigation Agents and Obstacles. - Integrated Collision Avoidance. This work has been kindly sponsored by IMVU.
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
2019-11-27Remove deprecated theme property from GridMapTomasz Chabora
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-08-22Rename instances of the word "theme" to "mesh_library" in GridMap and ↵Michael Alexsander Silva Dias
MeshLibrary editors
2018-02-01Fix inconsistencies and typos in argument namesPaolo Perkovic
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
2018-01-03Merge pull request #15120 from AndreaCatania/gridmRémi Verschelde
Added layer and mask in the gridmap node
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-12-28Added layer and mask in the gridmap nodeAndreaCatania
2017-12-18Added baked light support for gridmaps.Juan Linietsky
2017-12-15Made built-in identifiers properly constant in shaders. Fixes #14449, closes ↵Juan Linietsky
#14629
2017-10-21Adds world_to_map() and map_to_world() methods to GridMap.David Saltares
Closes #11856. Also fixes GridMap::set_cell_scale() not visually updating the grid meshes
2017-10-05Add GridMap::get_used_cells. Fixes #11857.J08nY
2017-09-05Setting visibility on GridMap now works. Closes #907.David Saltares
Basically, `GridMap` wasn't reacting to the `NOTIFICATION_VISIBILITY_CHANGED` event. This reacts to such events and walks over the set of `Octants` and all of their `MultiMeshInstances` to set their visibility on the `VisualServer`.
2017-08-27Dead code tells no talesRémi Verschelde
2017-08-27-Largely rewrote gridmap to simplify itJuan Linietsky
-Got editor working again -Added a current-floor marker on selection
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde