Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[4.3] Cherry-picks for the 4.3 (4.3.1) branch - 1st enhancements batch #933

Merged
merged 29 commits into from
Jan 18, 2025

Conversation

Spartan322
Copy link
Member

Enhancement PRs:

Extra PRs:

DarioSamo and others added 3 commits January 18, 2025 08:16
This effectively disables validation of the size of the data provided.

(cherry picked from commit 90679f1)
Adds get_bounds() function to NavigationMeshSourceGeometryData2D/3D to get a bounding box that covers all the geometry.

(cherry picked from commit 2e1f6b5)
Kimau and others added 3 commits January 18, 2025 11:16
In future work we may want to expose an isStylus or similar for
XR Trackers, though that is likely outside the scope of this commit
which is the core extension work.

Vendor Ref: https://logitech.github.io/mxink/OpenXR.html

(cherry picked from commit 19c7afe)
bruvzg and others added 23 commits January 18, 2025 11:16
(cherry picked from commit 4ac1f9c)
This applies both to tangents and general line drawing, making the
animation Bezier editor match the Curve editor inspector.

(cherry picked from commit ef35ca2)
Keep support for major 17 by using a version check for the changed API.

Fixes #93907.

(cherry picked from commit 4c72d59)
This is useful information to know, as the X11 display driver can be
used both on X11 natively and on Wayland through XWayland.

Certain editor issues only occur in multi-window mode
(or only in single-window mode). Some issues also only occur
on multi-monitor setups, so the monitor count is now listed.

(cherry picked from commit 107675f)
(cherry picked from commit 4f8dd96)
(cherry picked from commit d471210)
…nvendored 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 7fe0609)
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 04fff3f)
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 46c23e1)
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 873eb21)
@Spartan322 Spartan322 force-pushed the 4.3.1-cherry-pick/enhancements branch from 5256266 to 907619a Compare January 18, 2025 16:16
@Spartan322 Spartan322 merged commit 66372fa into Redot-Engine:4.3 Jan 18, 2025
18 checks passed
@Spartan322 Spartan322 deleted the 4.3.1-cherry-pick/enhancements branch January 18, 2025 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment