66943 Commits

Author SHA1 Message Date
Cadence
c4ff72e2a0 Fix iOS audio driver attempting to start output too early
(cherry picked from commit b4fd9d1f38)
2025-01-22 13:34:45 -05:00
Danni
5ae4f413b6 Add some more comments to AudioServer and remove playback fade-in
Co-authored-by: Ellen Poe <ellen@ellenhp.me>
(cherry picked from commit e55ceebbf9)
2025-01-22 13:34:34 -05:00
Adam Scott
3fb0681d7c [Web] Make audio bus fetching more resilient to errors
(cherry picked from commit 7a634ad2d4)
2025-01-22 13:34:26 -05:00
Ainsley Su
fc36f24039 No freezing when size in header is too large
Give warning if the size in header mismatch the actual file size. If
data chunk size is greater than the actual data size, try to import by
treating all the remaining data as data chunk and give warning to users.

(cherry picked from commit cd126a041e)
2025-01-22 13:34:13 -05:00
Fabian S.
c05db613f9 AudioEffectPitchShift: Fix distortion when pitch is 1.0
(cherry picked from commit 8ebabf68f8)
2025-01-22 13:34:02 -05:00
Dario
ece864ea7e Fix duplicated spec constant on SPIR-V reflection.
(cherry picked from commit 1af1edf60c)
2025-01-22 13:27:14 -05:00
clayjohn
af59e74635 Correct aspect ratio used in FSR2 calculations to remove a source of depth-based ghosting
(cherry picked from commit 25a9b04ecc)
2025-01-22 13:27:01 -05:00
BlueCube3310
832f0b32be Web: Export ASTC/BPTC compressed textures
(cherry picked from commit 84e6ac9ecd)
2025-01-22 13:26:47 -05:00
Brandon Haley
e9b781c3d1 Implemented fix from #91219 in compatibility renderer by reversing the z
axis in the particle shader.

(cherry picked from commit 990612040a)
2025-01-22 13:26:28 -05:00
Alex Threlfo
a0b8df5ddc fix: crash in scenes with more than 8 shadowed directional lights
(cherry picked from commit 34ebec3748)
2025-01-22 13:26:13 -05:00
Alex Threlfo
197be68959 fix: canvas background mode not clearing correctly when using gles3 glow effect
(cherry picked from commit 830f25010f)
2025-01-22 13:25:52 -05:00
alessand10
5b5723e7e8 Fix a command buffer leak that occurs in dx12
(cherry picked from commit 9ea97c017b)
2025-01-22 13:23:14 -05:00
landervr
60b83b0e06 Fix ReflectionProbe AABB
(cherry picked from commit 11225de197)
2025-01-22 13:23:01 -05:00
Jamie Pate
cb7d88d31b Fix gl_compatibility lightmap uniforms not being set
Fixes #99592

The following variables were set too early, and later code never ran..
prev_shader, prev_variant, prev_spec_constants variables

These variables were shared in two different branch conditions but were
updated inside the first one, so the second could never be true..

The condition to update lighting also should check prev_spec_constants
since it updates that uniform.

(cherry picked from commit 45a7bcc477)
2025-01-22 13:22:47 -05:00
BlueCube3310
9254e2a34a Fix updating lightmap captures on Mobile
(cherry picked from commit bb3d0045b0)
2025-01-22 13:21:29 -05:00
Florent Guiocheau
956a54847e Fix SSS with reverse-z
(cherry picked from commit 3376b9166b)
2025-01-22 13:21:16 -05:00
clayjohn
649a2631cb Normalize normal tangent and binormal before interpolating in the mobile renderer to avoid precision errors on heavily scaled meshes
(cherry picked from commit 2c158c386b)
2025-01-22 13:20:56 -05:00
jadeharley2
0ddf3cfbde Fix inability to set TextureLayeredRD as TEXTURE_TYPE_CUBE or TEXTURE_TYPE_CUBE_ARRAY
(cherry picked from commit a4d1d36c85)
2025-01-22 13:17:07 -05:00
yds
f871a0b4e6 Fix MultiMesh errors in editor and resource duplication
(cherry picked from commit cb94652c34)
2025-01-22 13:16:53 -05:00
dan
b1883f9427 Fix window exiting with no message to user if _create_window fails
(cherry picked from commit 403e53e1d3)
2025-01-22 13:16:41 -05:00
m-pranav-r
7e44ddf9b8 Fixed light culling mask behavior in Mobile and Compat renderers
(cherry picked from commit fcea158927)
2025-01-22 13:16:24 -05:00
m-pranav-r
16efbfe33f Fix incorrect depth comparison used to calculate volumetric fog shadowing
(cherry picked from commit c12001a9dc)
2025-01-22 13:16:08 -05:00
yesfish
cd6e3a8e2a Lightmap Dynamic Bugfix
(cherry picked from commit 274076c5be)
2025-01-22 13:15:54 -05:00
clayjohn
cd36b775be Improve the look of radiance map in Compatibility backend
(cherry picked from commit 4f674154d9)
2025-01-22 13:15:40 -05:00
Patrick Owen
090d65ddf2 Clamp UV-coordinates to centers of outermost texels when configured to do so
In addition, fix region_filter_clip_enabled documentation to be consistent with AtlasTexture.xml, since that is the option whose behavior was fixed

