Commit Graph

80742 Commits

Author SHA1 Message Date
PhairZ 16b7459cda fix plugin icons not displayed 2025-02-22 04:40:52 +02:00
David Snopek bd962dd2c4 GDExtension: Include precision in extension_api.json 2025-02-21 13:55:45 -06:00
Anish Mishra 93bababb8c Android: Inform that sensors must be enabled in ProjectSettings 2025-02-21 23:04:01 +05:30
kobewi 817815b2b8 Avoid some excessive edits of resources 2025-02-21 16:14:07 +01:00
Anish Mishra ee4e809d4c Android: Fix excessive getRotation calls 2025-02-21 20:32:54 +05:30
KerekesDavid 315cc5e437 Fix wrong viewport scaling at intermediate resolutions
Fixes viewport scale being wrong at resolutions that are not
integer multiples of content_scale_factor.

This is done by allowing size_2d_override to be Size2 instead of
Size2i. This change is not propagated to the exposed SubViewport
to keep compatibility for now.
2025-02-21 11:24:38 +01:00
Rémi Verschelde 394508d26d i18n: Sync translations with Weblate 2025-02-21 10:07:12 +01:00
Anish Mishra 129ffce06a Android Editor: Fix expand button black bar issue 2025-02-21 13:00:49 +05:30
Hilderin 068d40a5a9 Fix Embedded Game window wrong first startup location and size 2025-02-20 20:24:12 -05:00
Hilderin c7bc322bf6 Fix Embedded Game does not focus when mouse over on Windows 2025-02-20 16:28:18 -05:00
Matias N. Goldberg 8888f9e649 Fix uninitialized value in Tonemap
And anything that uses luminance.

The class Luminance in luminance.cpp is in charge of averaging the
luminance of all pixels.
It performs multiple passes until it reaches a 1x1 texture containing
the total average. This is standard luminance averaging on GPU.

Then the "result" of this frame and the "prev_frame_result" are averaged
together at a certain speed to mimic eye adaptation.

Then this avarege becomes the "source" for the next frame. This is done
here:

```cpp
SWAP(p_luminance_buffers->current,
p_luminance_buffers->reduce.write[p_luminance_buffers->reduce.size() -
1]);
```

So far pretty normal stuff.

**The problem is: prev_frame_result IS UNINITIALIZED**. Therefore it's
possible for prev_frame_result to contain garbage values like -5+e15
which causes the screen to stay black for a minute until eye adaptation
catches up.

Windows will always force allocations to be reset to 0, but Linux does
not do that.
However Windows just delays the bug; because it's possible for VMA to
reuse a block.

You can repro this bug by downloading Bistro, creating a camera,
selecting a default scene; and then launching Bistro.

Everything will work fine.
Until you decide to resize the window. It takes a few tries on Godot,
but eventually the screen becomes black.

If you wait around a minute, the screen will "unblack" itself back to
normal.

Even if it's not stuck in black after resize, you may notice that every
resize is inconsistent in how the eye adaptation catches up (i.e.
sometimes it flashes to white, sometimes it does not).

If you can't repro the bug, you need to try harder by doing arbitrary
resizes until it triggers.
Also, I advise to try this on Linux; since Windows' sanitization of
memory gets in the way.

There's probably multiple tickets already filled around issues that were
rooted in luminance calculations starting from uninitialized memory.

This PR sets a default value of 0, which causes the screen to always
flash white after resize. Setting a different value like 0.1 makes the
flash effect weaker. Setting it to a high value like 5.0 makes the
screen flash from dark instead.

