1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-09 12:50:35 +00:00
Commit Graph

367 Commits

Author SHA1 Message Date
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
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
ydeltastar
8793764ba6 Fix default environment project setting and loading 2024-11-27 14:15:27 -03:00
Thaddeus Crews
925b690c98 Core: Integrate Ref::instantiate where possible 2024-11-10 12:41:26 -06:00
Michael Alexsander
16524a8a01 Add "Game" editor for better runtime debugging 2024-10-30 11:42:17 -03:00
kobewi
22ccfc5a39 Print error on invalid call_group() calls 2024-09-20 17:20:03 +02:00
rune-scape
154049ce17 StringName Dictionary keys
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
Ricardo Buring
2f8ab4a654 Fixed Timestep Interpolation (3D)
Adds 3D fixed timestep interpolation to the rendering server.
This does not yet include support for multimeshes or particles.

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-07-07 22:15:23 +02:00
kobewi
6aebc91298 Flush delete queue after process frame timers 2024-07-02 20:34:51 +02:00
kobewi
413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
kobewi
0b877a9962 Expose is_part_of_edited_scene() 2024-04-26 11:49:38 +02:00
Haoyu Qiu
8d1cb7e74c Add project setting for root node auto translate mode 2024-04-16 11:02:04 +08:00
Bernat Arlandis
0a68876348 Remove some unused SceneTree properties 2024-04-13 00:56:01 +02:00
Ricardo Buring
2ed2ccc2d8 Fixed Timestep Interpolation (2D)
Adds fixed timestep interpolation to the rendering server (2D only).
Switchable on and off with a project setting (default is off).

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-03-23 12:28:36 +01:00
Micky
7b3e1a5bde Optimize SceneTree's change_scene_to_file autocompletion 2024-03-01 15:12:52 +01:00
Rémi Verschelde
c1377920cd Merge pull request #86743 from Mickeon/autocompletion-optimise-object
Optimise comparisons for Object's `get_argument_options`
2024-03-01 14:56:06 +01:00
Micky
cd2032a90b Optimise Object's get_argument_options 2024-02-29 18:00:54 +01:00
Adam Scott
dcf4cf79fd Hide snap_2d_vertices_to_pixel setting to advanced 2024-02-28 10:59:41 -05:00
Aaron Franke
c399424db9 Move 3D-only resources to their own folder 2024-02-26 05:23:04 -06:00
A Thousand Ships
f06222e487 [Physics] Fix export with 3D disabled 2024-02-22 16:23:48 +01:00
Sabs, like Sobs
3475156ae3 Expose pixel snapping settings add pixel-art notes
This small in-engine documentation change aims to make it easier to
discover ways to handle pixel art aesthetics.

- I have moved 2D pixel snapping settings out of "Advanced." This now matches other pixel-art-friendly settings for
GUI Snapping and Default Texture filtering.
- I've added notes to the project settings and Sprite/AnimatedSprite sources to hint users towards better understanding of why pixelated sprites may not work correctly and what to do about it. This should help users make informed decisions for their needs.

Context: Proper handling of pixel art in Godot is routinely frustrating for new users: I, like others, assumed that Godot would act on pixels, not subpixels, when I was working a pixel art game. I was confused when my interpolations would appear blurry, and when pixel textures would be distorted for no apparent reason (this was because of centering).
I had naively thought that setting Linear interpolation would be the single "it's a pixel art game" toggle, but that only hid the underlying issues until later. I had no idea there was a snap-to-pixel option because it was hidden in the Advanced options, since my default assumption was that a pixel art game would want no subpixels at all.

Some references for the frustration:

- https://github.com/godotengine/godot/issues/82696
- https://www.reddit.com/r/godot/comments/fah25e/best_way_to_achieve_pixel_perfect_rendering/
- https://shaggydev.com/2021/09/21/project-setup-for-pixel-art/
2024-02-17 23:40:53 +00:00
Michael Alexsander
7b42c24550 Make auto translation inheritable 2024-02-15 16:51:19 -03:00
Micky
ca2f340384 Fix missing autocompletion for inheriting classes 2024-01-03 00:13:04 +01:00
Stanislav Labzyuk
958699a0c4 Implement project-wide node groups 2023-12-19 18:07:19 +01:00
Yuri Sizov
16d1d85a56 Merge pull request #78206 from alula/node-count-in-group
Add SceneTree.get_node_count_in_group()
2023-12-14 17:38:00 +01:00
Pedro J. Estébanez
8bebabda18 Let scene replacemnent benefit from certain late pieces of frame logic 2023-11-21 18:32:49 +01:00
Rémi Verschelde
15b8185c68 Don't use TTR/RTR for ERR/WARN prints
We don't translate those, only editor strings are translated.
2023-11-12 12:00:55 +01:00
Hugo Locurcio
fcbf7011cc Make 3D editor gizmos and debug shapes ignore fog
This makes them easier to see in their intended colors in scenes with fog.
2023-09-27 00:54:57 +02:00
A Thousand Ships
a5fe392b78 Disallow nested custom multiplayers in SceneTree
Enables clearing the custom multiplayer
2023-09-25 14:59:05 +02:00
Markus Sauermann
c4705a590b Fix Object::notification order
Previously the `p_reversed` parameter didn't influence the order
in a correct way.
Also script overridden _notification functions were not called in
the correct order.

To fix this some `notification` functions had to add a `p_reversed`
parameter.

This made it necessary to adjust cpp-bindings.

Co-authored-by: David Snopek <dsnopek@gmail.com>
2023-08-30 00:15:55 +02:00
clayjohn
57eb762bae Add option to enable HDR rendering in 2D
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance

Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
Yuri Sizov
e8df8c5e2c Merge pull request #78988 from RandomShaper/fix_change_scene
Reimplement scene change
2023-07-26 18:39:43 +02:00
Hendrik Brucker
7e21eb7e00 Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
Yuri Sizov
7ff2a93952 Merge pull request #72248 from RedwanFox/mainloop_init_order_fix
Ensure that SceneTree is initialized and finalized at correct time
2023-07-12 17:16:05 +02:00