Commit graph

399 commits

Author SHA1 Message Date
Thaddeus Crews
7d5034c50a
Merge pull request #108507 from dementive/optimize-scene-tree-groups
Optimize scene tree groups
2025-11-14 14:22:57 -06:00
Lukas Tenbrink
c3747884da Add some important profiling hooks. 2025-11-08 00:08:48 +01:00
kobewi
88a5cd2fe0 Add change_scene_to_node() 2025-10-22 12:21:18 +02:00
Allen Pestaluky
bd9d1bf070 Add material debanding for use in Mobile rendering method.
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2025-10-08 16:22:41 -04:00
Aaron Franke
3d1c9fd5de
Move server files into their subfolders 2025-09-30 19:39:39 -07:00
Lukas Tenbrink
45a0d2a90a Make SceneTree not crash when receiving a notification without a root being set. 2025-08-28 01:38:27 +02:00
Pāvels Nadtočajevs
7b47f5e8db
[Accessibility] Process non-focusable windows (popups, menus) as part of the parent window tree. 2025-08-17 12:15:08 +03:00
Mikael Hermansson
8634a8e234 Fix performance regression when rendering collision shapes 2025-07-11 20:52:58 +02:00
dementive
56fa8caef4 Optimize scene tree groups 2025-07-11 10:57:04 -05:00
lawnjelly
583c72f999 FTI - Change SceneTree global setting to static
Also fixup FTI configuration warnings so that they only output when the project is using FTI.
2025-06-23 10:19:24 +01:00
Haoyu Qiu
2a7fa46110 Fix root node auto translation settings affecting editor root 2025-06-16 17:12:27 +08:00
Lukas Tenbrink
e2931a5c19 Make conversions from NodePath to String explicit. 2025-06-11 16:50:27 +02:00
Thaddeus Crews
e89c4b0f9f
Merge pull request #102330 from RGDTAB/add_partial_smaa
Add SMAA 1x to screenspace AA options
2025-05-26 11:24:35 -05:00
Pāvels Nadtočajevs
f92fd74268
Do not activate accessibility when screen reader detection failed. 2025-05-25 00:17:23 +03:00
Raymond DiDonato
6b99608950 Add SMAA 1x 2025-05-21 15:02:09 -04:00
Haoyu Qiu
51a063d6d3 Remove unused SceneTree::make_group_changed 2025-05-13 16:40:17 +08:00
kobewi
34b485d62b Remove empty constructors and destructors from scene/ 2025-05-06 14:46:54 +02:00
lawnjelly
f8f350a32a Add GLOBAL_GET cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
Thaddeus Crews
ccd8816dd9
Merge pull request #105860 from timothyqiu/group-complete
Fix group name completion for `get_node_count_in_group`
2025-04-28 14:10:47 -05:00
Haoyu Qiu
f7a0b6b7cf Fix group name completion for get_node_count_in_group 2025-04-28 19:42:01 +08:00
lawnjelly
ae04a3a5dd Physics Interpolation - Move 3D FTI to SceneTree
Moves 3D interpolation from server to the client code (`SceneTree`).
Complete rework of 3D physics interpolation, but using the same user API.
2025-04-26 14:13:30 +01:00
Pāvels Nadtočajevs
b106dfd4f9
Base accessibility API. 2025-04-08 20:14:28 +03:00
Thaddeus Crews
8f6bb119f4
Merge pull request #100602 from KoBeWi/over_100_changes_in_50_random_files_aka_the_best_kind_of_PR
Add templated version of `ObjectDB::get_instance()`
2025-03-31 12:03:47 -05:00
Michael Alexsander
5ad414d046
Allow to compile templates without physics servers 2025-03-28 11:00:44 -03:00
kobewi
bc9d0c7835 Add templated version of ObjectDB::get_instance() 2025-03-27 15:43:23 +01:00
Thaddeus Crews
ef4215472c
Merge pull request #102562 from KoBeWi/edytor_dans_todos_Sprache
Enable changing editor language without restart
2025-03-24 15:27:33 -05:00
kleonc
f8d13c8a46 Don't free already freed scenes when changing SceneTree current scene 2025-03-18 22:31:37 +01:00
kobewi
323b47facf Add scene_changed signal to SceneTree 2025-03-12 21:27:06 +01:00
Adam Scott
1d325847f3
Revert "Add built-in GUI to display license notices"
This reverts commit daa6198925.
2025-03-10 10:33:12 -04:00
kobewi
68d983395f Enable changing editor language without restart 2025-03-10 13:02:50 +01:00
Thaddeus Crews
0c6efe572e
Merge pull request #79599 from Calinou/add-license-notices-gui
Add built-in GUI to display license notices
2025-03-07 15:12:29 -06:00
Rémi Verschelde
54006f6ebf
Merge pull request #102217 from clayjohn/mobile-pipelines
Reduce mobile pipeline compilations
2025-02-13 23:34:54 +01:00
Rémi Verschelde
5460fe3994 Merge pull request #102653 from lawnjelly/fti_fix_client_ticking_4
Physics Interpolation - Fix client interpolation pump
2025-02-11 10:54:21 +01:00
lawnjelly
3286b7fb37 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.
2025-02-10 10:40:23 +00:00
lawnjelly
e46993f0db Physics Interpolation - Auto-reset on set_physics_interpolation_mode()
Fixes historical bug where auto-reset wasn't working correctly.
Also fixes process modes on Cameras when mode is changed.
2025-02-10 10:19:54 +00:00
clayjohn
7444839299 Reduce mobile pipeline compilations by tracking more feature usage globally and only compile what is needed 2025-02-05 18:27:23 -08:00
clayjohn
d774f697d3 Fully enable HDR2D when the setting is changed. This allows toggling HDR2D without restarting. 2025-01-29 23:39:14 -08:00
Hugo Locurcio
daa6198925 Add built-in GUI to display license notices
Press Ctrl/Cmd + Shift + L (`ui_toggle_licenses_dialog` built-in action)
to show/hide the notices dialog.

