Commit Graph

7492 Commits

Author SHA1 Message Date
537cc77654 Default tlsv1.3 to false in Project / EditorSettings 2025-10-06 09:52:10 +01:00
9ca84aa900 Fix Open Editor Data/Settings Folder menu in self-contained mode
(cherry picked from commit d164a70aa0)
2025-10-01 10:24:59 +01:00
ec635fdfd7 mbedTLS: Update to mbedTLS 3.6.4
mbedTLS 2.28 is now EOL, and will no longer receive security updates.

This commit backports from Godot 4 the changes needed to update to
mbedTLS 3.6 (new LTS), including TLSv1.3 support.

(cherry picked from commit 0770c9a4a3)
2025-10-01 10:24:59 +01:00
137691b900 Fix inability to assign script after clearing
Co-authored-by: ocean (they/them) <anvilfolk@gmail.com>
(cherry picked from commit 287cf32ce2)
2025-10-01 09:09:01 +01:00
d240313513 [3.x] ResourceImporterWAV: Detect if data chunk size is larger than the actual size
(cherry picked from commit 57159bcb8c)
2025-06-23 19:03:33 +02:00
bb4893f687 Make selected tile in TileSet more visible through red outline
(cherry picked from commit 433bf37287)
2025-06-13 18:14:14 +01:00
d6e212c695 CI: Update Ubuntu runners to 24.04, but keep 22.04 for Linux builds
Pin clang-format to version 16, and black to 24.10.0.
Keep using Ubuntu 22.04 for Linux builds for portability.

(cherry picked from commit fd9bd108af)
2024-11-07 16:54:58 +01:00
31940c784a Safe Camera::unproject_position()
`unproject_position()` can fail in some circumstances, and this needs to be conveyed to calling code.
2024-08-26 07:55:19 +01:00
4ec07e8beb Optimize Editor _init_grid()
Use static `LocalVectors` instead of `PoolVectors` for temporaries.
2024-06-03 14:07:38 +01:00
0242ca7cbf Fix long category name display in Inspector 2024-05-19 13:45:31 +08:00
49e533a765 Merge pull request #88871 from lawnjelly/fix_tilemap_undo2
[3.x] Tilemap editor - prevent changing tool when mouse buttons pressed
2024-04-25 13:28:27 +02:00
0f638507a6 FIXED: Locale fallback selector doesn't appear in project options. 2024-04-25 12:21:59 +02:00
6d036c5a3a Fix spatial_editor_plugin enum
* The `view_mesh_stats` feature introduced a new enum value `VIEW_SLECTED_INFO` within the unnamed `VIEW` enum.
* This turns out to be saved somehow, which means the view settings can get out of sync when reloading the project in an older version of the editor.
* The solution is simply to move the new value to the end of the enum so there are no conflicts.
2024-04-22 07:08:55 +01:00
bdf0f78e07 Editor 3D view mesh stats
Similar to information window, add a small optional window to display face count and other stats.
2024-04-21 08:20:18 +01:00
9401e18568 Merge pull request #90330 from timothyqiu/gizmo-toggle-3.x
[3.x] Add option to toggle visibility of position gizmos in 2D editor
2024-04-20 08:52:51 +01:00
d63c33fa78 Merge pull request #90068 from timothyqiu/ok-i-know-3.x
[3.x] Don't error multiple times when trying to load missing default bus layout
2024-04-16 13:12:21 +01:00
4551bd9386 Add option to toggle visibility of position gizmos in 2D editor
Co-authored-by: J. N. Witch <127793256+J-N-Witch@users.noreply.github.com>
2024-04-16 20:10:41 +08:00
ed952f82bd Add is_zero_approx methods to Vector{2,3} 2024-04-10 19:02:42 +08:00
fbd9d389f0 Don't error multiple times when trying to load missing default bus layout 2024-03-31 17:34:13 +08:00
ae51d5ad33 Fix finding AnimationPlayer in scene import
The scene importer always assumed that the AnimationPlayer is called
"AnimationPlayer".

This is not always true: for example the GLTF importer just creates an
AnimationPlayer with the default name, which may be "animation_player",
depending on the project settings.

This fix instead chooses the first node that is an AnimationPlayer, and
warns if there is more than one.
2024-03-12 20:50:16 +01:00
1ad9e856a0 Merge pull request #88198 from lawnjelly/fix_facecount_bug
[3.x] Fix `Mesh::get_face_count()`
2024-03-08 17:54:04 +01:00
ae7dfd1f13 Merge pull request #85437 from lawnjelly/lod_scene_side
[3.x] Discrete Level of Detail
2024-03-08 17:53:58 +01:00
6c35b48986 Merge pull request #88305 from Ovnuniarchos/editor_properties_fixup
[3.x] Fix EditorPropertyLocale connecting to inexistent signal `text_submitted`.
2024-03-08 14:15:55 +00:00
39e61b76c6 Fix SceneTree dock filter crash
The filter was crashing for two reasons:
1) Deleting a child invalidated the iteration of children
2) Child was accessed after deletion
2024-02-28 05:42:42 +00:00
50fa1896b8 Merge pull request #88828 from Mickeon/3.x-funny-regressions
[3.x] Fix TileSet editor selected regression
2024-02-27 13:34:04 +00:00
6a31048dbc Tilemap editor - prevent changing tool when mouse buttons pressed
Changing tool when painting prevented the corresponding commit of undo action when the mouse button was released. This led to undo actions getting out of sync and the undo system breaking the editor.