This bug can be backported to 4.3. I don't know if it can be backported
to earlier; as the render graph makes sure the texture_clear() calls
gets issued in the right place; whereas in <= 4.2 it might be
problematic depending on when Luminance::LuminanceBuffers::configure is
being called.
2025-02-20 16:51:41 -03:00
Rémi Verschelde 8ed125b429 Bump version to 4.4-rc 2025-02-20 20:08:03 +01:00
Rémi Verschelde 5c0b0e9924 Merge pull request #103080 from Alex2782/fix_issue_101007
Fix `modified_time` on Android
2025-02-20 20:07:33 +01:00
Rémi Verschelde 8ec34e966e Merge pull request #103068 from QbieShay/fix-particle-rand2
Fix particle not re-randomizing every emission
2025-02-20 20:07:09 +01:00
Qbieshay 419e5c40fa Fix particle not re-randomizing every emission 2025-02-20 19:25:05 +01:00
Rémi Verschelde f76b76ff72 Merge pull request #103077 from akien-mga/windows-mingw-lto-whole-program
Windows: Configure MinGW LTO with `-fno-use-linker-plugin -fwhole-program`
2025-02-20 19:16:56 +01:00
Rémi Verschelde 702eb39ab8 Revert "Workaround mingw-gcc LTO ICE by re-adding some dead code..."
This reverts commit e12a424bc5.
This is no longer needed after 26fd3458f9.
2025-02-20 17:47:37 +01:00
Rémi Verschelde 26fd3458f9 Windows: Configure MinGW LTO with -fno-use-linker-plugin -fwhole-program
- Works around and closes #102867.
- Works around and closes #102982.

Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2025-02-20 17:47:26 +01:00
Alex ee0cebeaad Fix modified_time on Android 2025-02-20 17:13:41 +01:00
Rémi Verschelde fe799deee0 Merge pull request #103050 from matheusmdx/fix-show-in-filesystem-crash
Don't show `Show in Filesystem` Popup for empty frames in `SpriteFrames` editor
2025-02-20 16:51:57 +01:00
Rémi Verschelde 413b7941f3 Merge pull request #103026 from bruvzg/drv_names
Always allow selecting any rendering driver in the settings, add "auto" option.
2025-02-20 16:51:54 +01:00
Rémi Verschelde cbb22caa35 Merge pull request #102964 from akien-mga/mbedtls-2.28-compat
mbedtls: Don't set TLS max version on Mbed TLS < 3.0
2025-02-20 16:51:51 +01:00
Rémi Verschelde fd446dcbe3 Merge pull request #102922 from KoBeWi/haunted_converter
Remove non-existent IPUnix conversion
2025-02-20 16:51:48 +01:00
Rémi Verschelde 5a1688a86b Merge pull request #99297 from AThousandShips/fix_trans_virtuals
[Editor] Fix parsing translations in `EditorTranslationParserPlugin`
2025-02-20 16:51:45 +01:00
Thaddeus Crews 45875c2a6c Merge pull request #103059 from bruvzg/ime_update
[IME] Do not redraw and move caret on IME update w/o text/position changes.
2025-02-20 07:47:54 -06:00
Pāvels Nadtočajevs 84a2e3fdb0 [IME] Do not redraw and move caret on IME update w/o text/position changes. 2025-02-20 08:23:50 +02:00
Thaddeus Crews 70eb62faf2 Merge pull request #103021 from Hilderin/fix-embedded-game-start-location-windows
Fix Embedded Game startup location on Windows
2025-02-19 16:54:09 -06:00
matheusmdx 63f7e4d16e Don't show 'show in files' popup for empty frames 2025-02-19 19:25:28 -03:00
A Thousand Ships fec3d9e68c [Editor] Fix return of EditorTranslationParserPlugin._parse_file
Merged `_get_comments` into `_parse_file` and changed to using a
returned `Array[PackedStringArray]` instead.
2025-02-19 20:11:24 +01:00
Giganzo 00527d0588 Fix Tree hover position with multiple columns 2025-02-19 17:09:38 +01:00
Pāvels Nadtočajevs dea20c4a9b Always allow selecting any rendering driver in the settings, add "auto" option. 2025-02-19 12:05:04 +02:00
kobewi e2a6d53419 Increase size of Offset field in audio import dialog 2025-02-19 10:52:39 +01:00
Thaddeus Crews e567f49cbb Merge pull request #103017 from kleonc/canvas_item_debug_redraw_fix_rects_in_rd
Fix debug CanvasItem redraw rects in RD renderer
2025-02-18 20:47:54 -06:00
Thaddeus Crews e91493fb7b Merge pull request #102993 from bruvzg/fix_cb_win_erase
Prevent pending input event callbacks from erasing the window in the middle of a loop.
2025-02-18 20:47:53 -06:00
Thaddeus Crews 93b6a17689 Merge pull request #102978 from Hilderin/fix-embedded-game-over-expanded-bottom-panel-simple-version
Fix Embedded Game over expanded bottom panel, by resetting expanded bottom panel on Play
2025-02-18 20:47:52 -06:00
Hilderin 224d9bfe3f Fix Embedded Game startup location on Windows 2025-02-18 19:05:15 -05:00
Hilderin 136c4c64a0 Fix Embedded Game over expanded bottom panel - Simple version 2025-02-18 17:55:47 -05:00
kleonc 2bb6ad5cdf Fix debug CanvasItem redraw rects in RD renderer 2025-02-18 23:49:43 +01:00
Frank Becker 70a8421c30 Apply fix_alpha_edges for both theme icons and font glyphs.
Only apply fix_alpha_edges for SVG glyphs.
Allow modulate for svg glyphs.
2025-02-18 13:10:28 -08:00
erodozer e48fea73e6 Support multi part extensions in import plugins 2025-02-18 13:19:05 -05:00
Thaddeus Crews 5403535d91 Ignore svg newline commit 2025-02-18 11:05:14 -06:00
Thaddeus Crews 7e5baa0426 Style: Enforce trailing newlines on svgs 2025-02-18 11:02:45 -06:00
Thaddeus Crews 742bd5cc4c Style: Ensure svgs have trailing newlines 2025-02-18 11:01:42 -06:00
Ricardo Buring 99f9561be7 When code signing, specify which keystore is not found 2025-02-18 16:54:49 +01:00
Thaddeus Crews e948f52ea9 Merge pull request #102983 from bruvzg/fix_flash
[Window] Fix flashing subwindows.
2025-02-18 07:56:08 -06:00
Thaddeus Crews e2b2dce6c5 Merge pull request #102955 from adamscott/fix-web-audio-pause
[Web] Fix issue when pausing an non-started sample
2025-02-18 07:56:07 -06:00
Thaddeus Crews 24dccd40c1 Merge pull request #99479 from Sauermann/fix-remove-project-conversion
Remove temporary project conversion
2025-02-18 07:55:56 -06:00
Pāvels Nadtočajevs f710781b16 Prevent pending input event callbacks from erasing the window in the middle of a loop. 2025-02-18 15:26:13 +02:00
Kasper Arnklit Frandsen 03812fde8a Add emission shape gizmos to Particles2D 2025-02-18 11:29:29 +00:00
bruvzg f86a24fcfd [Window] Fix flashing subwindows. 2025-02-18 08:14:54 +02:00