(cherry picked from commit d720eb80e1)
2025-01-22 13:14:57 -05:00
Jiang Yiheng
38d92de3ed Fix hash calculation for NTSliceKey
A bug was introduced from 057367bf by adding FSR 2.2.1 support.
Which increases hash collision and hurts performance.

(cherry picked from commit 864d4fb32a)
2025-01-22 13:14:48 -05:00
Bastiaan Olij
67882991a1 Fix compatibility canvas background depth issue
(cherry picked from commit 491a5d9450)
2025-01-22 13:14:20 -05:00
Joshua Staub
eac621aa8d Check device texture size limits in RenderingDevice::texture_create
(cherry picked from commit 16ee2f22eb)
2025-01-22 13:13:32 -05:00
Erik Johnson
6115712ebe Fix volumetric fog artifacts when inside the fog
(cherry picked from commit 532630e7cd)
2025-01-22 13:11:03 -05:00
George L. Albany
0b9263634c Merge pull request #935 from Spartan322/4.3.1-cherry-pick/bugs-gdextension
[4.3] Cherry-picks for the 4.3 (4.3.1) branch - 1st gdextension bugs batch
2025-01-18 20:58:53 +00:00
George L. Albany
6af95a2bf8 Merge pull request #934 from Spartan322/4.3.1-cherry-pick/performance
[4.3] Cherry-picks for the 4.3 (4.3.1) branch - 1st performance batch
2025-01-18 20:58:29 +00:00
David Snopek
e58becb08a Fix StreamPeerExtension::put_partial_data() to call _put_partial_data()
(cherry picked from commit 8c01fc2274)
2025-01-18 13:03:54 -05:00
David Snopek
7f9675c815 Add missing GDVIRTUAL_BIND() for AudioStream::_has_loop() and ::_get_bar_beats()
(cherry picked from commit 3866a7f818)
2025-01-18 13:03:38 -05:00
David Snopek
3cc0ea8665 CompositorEffect should use GDVIRTUAL_CALL() so it works with GDExtension
(cherry picked from commit ca12f350db)
2025-01-18 13:03:08 -05:00
David Snopek
52080b79fa GDExtension: Fix method binds not saying if they are varargs
(cherry picked from commit 2599df3b8a)
2025-01-18 13:02:40 -05:00
Jeff Ward
b192feba21 Support extension icons in ScriptCreateDialog
Attempt to grab the icon for a script type from the theme first, then ask the extension for the icon.

(cherry picked from commit 5da3e81640)
2025-01-18 13:02:09 -05:00
kobewi
bba637e533 Don't use EditorSettings metadata
(cherry picked from commit c8a0766930)
2025-01-18 13:01:50 -05:00
HP van Braam
566c3db2d6 Improve Scene Tree editor performance
We now cache the Node*<>TreeItem* mapping in the SceneTreeEditor. This
allows us to make targeted updates to the Tree used to display the scene
tree in the editor.

Previously on almost all changes to the scene tree the editor would
rebuild the entire widget, causing a large number of deallocations an
allocations. We now carefully manipulate the Tree widget in-situ saving
a large number of these allocations.

In order to know what Nodes need to be updated we add a
editor_state_changed signal to Node, this is a TOOLS_ENABLED,
editor-only signal fired when changes to Node happen that are relevant
to editor state.

We also now make sure that when nodes are moved/renamed we don't check
expensive properties that cannot contain NodePaths. This saves a lot of
time when SceneTreeDock renames a node in a scene with a lot of
MeshInstances. This makes renaming nodes go from ~27 seconds to ~2
seconds on large scenes.

SceneTreeEditor instances will now also not do all of the potentially
expensive update work if they are invisible. This behavior is turned off
by default so it won't affect existing users. This change allows the
editor to only update SceneTreeEditors that actually in view. In
practice this means that for most changes instead of updating 6
SceneTreeEditors we only update 1 instantly, and the others only when
they become visible.

