11863 Commits

Author SHA1 Message Date
1f2d535f78 Merge pull request #100983 from mihe/jolt/only-iterate-active-bodies
Improve performance with many static/sleeping bodies when using Jolt Physics
2025-01-03 00:49:51 +01:00
8e76f669c2 Merge pull request #100929 from Geometror/fix-lm-penumbra-computation
Fix lightmapper penumbra computation
2025-01-03 00:49:33 +01:00
19a7b466c2 Merge pull request #100848 from BlueCube3310/astc-improvements
astcenc: Misc improvements and optimizations
2025-01-03 00:49:22 +01:00
5ff616736a Merge pull request #100825 from KoBeWi/colored_eight
Add `Color.from_rgba8` and deprecate Color8
2025-01-03 00:49:18 +01:00
dd7d36e803 Merge pull request #100770 from hpvb/command-queue-mt
Core: Refactor CommandQueueMT to use vararg templates for performance and maintainability
2025-01-03 00:49:02 +01:00
7dd14207dc Merge pull request #100631 from Faless/fix/wslay_frame_end_not_fin
[WS] Fix wslay multi-frame message parsing
2025-01-03 00:48:47 +01:00
ec7d7abde9 GLTF: Always read alphaCutoff property 2025-01-02 12:53:55 -08:00
7bed84c165 Revert "Stop reporting contacts for sleeping bodies when using Jolt Physics"
This reverts commit 5bbdb4a770.
2025-01-02 20:17:05 +01:00
4184884ad1 Make NavMeshQueries use NavRegionIteration polygons directly
Removes the duplicated NavMap polygon soup. All navmesh queries now use the NavRegionIteration polygons directly.
2025-01-02 15:35:29 +01:00
cccd2432c3 Refactor CommandQueueMT to use vararg templates
In order to make CommandQueueMT more maintainable this PR changes the
previous macro hell with variadic templates instead. This makes the
class far more explicit and will allow us to more easily change the way
the class functions in the future.

Furthermore this refactoring has allowed for some optimizations. In
particular by using std::forward to delay the decision of decaying the
type to as late as possible we are able to move the data from the
callsite into our Command buffer and later move it to the call.

In practice what this means is that compared to the old version instead
of copying values 3 times, we can now get away with 1 copy, and 1 move
for lvalues, and just 2 moves for rvalues. This saves quite a few
operations in a hot codepath.

We also now test to make sure that the amount of copies and moves are
what we expect. This way we can spot performance regressions in this
code easily.

Somewhat unscientifically, running TPS-demo by pressing enter and not
touching the controls average mspf, repeatable across many runs:

