Commit Graph

7769 Commits

Author SHA1 Message Date
Marius Hanl
dbc2ce8eb0 Fix Line breaking may not work correctly when using color tags with specific font
(cherry picked from commit c7bace1955)
2025-10-01 10:24:59 +01:00
Haoyu Qiu
45e30e4438 Revert "Fix Button not listing hover_pressed stylebox"
This reverts commit cc11089786.

(cherry picked from commit 62feeaab33)
2025-06-23 18:39:00 +02:00
lawnjelly
fc8433f3e3 Fixup casting for cherry picked #105266 2025-06-13 18:24:16 +01:00
Pāvels Nadtočajevs
4d7586d759 [3.x, RTL] Track external changes in the custom fonts set by BBCode / push_font.
(cherry picked from commit 3c8e71b429)
2025-06-13 18:13:49 +01:00
arkology
afc36d9a0e Show TextureProgress radial cross only when editing the scene
(cherry picked from commit 002d604651)
2025-06-13 18:08:47 +01:00
arkology
f11dd599c9 Improve set_radial_initial_angle by removing loops
(cherry picked from commit 46dfd9747a)
2025-06-13 18:07:21 +01:00
Alex Docauer
26e7fb2dc1 Cancel tooltips when mouse leaves window
This is a backport of 807431c49a.

(cherry picked from commit bea070235c)
2025-06-13 17:59:02 +01:00
lawnjelly
5b8b9adb35 Fix physics platform behaviour regression
Lifetime checks for stored `RIDs` for collision objects assumed they had valid `object_ids`.
It turns out that some are not derived from `Object` and thus checking `ObjectDB` returns false for some valid `RIDs`.
To account for this we only perform lifetime checks on valid `object_ids`.

(cherry picked from commit d4cca62bb4)
2025-05-25 09:51:53 +01:00
Haoyu Qiu
4205412c7e Fix button click detection when Tree is rotated
(cherry picked from commit 93c514600b)
2025-05-25 09:48:02 +01:00
Haoyu Qiu
55d98baa12 Fix PopupMenu margin and separation calculations
(cherry picked from commit 51b03b8602)
2025-05-25 09:47:14 +01:00
Haoyu Qiu
5548c60582 Fix Button not listing hover_pressed stylebox
(cherry picked from commit cc11089786)
2025-05-25 09:46:07 +01:00
Hugo Locurcio
39df747563 Hide last DirectionalLight shadow split distance property when using PSSM 3 Splits
The last shadow split property only has an effect when using PSSM 4 Splits.

(cherry picked from commit 0fed56ea69)
2025-05-25 09:37:37 +01:00
lawnjelly
fec8e695b6 Physics Interpolation - Add editor warning for non-interpolated physics body
(cherry picked from commit 9ad73062e8)
2025-05-25 09:37:05 +01:00
lawnjelly
b0e5c85fd5 Physics Interpolation - fix client interpolation pump
Client interpolation pump is moved AFTER the physics tick, after physics objects have been moved.
This is necessary because the `current` transform is also updated during the pump.

(cherry picked from commit 7e9be93338)
2025-05-25 09:35:14 +01:00
lawnjelly
1fbee3a872 Revert changes to Range::set_value #65101
(cherry picked from commit 815484b595)
2025-05-25 09:33:11 +01:00
Rémi Verschelde
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
Rémi Verschelde
c84cf04e95 PopupMenu: Update margins on visibility change
Fixes #96149.

