1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-29 16:16:38 +00:00
Commit Graph

72295 Commits

Author SHA1 Message Date
Thaddeus Crews
244f7931d2 Merge pull request #100369 from Calinou/doc-gpuparticles-emit-subparticle
Document `GPUParticles.emit_particle()` only working on Forward+ and Mobile
2024-12-13 16:19:31 -06:00
Thaddeus Crews
3c6896fd2a Merge pull request #99181 from GuilhermeGSousa/animation-node-extension
Add animation node extension
2024-12-13 16:19:30 -06:00
Thaddeus Crews
28c02a8491 Merge pull request #100334 from Sauermann/fix-editor-shortcut-reconversion
Introduce a conversion for editor shortcuts
2024-12-13 16:19:28 -06:00
Thaddeus Crews
d7e4b9e31b Merge pull request #95660 from Meorge/remove-texturebutton-needs-normal-texture
Remove incorrect statement about TextureButton normal texture
2024-12-13 16:19:27 -06:00
Thaddeus Crews
9f0c6231c7 Merge pull request #100236 from Flarkk/fix_spot_clustering
Fix wide `SpotLight3D` clustering
2024-12-13 16:19:26 -06:00
Thaddeus Crews
5527bcbfbe Merge pull request #100363 from RandomShaper/fix_mtl_mt_deadlock_4.4
Fix deadlock possibility in threaded load of materials
2024-12-13 16:19:24 -06:00
Thaddeus Crews
f2c8f17906 Merge pull request #100325 from hpvb/fix-rendering-alignment
Fix several ubsan reported misaligned accesses
2024-12-13 16:19:20 -06:00
Thaddeus Crews
80ae6fc1ee Merge pull request #100324 from YYF233333/codestyle
Remove dead code in `AnimationNodeStateMachine`
2024-12-13 16:19:18 -06:00
HP van Braam
70dbc311d1 Exclude known thirdparty/ ubsan errors
In my quest to make ubsan failures a build failure I've added all
current ubsan errors by type to a new suppression file which we will
then also use with CI.

The idea is to only add known ubsan errors to this file, so this is not
a blanket exclusion of thirdparty/ this means that if we get new or
unexpected ubsan in thirdparty/ builds would fail.
2024-12-13 23:11:35 +01:00
Alex Threlfo
a85b0279fd fix: space transformations in WorldPositionFromDepth visual shader node generation 2024-12-14 08:52:42 +11:00
HP van Braam
062d74bb9c Fix ubsan reported errors in rendering
This allows the TPS demo to run without an ubsan reports from any of the
rendering code.
2024-12-13 21:27:37 +01:00
clayjohn
f2a993aa1d Reduce slider range for Particles preprocess to discourage setting a preprocess time of 10 minutes 2024-12-13 11:36:36 -08:00
Lars Pettersson
d0aa91bc6b Don't rebuild tree when selecting a file in FileSystem list view 2024-12-13 19:37:33 +01:00
Hugo Locurcio
49ca40cdbf Document GPUParticles.emit_particle() only working on Forward+ and Mobile 2024-12-13 16:41:41 +01:00
landervr
dd7325d3f7 remove solid boxes voxelGI and ReflectionProbe 2024-12-13 16:26:22 +01:00
Lukas Tenbrink
383d933f53 Optimize SWAP macro by using move semantics. 2024-12-13 16:19:52 +01:00
HP van Braam
e674379764 Fix several ubsan reported misaligned accesses
These misaligned accesses are shown in all of our CI hooks. It turned
out to not be difficult to fix.

It is likely that this will improve performance for aarch64.
2024-12-13 15:32:35 +01:00
Rémi Verschelde
7f5c469292 Merge pull request #92131 from paulloz/net8
C#: Move GodotSharp to .NET8
2024-12-13 15:31:59 +01:00
Paul Joannon
fb8553e4d7 Move to .NET8
- Change TFM and LangVersion
- Better exception throwing (CA1510, CA1512, CA1513)
- Better exception utility method definition (CA1859)
- Prefer comparing `.Count` over calling `.Any()` (CA1860)
- Prefer `.AsSpan()` over `.Substring()` (CA1846)
- Add a few more `scoped`
- Use `RuntimeHelpers.GetUninitializedObject()` instead of `FormatterServices.GetUninitializedObject()`
- Use delegate instead of delegate pointer in variant generic conversions
- Enable EnforceExtendedAnalyzerRules in source generator projects
- Disable CS8981 on structs named movable in Godot.NativeInterop
2024-12-13 14:00:13 +01:00
Pablo Andres Fuente
7c4c1100e0 Improving detection of ccache on Mac
Before this commit, ccache where only used on Mac when
`OSXCROSS_ROOT` was defined. Now, it could be used even
when that envirnment variable is not defined.
2024-12-13 09:50:27 -03:00
Pedro J. Estébanez
4bfc6f8d70 Fix deadlock possibility in threaded load of materials 2024-12-13 12:49:10 +01:00
Florent Guiocheau
02f05cf0ac Fix wide angle spotlight clustering 2024-12-13 11:28:42 +01:00
Pedro J. Estébanez
4f8dd96b3d Rationalize busy waits 2024-12-13 10:14:26 +01:00
Rémi Verschelde
691d8bee2b Merge pull request #100344 from clayjohn/refprobe-blend
Small fixups for the new reflection probe blending
2024-12-13 09:48:50 +01:00
Florent Guiocheau
4c34813b32 Fix very large radius SphereMesh and CapsuleMesh normals 2024-12-13 09:26:59 +01:00
Raul Santos
d526d523b4 [.NET] Fix gradle builds for multiple ABIs
Include the needed .NET jar in the Godot templates so it's always available, then we don't need to include the jar from a .NET publish which could fail when exporting to multiple architectures because it would attempt to add the same jar for each architecture.
2024-12-13 08:01:13 +01:00
clayjohn
356fa37f89 Small fixups for the new reflection probe blending 2024-12-12 17:29:21 -08:00
Mikael Hermansson
f6126badba Make RID allocation thread-safe when using Jolt Physics 2024-12-13 00:39:42 +01:00
Malcolm Anderson
46c9089ddc Remove incorrect statement that TextureButton needs a texture for normal state in docs
Update doc/classes/TextureButton.xml