There is definitely more that could be done, but this is already a
massive improvement. In complex scenes we see an improvement of 10x,
things that used to take ~30 seconds now only take 2.

This fixes #83460

I want to thank KoBeWi, TokisanGames, a-johnston, aniel080400 for
their tireless testing. And AeioMuch for their testing and providing a
fix for the hover issue.

(cherry picked from commit 6f7525c396)
2025-01-18 12:51:38 -05:00
Yevhen Babiichuk (DustDFG)
1797526f45 Fix tooltip message of button that opens groups/signals dock
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
(cherry picked from commit 4a5ae8c388)
2025-01-18 12:51:38 -05:00
yahkr
9d4768227b [Editor] Update SceneUniqueName button text when disabled to clarify access.
(cherry picked from commit 8f5b11ac25)
2025-01-18 12:51:38 -05:00
AeioMuch
f50542da1f Prevent selecting the hovered node if the mouse is not inside the inspector at the end of the drag
(cherry picked from commit 5848d72915)
2025-01-18 12:51:38 -05:00
Carson Bates
b3c1fe5cbb Optimize mesh generation by preventing unneeded shape recalculations
Co-authored-by: Sequoia Haynes <supersequoia11@gmail.com>
(cherry picked from commit c874e284eb)
2025-01-18 12:51:37 -05:00
clayjohn
ebb33b67c4 Reduce shader permutations in the compatibility backend
(cherry picked from commit c810ea4c1b)
2025-01-18 12:51:37 -05:00
George L. Albany
859eefd203 Merge pull request #931 from Spartan322/4.3.1-cherry-pick/bugs-core
[4.3] Cherry-picks for the 4.3 (4.3.1) branch - 1st core bugs batch
2025-01-18 17:51:13 +00:00
George L. Albany
66372fa825 Merge pull request #933 from Spartan322/4.3.1-cherry-pick/enhancements
[4.3] Cherry-picks for the 4.3 (4.3.1) branch - 1st enhancements batch
2025-01-18 17:50:43 +00:00
George L. Albany
d827275334 Merge pull request #932 from Spartan322/4.3.1-cherry-pick/bugs-buildsystem
[4.3] Cherry-picks for the 4.3 (4.3.1) branch - 1st buildsystem bugs batch
2025-01-18 17:50:23 +00:00
HP van Braam
907619a347 Optimize Thread::get_caller_id()
By making sure that Thread always has a valid caller_id we can remove the
check making the function a straightforward getter instead.

In some quick tests we see a repeatable performance improvement of
somewhere around 0.32 mspf in TPS demo.

Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
(cherry picked from commit 873eb21ce8)
2025-01-18 11:16:29 -05:00
HP van Braam
0087672557 Don't set Variant::Type in destructor
When profiling Dome Keeper, I found that in physics_process a HashMap
gets cleared a lot, which ends up calling the Variant destructor.
Calling Variant::clear() dominates this operation.

By not uselessly setting the Type to NIL on destruction we save about
50% of time. This is likely because if there is a simple type in the
Variant that doesn't need destructing, but now we write when we should
just drop the Variant altogether.

Since the value of Variant::type should be unobservable after
destruction this doesn't change any outward behavior.

(cherry picked from commit 46c23e1758)
2025-01-18 11:16:28 -05:00
HP van Braam
d30d5dec2b Unconditionally use env.Decider("MD5-timestamp")
It seems that we are only enabling this option together with unsafe
build determinators. However it seems that MD5-timestamp by itself is
not unsafe.

MD5-Timestamp works by first checking the timestamp of a file, comparing
it to the scons database and if it does not match it will do an md5sum
to determine if the file needs rebuilding.

Without this option SCons will always create md5sums of every file. In
the case of a null build this is 50% of the time.

(cherry picked from commit 04fff3fe0d)
2025-01-18 11:16:28 -05:00
Rémi Verschelde
b81310065b Linux: Relax interdependency between freetype, libpng, and zlib for unvendored builds
This restriction was added to fix #7373 back then, which was a symbol conflict
between FreeType's bundled copy of gzip/zlib, and distro packages.

But we also unbundled FreeType's zlib in #69395 so this is no longer an issue.

On the other hand recent issues pointed out that using system-provided icu4c
or harfbuzz can cause issues (#91401, #100301). We still allow it for now but
raise a warning.

(cherry picked from commit 7fe0609118)
2025-01-18 11:16:28 -05:00