Commit Graph

350 Commits

Author SHA1 Message Date
4678736a39 Add suffixes to all nodes and resources 2022-06-11 09:41:05 -05:00
cb8d95c271 Fix GridMap Navigation transforms and debug
Fix GridMap navigation transforms and debug.
2022-06-08 14:19:16 +02:00
cc0b525300 Fix GridMap applying wrong NavigationRegion transform
Fix GridMap applying wrong NavigationRegion transform.
2022-06-08 03:30:19 +02:00
7f7244f04a Use consistent casing in editor filter/search bars 2022-05-28 18:43:16 -05:00
ae4b2597a1 Fix GridMap not adding custom mesh offsets to NavigationMesh generation
Fix GridMap not adding custom mesh offsets to NavigationMesh generation
2022-05-24 19:50:57 +02:00
45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
900c676b02 Use range iterators for RBSet in most cases 2022-05-19 12:09:16 +02:00
dc8c906b64 Merge pull request #58624 from dzil123/fix_update_gridmap_cursor 2022-05-16 15:31:11 +02:00
746dddc067 Replace most uses of Map by HashMap
* 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-16 10:37:48 +02:00
1dc7bcc83c Cleanup metadata usage 2022-05-06 00:27:10 +02:00
84f64ddde9 Merge pull request #60723 from reduz/refactor-module-initialization 2022-05-04 19:08:43 +02:00
de0ca3b999 Refactor module initialization
* Changed to use the same stages as extensions.
* Makes the initialization more coherent, helping solve problems due to lack of stages.
* Makes it easier to port between module and extension.
* removed the DRIVER initialization level (no longer needed).
2022-05-04 17:34:51 +02:00
180e5d3028 Remove RES and REF typedefs in favor of spelled out Ref<>
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-05-03 01:43:50 +02:00
f8ab79e68a Zero initialize all pointer class and struct members
This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
2022-04-04 19:49:50 +02:00
726614ff4b fix gridmap cursor showing the wrong mesh 2022-04-02 01:53:36 -07:00
5fe6984639 Modules: Don't build editor-specific classes in templates
They're moved to an `editor` subfolder so that we can easily handle them
separately.
2022-03-28 16:48:15 +02:00
2057ea2883 Remove duplicate editor settings definitions 2022-03-06 22:05:49 +01:00
cd6bd04cba Remove unimplemented set_clip() method 2022-03-02 00:44:30 +01:00
009254d87c Merge pull request #58187 from jakobbouchard/notification-switch-chunk-c
Convert _notification methods to switch - Chunk C
2022-02-16 20:58:55 +01:00
6553f5c242 Convert _notification methods to switch - Chunk C 2022-02-16 13:03:05 -05:00
19a2ec3d04 Add GridMap.get_used_cells_by_item 2022-02-16 13:04:31 +08:00
11572c6e30 Editor: Cleanup some includes dependencies
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.

Removes unnecessary `editor_node.h` includes in various editor classes.

Renames `dynamicfont` to `dynamic_font` in a couple files.

Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
78a767edb3 Merge pull request #35679 from Calinou/doc-add-xml-schema 2022-02-15 13:14:58 +01:00
b68dd2e189 Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00
cd1d7294d8 Remove the EditorNode parameter from EditorPlugins create methods
Remove EditorNode usage from the Navigation editor plugin.
2022-02-14 18:21:42 +01:00
05b56f316d Remove most EditorNode constructor parameters and fields 2022-02-14 14:16:24 +01:00
b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
fc076ece3d Revert "Add missing SNAME macro optimization to all theme methods call"
This reverts commit a988fad9a0.

As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
5d4a141c97 Fix GridMap memory leak 2022-02-08 00:27:01 +08:00
a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
3eb5e0ac50 Rename String::is_subsequence_ofi to String::is_subsequence_ofn 2022-01-26 18:03:56 -05:00
65c3f2c049 Merge pull request #56855 from rafallus/gridmap_bake_staticbody 2022-01-20 12:10:34 +01:00
bc5ba38ff5 Merge pull request #56619 from timothyqiu/left-right-palette 2022-01-18 16:38:09 +01:00
cc46abd73d Consider gridmap collisions in navigation bake 2022-01-16 18:56:10 -06:00
5003d4351e Fix theming update in several editor classes 2022-01-16 14:49:03 +03:00
8fc73539e9 Allow showing both left and right side panels 2022-01-08 20:31:22 +08:00
1f0dc02649 Merge pull request #56006 from KoBeWi/6yearslater
Add physics material to GridMap
2022-01-06 13:28:42 +01:00
fe52458154 Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
59a9b2192e Add physics material to GridMap 2021-12-17 01:50:58 +01:00
49403cbfa0 Replace String comparisons with "", String() to is_empty()
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
41a20171eb align to horizontal_alignment, valign to vertical_alignment, related 2021-12-09 01:38:46 -06:00
8fb7e622a6 Rename built-in SGN() macro to SIGN()
This matches the name of the GDScript function (except it's uppercase
here).
2021-11-16 20:40:49 +01:00
6c1bd4d227 Replace Godot docs URL with $DOCS_URL in XML class reference 2021-11-15 13:02:21 +01:00
3c0fdcc8ac Use "enum class" for input enums 2021-11-12 15:37:54 -06:00
f2e9867e9f Implemented SkeletonEditorGizmo
Co-authored-by: Lyuma <xn.lyuma@gmail.com>
2021-10-07 01:07:46 +09:00
c63b18507d Use range iterators for Map 2021-09-30 15:09:12 -06:00
fc9767abb1 Use functions defined in the their classes. 2021-09-29 09:36:34 +05:45
70108fd850 implement individual mesh transform for meshlibrary items 2021-09-09 16:40:16 +02:00
5cecdfa8af Entirely removes BIND_VMETHOD in favor of GDVIRTUAL
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.

Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-23 08:10:13 -03:00
989acbbe81 Uniformize layer names, script methods and documentation
- 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-08-12 08:06:42 -07:00