Co-authored-by: Micky <66727710+Mickeon@users.noreply.github.com>

Improve explanation of texture fallback behaviors for TextureButton

Remove a bit of incorrect information from TextureButton documentation

Most other state textures are not overlaid (only `texture_focused`)

Apply suggestions from code review
2024-12-12 15:34:38 -08:00
smix8
20c519d0fa Fix 3D CSG not reacting to child node order changes
Fixes 3D CSG not reacting to child node order changes.
2024-12-13 00:28:42 +01:00
Thaddeus Crews
ba2c5c1e61 Merge pull request #100318 from dsnopek/stream-peer-extension-put-partial-data-bug
Fix `StreamPeerExtension::put_partial_data()` to call `_put_partial_data()`
2024-12-12 16:13:38 -06:00
Thaddeus Crews
c34a3f1ed2 Merge pull request #100059 from Calinou/editor-default-enable-emulate-numpad
Enable Emulate Numpad by default in the 3D editor settings
2024-12-12 16:13:37 -06:00
Thaddeus Crews
bfc66f0608 Merge pull request #100282 from devloglogan/motion-vectors-openxr
Add renderer motion vectors API for use with OpenXR
2024-12-12 16:13:36 -06:00
Thaddeus Crews
91dc363dca Merge pull request #100120 from allenwp/make-editor-shortcuts-global
Force fixed undo history to make editor shortcuts use global history.
2024-12-12 16:13:34 -06:00
Thaddeus Crews
e0968eee8c Merge pull request #91064 from KoBeWi/scan_everything
Make scan for projects threaded
2024-12-12 16:13:33 -06:00
Thaddeus Crews
7c015a768f Merge pull request #99958 from lander-vr/reflection-probe-blend-property
Add Blend Distance property to ReflectionProbe
2024-12-12 16:13:32 -06:00
Thaddeus Crews
ed8b4ab060 Merge pull request #100337 from akien-mga/scons-sse2-baseline
SCons: Properly set SSE2 as baseline on x86_32
2024-12-12 16:13:31 -06:00
Thaddeus Crews
9fba62a938 Merge pull request #100239 from Ivorforce/cowdata-move-constructor
Add move constructor and move assignment to `CowData`, `String`, `Char16String`, `CharString`, and `Vector`.
2024-12-12 16:13:30 -06:00
Thaddeus Crews
6acb58d95a Merge pull request #100331 from akien-mga/jolt-fix-mingw-lto-multiple-definitions
Jolt: Fix multiple definition LTO linking issue with mingw-gcc
2024-12-12 16:13:29 -06:00
Thaddeus Crews
cc078036f7 Merge pull request #100327 from BlueCube3310/lightmap-compress-default
LightmapGI: Automatically compress new lightmaps
2024-12-12 16:13:28 -06:00
Thaddeus Crews
376980ebda Merge pull request #100315 from hpvb/renegerate-x11-0.7
Regenerate X11 wrappers with dynload-wrapper 0.7
2024-12-12 16:13:27 -06:00
Thaddeus Crews
31bc6afcad Merge pull request #96802 from dsnopek/expose-resource-importer-get-format-version
Expose `ResourceImporter::get_format_version` via `EditorImportPlugin::_get_format_version()`
2024-12-12 16:13:26 -06:00
Thaddeus Crews
b7501d219c Merge pull request #100322 from darksylinc/matias-tf-comment-fix
Fix grammar / spelling in comments
2024-12-12 16:13:25 -06:00
Thaddeus Crews
c5f0d571b5 Merge pull request #97985 from RobProductions/add-tablet-nav-preset
Add `Tablet/Trackpad` 3D navigation preset
2024-12-12 16:13:24 -06:00
Thaddeus Crews
9c290c4c56 Merge pull request #100033 from Daylily-Zeleen/daylily-zeleen/optimize_callable_to_string
Optimize callable's stringify text.
2024-12-12 16:13:23 -06:00
HP van Braam
6f7525c396 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.
2024-12-12 22:47:05 +01:00
Rémi Verschelde
f86b3696f6 SCons: Properly set SSE2 as baseline on x86_32
Setting it only for release templates on Windows and macOS was inconsistent,
and Jolt requires it as a minimum.

Drop the `-mxsave` flag from the raycast module, this doesn't seem to be
used explicitly by Embree, and unnecessarily makes our config and baseline
muddy.
2024-12-12 22:44:44 +01:00
kobewi
cb4ceb823c Make scan for projects threaded 2024-12-12 22:31:32 +01:00
Robin Ward
b3e970dde8 Adds get_selection_line_offset to RichTextLabel
This new method allow you to get the line offset of the current
selection (returns -1 if nothing is selected.)

This is useful if you want to pop up a control or menu above the
currently selected text. Previously there was no accurate way to get
this information.

The logic is moved from the implementation of `scroll_to_selection`
verbatim, and that method has been adjusted to avoid repetition.
2024-12-12 16:02:21 -05:00
Rémi Verschelde
0ba875ec29 Jolt: Fix multiple definition LTO linking issue with mingw-gcc 2024-12-12 21:31:34 +01:00