Co-authored-by: Haoyu Qiu <timothyqiu32@gmail.com>
2024-09-04 11:35:41 +02:00
lawnjelly
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
Ricardo Subtil
1cf50364c1 Fix PopupMenu size calculations not taking into account control/canvas scale 2024-07-20 12:46:33 +01:00
kleonc
66d1ab0459 [3.x] Fix AtlasTexture::draw_rect flipping for non-zero margin 2024-07-02 11:26:23 +02:00
lawnjelly
98e24835ee Merge pull request #92941 from lawnjelly/fix_physics_tickcounter
[3.x] Fix physics tick counter
2024-07-01 12:30:22 +01:00
lawnjelly
f137eb3929 Merge pull request #92105 from lawnjelly/merging_storage_refactor
[3.x] Mesh merging - refactor to be backward compatible for CPU / GPU storage
2024-07-01 12:21:23 +01:00
lawnjelly
40961d62e2 Fix physics tick counter
The counter is now incremented at the start of a physics tick rather than the end.
2024-07-01 08:58:02 +01:00
lawnjelly
49d3161ce0 Physics Interpolation - Fix behaviour on pause 2024-06-20 10:50:30 +01:00
lawnjelly
d80b206643 Physics Interpolation - refactor client interpolation pump
* Move client interpolation pump to earlier in the iteration before 3D physics synced
* Allow `get_global_transform_interpolated()` to prime the client interpolation inside a physics tick
2024-06-19 08:44:33 +01:00
lawnjelly
12781e4554 Merge pull request #93309 from lawnjelly/fti_skinning
[3.x] Physics Interpolation - Fix 2D skinning
2024-06-19 06:50:44 +01:00
lawnjelly
44f6042e6b Physics Interpolation - Fix 2D skinning
2D skinning required the interpolated skeleton base transform to be updated when using interpolation.
2024-06-18 15:01:20 +01:00
lawnjelly
0b30d77384 Physics Interpolation - refactor Camera and fix get_camera_transform()
* Moves 3D Camera interpolation scene side.
* Automatically switches `get_camera_transform()` to report interpolated transform during `_process()`.
* Fixes `ClippedCamera` to work with physics interpolation.
2024-06-09 12:08:27 +01:00
Haoyu Qiu
d655fc8fed Add range hint for ViewportContainer.stretch_shrink 2024-05-29 09:06:06 +08:00
lawnjelly
1bfb788c4f Merge pull request #92438 from lawnjelly/fti_fix_visual_instance_identity
[3.x] Physics Interpolation - Fix `VisualInstance::set_instance_use_identit…
2024-05-28 11:16:23 +01:00
lawnjelly
7130c1bebc Physics Interpolation - Fix VisualInstance::set_instance_use_identity_transform()
The logic for updating the `VisualServer` with the transform was the wrong way around.
2024-05-27 19:02:42 +01:00
Haoyu Qiu
1f0d9f04d2 Fix theme item parameter completion 2024-05-25 10:28:40 +08:00
lawnjelly
0f5cadfb56 Fix Viewport interpolation mode
Viewport interpolation mode is a special case, which should be set to ON instead of INHERIT.
2024-05-20 10:28:58 +01:00
lawnjelly
da3c95f325 Mesh merging - refactor to be backward compatible for CPU / GPU storage
Allows the old `merge_meshes()` function to work from the editor.
2024-05-19 07:44:36 +01:00
kleonc
b045a7c92e Always look for unique node names in owner if not found in owned nodes
(cherry picked from commit 95ced4bbdc)
2024-05-01 12:04:27 +02:00
lawnjelly
561a8eaf6e Merge pull request #88207 from lawnjelly/view_mesh_stats
[3.x] Editor 3D view mesh stats
2024-04-21 19:31:57 +01:00
lawnjelly
36474d6142 Merge pull request #90928 from timothyqiu/toggle-tab-icon-3.x
[3.x] Fix TabContainer not updating content rect after toggling tab icon
2024-04-21 19:29:38 +01:00
lawnjelly
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
lawnjelly
a73715cf55 Merge pull request #58577 from pfertyk/issue_58543_audio_not_paused
[3.x] Fix AudioStreamPlayer not paused on pause mode change
2024-04-20 09:18:46 +01:00
Haoyu Qiu
30dead8a5e Fix TabContainer not updating content rect after toggling tab icon 2024-04-20 16:12:45 +08:00
lawnjelly
d56d1ff4d2 Deprecate NOTIFICATION_MOVED_IN_PARENT
* NOTIFICATION_MOVED_IN_PARENT makes node children management very inefficient.
* Replaced by a NOTIFICATION_CHILD_ORDER_CHANGED (and children_changed signal).
* Most of the previous tasks carried out by NOTIFICATION_MOVED_IN_PARENT are now done not more than a single time per frame.

This PR breaks compatibility (although this notification was very rarely used, even within the engine), but provides an alternate way to do the same.
2024-04-20 07:52:05 +01:00
Rémi Verschelde
1869243644 Merge pull request #88807 from lawnjelly/portals_fix_enter_tree_order
[3.x] Portals - defer setting active in `VisualServer` until enter tree
2024-04-19 10:24:37 +02:00
lawnjelly
ea68c2bfab Merge pull request #88946 from lawnjelly/fix_physics_on_floor_body
[3.x] Fix physics `on_floor_body` crash
2024-04-16 15:02:00 +01:00
lawnjelly
db3fe5e5c3 Merge pull request #90669 from timothyqiu/owner-id-3.x
[3.x] Store `ObjectID` instead of pointer for KinematicCollision owner
2024-04-16 13:49:58 +01:00
Haoyu Qiu
33043c63d5 Fix SceneTree not respecting virtual process methods
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2024-04-16 18:49:02 +08:00
Haoyu Qiu
43862fbf44 Store ObjectID instead of pointer for KinematicCollision owner 2024-04-15 12:32:17 +08:00
Haoyu Qiu
ed952f82bd Add is_zero_approx methods to Vector{2,3} 2024-04-10 19:02:42 +08:00
Haoyu Qiu
fe65682937 Add Node.is_node_ready 2024-04-08 17:44:23 +08:00
Paweł Fertyk
90cf873979 Fix AudioStreamPlayer not paused on pause mode change
Fixes #58543.
2024-04-05 14:20:44 +02:00
lawnjelly
a0f130e23c Optimize AnimationTree::_process_graph()
Removes redundant lookups on HashMap.
2024-03-18 09:01:41 +00:00