This PR simply prevents changing tool while mouse buttons are pressed, and prevents the above scenario.
2024-02-26 15:27:31 +00:00
02a2968764 [3.x] Fix TileSet editor selected regression 2024-02-25 22:46:23 +01:00
1e7c60174e fix crash on mat creation after orm refactor 2024-02-16 20:51:27 +01:00
86b23b6473 FIXED: Trying to connect inexistent signal text_submitted. 2024-02-13 23:26:54 +01:00
a32a2613e9 Fix Mesh::get_face_count()
This fixes a minor bug whereby facecount was actually returning the facecount * 3.
There were no major problems from this, but it did mean the optional threshold poly count used when merging was out by a factor of 3.
2024-02-11 12:19:52 +00:00
1b5fa74e39 Discrete Level of Detail
Add scene side discrete level of detail.

New node `LOD` for UI, and `LODManager` within `World` for automatically updating child visibilities based on distance from cameras.
2024-02-10 18:54:25 +00:00
b9cbffd957 add ORMSpatialMaterial 2024-02-08 20:34:11 +01:00
0aa22b8f13 Vertex cache optimizer
Optimizes indices to make good use of vertex cache on GPU.
2024-02-07 09:35:50 +00:00
828cedb569 Merge pull request #67347 from Mickeon/3.x-scene-tree-filter-woohoo
[3.x] Improve Scene Tree Dock's Node filter (Allow multiple terms & more)
2024-02-07 09:50:08 +01:00
e96ebf9218 Merge pull request #61568 from lawnjelly/merge_node
[3.x] Add MergeGroup node to simplify merging Meshes at runtime
2024-02-07 09:49:45 +01:00
60b34ed67d Merge pull request #81426 from Rubonnek/expose-inspector-methods
[3.x] Expose `EditorInspector::get_edited_object` to GDScript
2024-02-07 09:39:24 +01:00
8049fbdb9f [3.x] Improve Scene Tree Dock's Node filter (Allow multiple terms & more) 2024-01-31 10:27:16 +01:00
8b79135538 Add MergeGroup node to simplify merging Meshes at runtime 2024-01-31 08:28:51 +00:00
211c707e67 [3.x] Add Selected Collision Group in TileSet Editor
Also moves the TileSet Script property down to its own category.
2024-01-26 16:26:55 +01:00
9d69e7aba3 Donors: Change tiers to match Dev Fund, sync latest data
The new list includes all donors listed on fund.godotengine.org,
together with the ones still on Patreon on matching tiers.

We haven't yet updated Patreon tiers to match the Dev Fund, so donors
who used to be listed under "Silver donors" are now grandfathered under
the "Gold members" category from the Dev Fund.

(cherry picked from commit ff5ac866e8)
2024-01-18 16:10:45 +01:00
58898a5484 Linux: Add support for arm64 and arm32 export templates
This is done in a hacky way, mostly to keep it simple and avoid having
to do a refactoring of the `EditorExportPlatform` interface.

Only Windows and Linux use `EditorExportPlatformPC`, and thus to
handle the new architectures for Linux, we simply do a few checks here
and there with a couple new methods to register the export template
names for Linux arm64 and arm32.

For Godot 4.0, we did refactor everything to allow exporting binaries
for different architectures cleanly. For 3.6, which is likely the last
feature release for the 3.x branch, I tend to cut corners as these
improvements will be shorter lived and thus new tech debt isn't as big
a concern.
2024-01-18 15:38:32 +01:00
6782738a85 Prevent using name with leading dot when create/rename/duplicate scene/folder/script/resource
Fixes #62497
2024-01-06 19:36:14 +01:00
96bc1dc469 Merge pull request #79376 from kleonc/tiles-editor-tooltips
[3.x] Improve `TileMap` editor visible names and tooltips
2023-12-13 13:24:27 +01:00
f32db73cd2 Allow dragging editable children 2023-12-06 16:26:37 +08:00
0cde6800e7 Make gizmo plugin handle SpriteBase3D instead of Sprite3D 2023-10-06 10:43:07 +02:00
6918525795 Expose EditorInspector::get_edited_object to GDScript 2023-09-23 09:49:17 -04:00
4fd5f22a49 Remove extra separator in node context menu
Probably a backport mistake. The separator is indeed required in Godot
4. But in 3.x, it is redundant because the menu item is arranged in a
different location.
2023-09-09 08:41:11 +08:00
59f98e3f69 Prevent color conversion of the big Godot logo
Use an off-white color from the palette that we explicitly don't convert.

(cherry picked from commit ce741df43d)
2023-08-28 17:27:14 +02:00
Haz
e3be3fbc59 Fix mesh library remove selected item menu option
Fixes #45969.

(cherry picked from commits 189acbee60
and aa9d2149e7)
2023-08-28 17:27:13 +02:00
55550da68b SCons: Disable C++ exception handling
Upon investigating the extremely slow MSVC build times in #80513, I noticed
that while Godot policy is to never use exceptions, we weren't enforcing it
with compiler flags, and thus still included exception handling code and
stack unwinding.

This is wasteful on multiple aspects:

- Binary size: Around 20% binary size reduction with exceptions disabled
  for both MSVC and GCC binaries.
- Compile time:
  * More than 50% build time reduction with MSVC.
  * 10% to 25% build time reduction with GCC + LTO.
- Performance: Possibly, needs to be benchmarked.

Since users may want to re-enable exceptions in their own thirdparty code
or the libraries they compile with Godot, this behavior can be toggled with
the `disable_exceptions` SCons option, which defaults to true.
2023-08-16 10:34:10 +02:00