before: 6.467
after : 6.202
2025-01-02 15:35:08 +01:00
7beaddc9c0 Improve performance with many static/sleeping bodies when using Jolt Physics 2025-01-01 21:30:02 +01:00
6f363b989a astcenc: Misc improvements and optimizations 2024-12-31 14:25:14 +01:00
9db804f72e Jsonrpc: Convert ids to int if they are int by value 2024-12-30 20:06:02 +01:00
751d3d5852 Fix lightmapper penumbra computation 2024-12-30 16:30:59 +01:00
2582793d40 Merge pull request #100774 from Geometror/rm-leftover-print-lightmapper
Remove leftover debug print statement from `lightmapper_rd.cpp`
2024-12-30 08:58:58 -06:00
d12eeefcf4 Merge pull request #100763 from dsnopek/openxr-composition-layers-hole-punch-visibility
OpenXR: Fix hiding/showing composition layers using hole punching
2024-12-30 08:58:57 -06:00
77eb92f8f3 Merge pull request #100826 from Lielay9/csg-spin-360
Fix gaps in CSGPolygon3D spin mode at 360 degrees
2024-12-30 08:58:35 -06:00
a9b6b3d932 Merge pull request #100776 from AThousandShips/improve_null_checks
Improve use of `Ref.is_null/valid`
2024-12-29 09:35:04 -06:00
4e48b19e1f Add Color.from_rgba8 and deprecate Color8 2024-12-27 11:26:59 +01:00
c69408168c Patch navigation map async synchronization
Patches navigation map async synchronization.
2024-12-26 13:04:20 +01:00
Hei
d310d9f975 Fix gaps in CSGPolygon3D spin mode at 360 degrees 2024-12-26 13:59:24 +02:00
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
3cc5f6e346 Remove leftover print in lightmapper_rd.cpp 2024-12-23 21:14:14 +01:00
0f95e9f8e6 Merge pull request #100575 from Wierdox/improve_syntax_highlighting_for_shorthand_of_and_plus_bitwise_and_by_altering_string_name_highlighting
Improve `&&` and `&` syntax highlighting by altering `StringName` highlighting
2024-12-23 11:15:21 -06:00
33817b186f Remove unused header in drivers and modules.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2024-12-24 00:40:47 +08:00
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
d9ad5d1cd4 OpenXR: Fix hiding/showing composition layers using hole punching 2024-12-23 08:01:19 -06:00
d51615b334 Change navigation map synchronization to an async process
Changes the navigation map synchronization to an async process to avoid stalling the main thread.
2024-12-22 02:03:59 +01:00
0454122b3c Merge pull request #100711 from spoxii/patch/gltfstate_link_typo
Remove trailing double quote from link in GLTFState class documentation
2024-12-22 00:10:22 +01:00
4b3338799a Merge pull request #100633 from BastiaanOlij/fix_openxr_dpad_angle_degrees
OpenXR: Make sure wedge on DPad modifier is expressed in degrees.
2024-12-22 00:10:08 +01:00
ed81a17e1e Improve '&&' and '&' syntax highlighting by altering StringName highlighting 2024-12-21 14:02:31 -08:00
a676465b79 Remove trailing double quote from link in GLTFState class documentation
This fixes the link to https://github.com/KhronosGroup/glTF/blob/main/specification/2.0/schema/asset.schema.json
2024-12-21 20:58:47 +01:00
4727f0707b Jolt: Update to commit f094082aa, adding RISC-V, PPC64 and LoongArch support
Fixes #100557.
2024-12-21 15:15:50 +01:00
65bb72261b OpenXR: Make sure wedge on DPad modifier is expressed in degrees. 2024-12-21 20:59:24 +11:00
387230b90c Merge pull request #100667 from raulsntos/dotnet/fix-version-in-errors
[.NET] Update required .NET SDK version in error messages
2024-12-20 23:57:39 +01:00
fd5548a8b7 Merge pull request #100634 from YYF233333/iwyu2
Remove unused headers in servers
2024-12-20 23:57:09 +01:00
0a37e12a9b Merge pull request #100610 from YYF233333/style
Remove unused variable in `GDScriptLanguage`
2024-12-20 23:56:58 +01:00
e91b3ecd00 Merge pull request #100562 from AThousandShips/fix_text_server_binds
[TextServer] Fix use of `find_char` in text servers
2024-12-20 23:56:51 +01:00
8a743f23e6 Merge pull request #98385 from RandomShaper/thread_yield
Rationalize busy waits
2024-12-20 23:56:39 +01:00
63960e1ed6 [.NET] Update required .NET SDK version in error messages
Also, replaces the download URL with a shorter one since links are not clickable so I thought it'd be more convenient.
2024-12-20 21:57:38 +01:00
d798068a08 [WS] Fix wslay multi-frame message parsing
The wslay library, somehow unintuitively, will call the frame recv end
callback for control frames.

This has the side effect that while receiving a long message (i.e. a
multi-frame message), if a control frame (e.g. a ping or pong) is
received it may seem that a FIN frame has been received, resulting in
the current code truncating the message.

To avoid this, this commit now ignores the frame recv end callback, and
instead rely on the msg recv callback where we can check the opcode, and
is guaranteed to be called only when the FIN frame is received for text
and binary frames.
2024-12-20 12:44:59 +01:00
e88e30c273 Remove unused headers in servers.
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2024-12-20 18:51:01 +08:00
975369fceb [.NET] Fix EmitSignal with typed array parameters
Signals with typed arrays were generating EmitSignal methods with untyped array parameters.
2024-12-20 06:51:09 +01:00
15b4331fb1 [TextServer] Fix use of find_char in text servers
The `find_char` method is not (currently) available to extensions and
can't be used in the text servers which can be built as extensions, so
now controlled by compile option
2024-12-19 21:44:30 -05:00
8b0b38ffa7 Merge pull request #100588 from timothyqiu/wild-rid
Betsy: Fix stack-use-after-scope when using BC3 and BC5
2024-12-19 20:00:12 -06:00
5ceeff711c Merge pull request #100587 from smix8/path_return
Fix early navigtion path return
2024-12-19 20:00:10 -06:00
2fcd8223e8 Merge pull request #99538 from Geometror/lightmap-gi-transparent-surface
Add transparency support for LightmapGI
2024-12-19 19:59:52 -06:00
3a12fc89b6 Merge pull request #100473 from opsocket/fix-rigid-bodies-damping
Update damping values for jolt rigid bodies on mode switch at runtime
2024-12-19 19:59:39 -06:00
a4f423cc97 Merge pull request #78489 from dalexeev/gds-add-disassembling-implicit-funcs
GDScript: Add disassembling implicit and lambda functions
2024-12-19 19:59:36 -06:00
a43f90b89d Remove unused variable in GDScriptLanguage. 2024-12-20 00:48:06 +08:00