The dialog can be shown via script using
`SceneTree.licenses_dialog_visible = true|false`.

Co-authored-by: MewPurPur <mew.pur.pur@abv.bg>
2025-01-27 18:35:04 +01:00
Rémi Verschelde
11007718ec Merge pull request #93871 from KoBeWi/🚽🚽
Flush delete queue after process frame timers
2025-01-11 22:29:23 +01:00
kobewi
ccc134fd1b Tween code improvements 2025-01-07 01:21:23 +01:00
Rémi Verschelde
c78d9d2fe7
Merge pull request #98660 from Meorge/tween-subtween
Add `Tween.tween_subtween` method for nesting tweens within each other
2025-01-06 22:46:40 +01:00
Malcolm Anderson
be266138d7 Add tween_subtween method for nesting Tweens
No actual functionality yet

Actual subtween functionality implemented

Added documentation for Tween.tween_subtween and SubtweenTweener

Implemented some additional functions

`set_ease`, `set_trans`, and `set_delay`
Documentation only for `set_delay` so far, since I have tested it

Removed set_ease and set_trans

Upon further investigation, the way they are implemented for Tween doesn't appear to work here

Fixed indentation in documentation

Reset subtween when parent loops

Fix return type of `SubtweenTweener.set_delay`

Add notes to documentation

Apply suggestions from code review

Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>

Apply some suggested changes

- Remove excessive documentation
- Add Tween constructor that takes in SceneTree
- Make `SubtweenTweener::subtween` public so that `Tween` doesn't have to be a friend class

Remove unneeded friend class SceneTree

Remove superfluous documentation describing subtween behavior

Apply suggestions from code review

Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>

Apply suggestions from code review

Co-authored-by: Thaddeus Crews <repiteo@outlook.com>

Apply suggestions from code review

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Early return from `tween_subtween` if the subtween is `null`
2025-01-03 14:28:48 -08:00
Rémi Verschelde
0d710da96c
Merge pull request #98554 from Calinou/add-property-hint-ranges
Add more property hint ranges for project settings
2025-01-03 00:47:59 +01:00
Thaddeus Crews
953db6e785
Merge pull request #100752 from AThousandShips/unify_timer_scale_naming
[Core] Align naming and args of `(SceneTree)Timer` time scale methods
2024-12-30 08:58:36 -06:00
Thaddeus Crews
0e00f41650
Merge pull request #100735 from tvenclovas96/tween_ignore_time_scale
Add an option for tweens to ignore `Engine.time_scale`
2024-12-30 08:58:25 -06:00
AThousandShips
8d1a3e2a76
[Core] Align naming and args of (SceneTree)Timer time scale methods
Renamed `get_ignore_time_scale` to `is_ignoring_time_scale` following general naming standards.
2024-12-23 16:47:00 -05:00
A Thousand Ships
a1846b27ea
Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Hugo Locurcio
62c17911ea Add more property hint ranges for project settings
- Tweak property hint ranges for some networking settings to ensure
  the minimum values don't break the debugger entirely.
- Ensure shader time rollover is set to at least 1, as 0 causes a division by
  zero to occur.

All relevant project settings are now covered by a range hint.
2024-12-23 18:22:32 +01:00
Yufeng Ying
73d85f46c9 Remove unused headers in scene.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-12-24 00:40:09 +08:00
tvenclovas96_bigblackc
dbc0cc1437 Add Tween::ignore_time_scale 2024-12-22 18:39:54 +02:00