Commit graph

10170 commits

Author SHA1 Message Date
Rémi Verschelde
24a2560d30
Merge pull request #87682 from zaevi/fix_csharp_stringname_ref
C#: Fix issues for StringName reference in `CSharpInstanceBridge.Get`.
2024-02-02 12:02:44 +01:00
Paul Joannon
999180d5b5
Delay fs update when populating path bimap 2024-02-01 22:06:40 +01:00
David Snopek
5935bfa860 OpenXR: Allow changing play area mode during active session 2024-01-31 12:58:22 -06:00
Nông Văn Tình
d81c9c32c5 Fix incorrect condition for error filtering
Fixes: #87643

The original condition stopped immediately after checking for 'searchText' in the 'Message' field, resulting in premature termination of subsequent checks. This fix ensures that all relevant conditions are appropriately evaluated before determining the filtering outcome.

Additionally, accompanying changes include improved code readability for better comprehension. This adjustment enhances the maintainability of the error filtering mechanism, contributing to a more robust codebase overall.
2024-01-31 23:01:37 +07:00
A Thousand Ships
f4f7e13388
Make GDScriptUtilityCallable return call error when method is invalid 2024-01-31 15:59:37 +01:00
Rémi Verschelde
cb0d450b7d
Merge pull request #87775 from clayjohn/GLTF-export-ra-rg
Remove workaround in GLTF exporter that double converts ra textures to rg
2024-01-31 10:57:17 +01:00
Rémi Verschelde
1c916c3d5b
Merge pull request #87546 from dsnopek/openxr-hand-tracking-vendor-extensions
OpenXR: Make it possible to implement vendor extensions to hand tracking from GDExtension
2024-01-31 10:54:55 +01:00
clayjohn
4f41b94943 Remove workaround in GLTF exporter that double converts ra textures to rg 2024-01-30 23:22:20 -08:00
Aaron Franke
aed5ea9460
Expose a method to get gravity for any physics body 2024-01-30 23:57:38 -06:00
Rémi Verschelde
736696b533
Merge pull request #87679 from raulsntos/dotnet/remove-unused
C#: Remove unused code
2024-01-30 17:48:07 +01:00
Rémi Verschelde
926a7dffd6
Merge pull request #87421 from dalexeev/gds-docgen-use-autoload-singleton-name
GDScript: Use autoload singleton name in `GDScriptDocGen`
2024-01-30 17:47:58 +01:00
Rémi Verschelde
9572cf5ab2
Merge pull request #86823 from dalexeev/gds-utility-func-as-callable
GDScript: Allow utility functions to be used as `Callable`
2024-01-30 17:47:50 +01:00
Rémi Verschelde
1f027f9aef
Merge pull request #86471 from dalexeev/gds-fix-pot-gen-skips-some-nodes-2
GDScript: Fix POT generator skips some nodes (part 2)
2024-01-30 17:47:44 +01:00
Rémi Verschelde
6a126b0934
Merge pull request #86180 from Riteo/wayland-squashed
Add Wayland support (squashed review edition)
2024-01-30 17:47:38 +01:00
Rémi Verschelde
a8cfd1436a
Merge pull request #86176 from dalexeev/gds-fix-type-highlighting
GDScript: Fix type highlighting
2024-01-30 17:47:33 +01:00
Rémi Verschelde
2edfdace76
Merge pull request #83220 from dalexeev/gds-highlight-code-regions
GDScript: Highlight code region comments
2024-01-30 17:47:23 +01:00
Riteo
7e0f7d3abd Add Wayland support
Not everything is yet implemented, either for Godot or personal
limitations (I don't have all hardware in the world). A brief list of
the most important issues follows:

- Single-window only: the `DisplayServer` API doesn't expose enough
information for properly creating XDG shell windows.

- Very dumb rendering loop: this is very complicated, just know that
the low consumption mode is forced to 2000 Hz and some clever hacks are
in place to overcome a specific Wayland limitation. This will be
improved to the extent possible both downstream and upstream.

- Features to implement yet: IME, touch input, native file dialog,
drawing tablet (commented out due to a refactor), screen recording.

- Mouse passthrough can't be implement through a poly API, we need a
rect-based one.

- The cursor doesn't yet support fractional scaling.

- Auto scale is rounded up when using fractional scaling as we don't
have a per-window scale query API (basically we need
`DisplayServer::window_get_scale`).

- Building with `x11=no wayland=yes opengl=yes openxr=yes` fails.

This also adds a new project property and editor setting for selecting the
default DisplayServer to start, to allow this backend to start first in
exported projects (X11 is still the default for now). The editor setting
always overrides the project setting.

Special thanks to Drew Devault, toger5, Sebastian Krzyszkowiak, Leandro
Benedet Garcia, Subhransu, Yury Zhuravlev and Mara Huldra.
2024-01-30 16:44:47 +01:00
Aaron Franke
c60ed2587d
Fix desynced duplicate GLTFNode transform properties 2024-01-29 21:24:02 -06:00
Rémi Verschelde
745f8e112f
Revert "Add UID support to GDScript files"
This reverts commit c7f68a27ec.

We still think GDScript files need UIDs to allow safe refactoring,
but we're still debating what form those should take exactly.

So far there seems to be agreement that it shouldn't be done via an
annotation as implemented here, so we're reverting this one for now,
to revisit the feature in a future PR.
2024-01-29 21:00:26 +01:00
Rémi Verschelde
fa48a51183
Merge pull request #87688 from AThousandShips/what_is_this
Remove unnecessary `this->` expressions
2024-01-29 13:18:09 +01:00
Rémi Verschelde
f0144d7f45
Merge pull request #87669 from bs-mwoerner/csharp_deadlock
Fix possible deadlock when creating scripts during a background garbage collection
2024-01-29 13:17:56 +01:00
Rémi Verschelde
5c61803971
Merge pull request #87668 from bruvzg/add_baseline_offset
[TextServer / Font] Add support for customizable baseline offset.
2024-01-29 13:17:52 +01:00
Rémi Verschelde
1fdee4f6f5
Merge pull request #87618 from DarioSamo/lightmapper_samplerless
Do not use a linear sampler on lightmapper when retrieving grid data.
2024-01-29 13:17:37 +01:00
Rémi Verschelde
061c776228
Merge pull request #87381 from YuriSizov/core-sneaky-properties
Better hide internal properties from users
2024-01-29 13:16:55 +01:00
Rémi Verschelde
269145f48a
Merge pull request #87300 from Calinou/math-normalize-error-show-value
Display values in vector/quaternion math function errors
2024-01-29 13:16:51 +01:00
Rémi Verschelde
44b92ec85f
Merge pull request #86313 from BlueCube3310/etc2-r-rg
Implement `ETC2_R` and `ETC2_RG` compression to `etcpak`
2024-01-29 13:16:34 +01:00
Rémi Verschelde
13bf4fd19a
Merge pull request #85519 from mxaddict/blender-rpc-server
Added proper timeout for blender rpc connection
2024-01-29 13:16:22 +01:00
Yuri Sizov
d644b9b640 Better hide internal properties from users 2024-01-29 12:35:10 +01:00
A Thousand Ships
15369fdb1d
Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
Michael Wörner
9d50a486bf Fixed ~CSharpScript() holding on to a mutex longer than necessary, creating potential for a deadlock. 2024-01-28 21:28:14 +01:00
Zae
1e14503715 C#: Fix issues for StringName reference in CSharpInstanceBridge.Get. 2024-01-29 02:04:02 +08:00
Hugo Locurcio
0437db0106
Display values in vector/quaternion math function errors
This can help track down the source of the error more easily.
2024-01-28 18:45:46 +01:00
Raul Santos
82380ec700
C#: Remove unused code
- Remove `AotBuilder` that was used for MonoAOT in 3.x.
- Remove `PlaySettings` that was used for IDE support in 3.x.
- Remove `ApiAssembliesInfo` that was used for Project generation in 3.x.
- Remove pieces of the old iOS support from 3.x.
2024-01-28 16:09:59 +01:00
bruvzg
85df221610
[TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
mxaddict
857586b7ae Added proper timeout for blender rpc connection 2024-01-27 03:44:27 +08:00
Yuri Sizov
815038962f Improve error reporting in the asset library and in related types
This also makes errors related to asset image loading
verbose-only, because, frankly, users can't do much about
those errors. Spamming them with error messages
about some assets on the frontend being broken
is pointless.
2024-01-26 20:33:22 +01:00
mxaddict
ad106a283b Update blender_path behavior to require exact path to executable instead of trying to guess it 2024-01-27 00:41:53 +08:00
Dario
cbc929edf0 Do not use a linear sampler on lightmapper when retrieving grid data. 2024-01-26 11:36:21 -03:00
Rémi Verschelde
99ac3d332a
Merge pull request #87597 from zaevi/fix_csharp_aot_initialization
C#: Fix not assigning `runtime_initialized` when initializing with AOT.
2024-01-26 11:49:53 +01:00
Rémi Verschelde
3bbf4abfaa
Merge pull request #87550 from zaevi/fix_csharp_generic_reloading
C#: Fix sorting for generic types when reloading assemblies.
2024-01-26 11:48:18 +01:00
Rémi Verschelde
563e385810
Merge pull request #87526 from zaevi/fix_csharp_gc
C#: Fix incorrect GC handle for non-instantiable types.
2024-01-26 11:47:25 +01:00
Rémi Verschelde
85b2c947b2
Merge pull request #87518 from paulloz/dotnet/fix-warnings
Clean a number of C# warnings
2024-01-26 11:46:37 +01:00
Rémi Verschelde
1ce40ebb44
Merge pull request #87386 from clayjohn/GLES3-lightmap-bake
Add GLES3 infrastructure for lightmap baking in the compatibility backend
2024-01-26 11:44:37 +01:00
Rémi Verschelde
849b69828b
Merge pull request #85908 from avilches/fix-must-be-variant-analyzer-fail-with-generic-typed-attributes
Allow using `[MustBeVariant]` in generic typed attributes
2024-01-26 11:42:34 +01:00
Rémi Verschelde
d36f5cf2ba
Merge pull request #85504 from nongvantinh/fix-csharp-loader
Fix C# script loader does not work reliably
2024-01-26 11:42:01 +01:00
Zae
18599c0935 C#: Fix sorting for generic types when reloading assemblies. 2024-01-26 18:00:46 +08:00
Paul Joannon
46b3096570
Clean a bunch of C# warnings
- `[Obsolete]` tag generated in the middle of documentation comments
- Potential `null` values in generators
- Obsolete call to `GetEditorInterface()`
- We don't want `Godot.Collections.Array` to end with `Collection`
- A few culture specifications and use of `AsSpan` instead of `SubString` in `StringExtensions`
- Disable CA1716 in GodotSharp
2024-01-26 09:38:33 +01:00
Zae
e868a9f577 C#: Fix not assigning runtime_initialized when initializing with AOT. 2024-01-26 05:44:40 +08:00
Danil Alexeev
faebb0895f
GDScript: Highlight code region comments 2024-01-25 22:03:48 +03:00
David Snopek
3d2cbb216e OpenXR: Make it possible to implement vendor extensions to hand tracking from GDExtension 2024-01-25 10:24:39 -06:00
Yuri Sizov
1949d91286 Merge pull request #86537 from BastiaanOlij/openxr_cleanup_scons
Cleanup of OpenXR module SCons config
2024-01-25 16:26:55 +01:00
Yuri Sizov
9579dc6313 Merge pull request #85239 from HolonProduction/global-class-property-location
Handle global classes when resolving property location
2024-01-25 16:26:50 +01:00
Bastiaan Olij
82a36cf31b Cleanup of OpenXR module scons config 2024-01-25 23:28:13 +11:00
clayjohn
efb1cbaad4 Add GLES3 infrastructure for lightmap baking in the compatibility backend 2024-01-24 17:13:30 -08:00
Zae
201e946741 C#: Fix incorrect GC handle for non-instantiable types. 2024-01-25 02:40:08 +08:00
HolonProduction
c99e4f862f Handle global classes when resolving property location 2024-01-24 18:05:47 +01:00
Yuri Sizov
ea6e20253b Merge pull request #87235 from dsnopek/openxr-local-floor
Add support for OpenXR local floor extension
2024-01-24 14:08:17 +01:00
Yuri Sizov
72756133e0 Merge pull request #85224 from HolonProduction/identifier-type-prefer-annotated
Prefer identifiers annotated type if assigned type is incompatible to it
2024-01-24 14:07:52 +01:00
David Snopek
a8690cbeed Add support for OpenXR local floor extension 2024-01-23 09:19:09 -06:00
Alberto Vilches
692412562d C#: Fix to allow usage of [MustBeVariant] in generic typed attributes 2024-01-21 22:29:29 +01:00
Nông Văn Tình
7676e389a7 Fixes C# script loader does not work reliably 2024-01-22 04:20:27 +07:00
Danil Alexeev
5e7cda3405
GDScript: Use autoload singleton name in GDScriptDocGen 2024-01-21 11:28:23 +03:00
Aaron Franke
b00e5cef63
GLTF: Update OMI_physics_body, add OMI_physics_shape, keep OMI_collider 2024-01-19 14:35:49 -06:00
Rémi Verschelde
0bcc0e92b3
Merge pull request #86730 from reduz/64-bit-cowdata
Promote CowData to 64 bits
2024-01-19 18:46:11 +01:00
Juan Linietsky
24fe0715b5 Promote CowData to 64 bits
Fixes a lot of bugs, please help me fill the list.
2024-01-19 17:41:10 +01:00
smix8
d6c31017a6 Add NavigationMesh border_size property for tile baking
Adds NavigationMesh border_size property for tile baking.
2024-01-19 17:31:36 +01:00
Fabio Alessandrelli
853df2895a [MP] Handle cleanup of "scene cache" nodes
Make sure we delete the relevant ObjectID from the cache when the nodes
are removed from tree.
2024-01-18 21:18:54 +01:00
Yuri Sizov
de95a3effe Merge pull request #85117 from BastiaanOlij/openxr_runtime_select
OpenXR: Add runtime selection dropdown
2024-01-18 19:26:52 +01:00
Rémi Verschelde
baf87e2717
Merge pull request #87294 from vnen/allow-free-callable
Allow `free()` to be used as Callable
2024-01-18 16:35:14 +01:00
Rémi Verschelde
33f3511241
Merge pull request #87293 from YuriSizov/editor-theme-a-rehashed-follow-up
Improve editor theme generation after the refactor
2024-01-18 16:34:50 +01:00
Rémi Verschelde
d3003c48b3
Merge pull request #67132 from KoBeWi/This_commit_message_is_auto-generated._Do_not_modify_it-
Add UID support to GDScript files
2024-01-18 16:33:14 +01:00
Bastiaan Olij
afd1dcf1b1 OpenXR: Add runtime selection dropdown 2024-01-18 15:59:22 +01:00
George Marques
b4e08eb752
Allow free() to be used as Callable
This method is registered in a special way so ClassDB doesn't naturally
know about its existence. Here it is hardcoded if any other option fail
to check if it is about the `free()` method and, if so, say it exists
and return a Callable.
2024-01-18 09:33:44 -03:00
Rémi Verschelde
29116a81df
Merge pull request #87306 from aaronfranke/fix-gltf-buf-view-crash
Fix crash in `GLTFBufferView::load_buffer_view_data`
2024-01-18 09:35:30 +01:00
Rémi Verschelde
90a5164536
Merge pull request #87144 from BlueCube3310/etc1-bye-bye
Use ETC2 compression for grayscale images
2024-01-18 09:35:06 +01:00
Rémi Verschelde
fa81059b9d
Merge pull request #85939 from adamscott/single-threaded-godot-4
Add `THREADS_ENABLED` macro in order to compile Godot to run on the main thread
2024-01-18 09:33:52 +01:00
Rémi Verschelde
b5dcb5f58a
Merge pull request #85215 from HolonProduction/type-from-property-class-name
Handle global classes when resolving type from `PropertyInfo`
2024-01-18 09:33:22 +01:00
Aaron Franke
dc325069fe
Fix crash in GLTFBufferView::load_buffer_view_data 2024-01-17 20:57:31 -06:00
HolonProduction
0203b3c310 Prefer identifiers annotated type if assigned type is incompatible to it 2024-01-17 22:32:00 +01:00
kobewi
c7f68a27ec Add UID support to GDScript files 2024-01-17 22:30:56 +01:00
HolonProduction
4ab985d138 Handle global classes when resolving type from PropertyInfo 2024-01-17 21:39:51 +01:00
Adam Scott
bd70b8e1f6
Add THREADS_ENABLED macro in order to compile Godot to run on the main thread 2024-01-17 13:58:29 -05:00
Yuri Sizov
b6a2c78033 Merge pull request #87286 from akien-mga/fix-preprocessor-if-ENABLED-checks
Fix `#if *_ENABLED` inconsistencies, should check if defined
2024-01-17 18:53:33 +01:00
Yuri Sizov
dc729f1614 Merge pull request #87278 from HolonProduction/give-those-autoloads-an-upgrade
Handle GDScript in `_type_from_variant` for autocompletion
2024-01-17 18:53:25 +01:00
Yuri Sizov
66736398cd Merge pull request #87264 from AThousandShips/aabb_fix_cs
[C#] Fix `Encloses` failing on shared upper bound for `AABB` and `Rect2(I)`
2024-01-17 18:53:22 +01:00
Yuri Sizov
cf76f3df03 Merge pull request #87240 from Malcolmnixon/bone-update-mode
Add bone update option to OpenXRHand to allow preserving original hand scale
2024-01-17 18:53:15 +01:00
Yuri Sizov
2dd7808757 Merge pull request #86961 from HolonProduction/completion-tests-fixup
Allow specifying a scene in completion tests
2024-01-17 18:53:03 +01:00
Yuri Sizov
c027aecc2e Merge pull request #86676 from rune-scape/sparse-script-reload
GDScript: Hot-reload changed scripts only
2024-01-17 18:52:54 +01:00
Yuri Sizov
5b22884b4a Merge pull request #86554 from HolonProduction/lookup-subscript
Fix symbol lookup in index subscript
2024-01-17 18:52:49 +01:00
Yuri Sizov
7351b5704a Merge pull request #86528 from avilches/must-be-variant-tests
Add unit tests for C# diagnostic analyzers
2024-01-17 18:52:45 +01:00
Yuri Sizov
28cf7fe2f6 Merge pull request #85384 from HolonProduction/unique-name-completion
Suggest scene unique nodes in `get_node` autocompletion
2024-01-17 18:52:31 +01:00
Yuri Sizov
45eedba1fa Improve editor theme generation after the refactor 2024-01-17 15:16:53 +01:00
Rémi Verschelde
0a7579b161
Fix #if *_ENABLED inconsistencies, should check if defined
Co-authored-by: Caroline Joy Bell <halotroop2288@proton.me>
2024-01-17 10:30:15 +01:00
Michael Wörner
a4db4ae658 Fixed an issue that could cause a crash when encountering a zero-length packet in an OGG stream.
A zero-length memcpy into a null pointer itself does not fail, but for gcc with optimizations, this can cause incorrect code to be generated further down the line since the pointer is then assumed to be non-null.
Now stripping zero-length packets and pages without packets from the OggPacketSequence during import. This prevents various warning and error messages for files that end on a zero-length packet.
2024-01-16 23:42:25 +01:00
HolonProduction
6af45c6ef2 Handle GDScript in _type_from_variant for autocompletion 2024-01-16 23:04:10 +01:00
A Thousand Ships
227a165ce4
[C#] Fix Encloses failing on shared upper bound for AABB and
`Rect2(I)`
2024-01-16 20:20:53 +01:00
Yuri Sizov
95b27fe8c7 Reorganize code related to editor theming
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.

Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.

All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
Rémi Verschelde
3df0c5be6a
Merge pull request #86473 from reduz/audio-playback-parameters
Implement audio stream playback parameters.
2024-01-16 10:35:36 +01:00
Juan Linietsky
a40fe16866 Implement audio stream playback parameters.
Implements a way for audio stream playback to be configured via parameters
directly in the edited AudioStreamPlayer[2D/3D].

Currently, configuring the playback stream is not possible (or is sometimes hacky
as the user has to obtain the currently played stream, which is not always immediately available).

This PR only implements this new feature to control looping in stream playback instances (a commonly requested feature, which was lost in the transition from Godot 2 to Godot 3).
But the idea is that it can do a lot more:

* If effects are bundled to the stream, control per playback instance parameters such as cutoff or resoance, or any other exposed effect parameter per playback instance.
* For the upcoming interactive music PR (#64488), this exposes an easy way to change the active clip, which was not possible before.
* For the upcoming parametrizable audio support (https://github.com/godotengine/godot-proposals/issues/3394) this allows editing and animating audio graph parameters.

In any case, this PR is required to complete #64488.

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update doc/classes/AudioStream.xml

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-01-16 10:31:52 +01:00
Malcolm Nixon
c316eee929 Add bone update option to OpenXRHand to allow preserving original hand scale.
This is useful if the hand model is not weighted to support re-scaling to the users hands; or the hand is scaled to non-human sizes.
2024-01-15 23:55:13 -05:00
Alberto Vilches
7a90c56c00 C# Add test suite for Diagnostic Analyzers: GlobalClass and MustBeVariant 2024-01-15 11:31:12 +01:00
Fabio Alessandrelli
754036f82f [MP] Fix auth not waiting for confirmation in some cases
The auth implementation was treating any received packet as a remote
confirmation after the peer was confirmed locally.

It now correctly awaits for the remote confirmation packet before
admitting new peers.
2024-01-14 21:38:06 +01:00
Fabio Alessandrelli
89dacb88ec [MP] Fix remote net ID cleanup
Synchronizers for spawned nodes were not correctly keeping track of the
net ID assigned by the remote, preventing the replication from
performing the proper cleanup.

This resulted in errors being thrown when sync messages were received
after despawn (which is possible due to their unreliable nature).
2024-01-14 21:04:03 +01:00
Fabio Alessandrelli
cb08f2a968 [MP] Fix spawned nodes not working after reset
Ensures that spawnable nodes (i.e. spawned nodes over which the local
instance has authority) always have a network ID, since they may lose it
after the multiplayer is reset (e.g. when changing the multiplayer peer).
2024-01-14 20:54:41 +01:00
BlueCube3310
381d6348df Use ETC2 compression for grayscale images 2024-01-13 13:27:00 +01:00
Ricardo Subtil
a06e5f70bc Simplify script paths to ensure proper resource path checks 2024-01-12 17:53:59 +00:00
Aaron Franke
d36a34edb7
Misc changes to the GLTF module before audio PR 2024-01-11 20:33:51 -06:00
Rémi Verschelde
8616487ece
Merge pull request #86916 from BlueCube3310/basisu-etc2-ra-rg
Fix `BasisUniversal` ETC RA as RG transcoding
2024-01-11 20:45:38 +01:00
Rémi Verschelde
5cdd0c6cd6
Merge pull request #84613 from Calinou/glslang-build-only-vulkan
Only build glslang if Vulkan or Direct3D 12 rendering is enabled
2024-01-11 20:44:50 +01:00
Rémi Verschelde
4b305cd903
Merge pull request #86982 from BastiaanOlij/openxr_touch_plus
OpenXR: Add Meta touch plus interaction profile
2024-01-11 17:41:26 +01:00
Rémi Verschelde
9e967ebdf9
Merge pull request #86583 from reduz/lightmapper-dda-fix
Tiny fix for lightmapper DDA
2024-01-11 17:37:45 +01:00
Rémi Verschelde
3dcf9059ae
Merge pull request #86454 from Repiteo/c#-upgrade-TFMs
C#: Upgrade TFM for `net472` and some `netstandard2.0` projects
2024-01-11 17:37:19 +01:00
Rémi Verschelde
087a397477
Merge pull request #86301 from KoBeWi/deferred_cleanup
Update deferred calls to use Callables
2024-01-11 17:36:29 +01:00
Rémi Verschelde
ba96dbb49a
Merge pull request #85460 from van800/master
Bump the `JetBrains.Rider.PathLocator` PackageReference to 1.0.8
2024-01-11 17:36:04 +01:00
Rémi Verschelde
2c83241f8a
Merge pull request #85204 from BastiaanOlij/openxr_hand_tracking_datasource
OpenXR: Add support for hand tracking source extension
2024-01-11 17:35:38 +01:00
Bastiaan Olij
f2ef41b853 Add Meta controller extension 2024-01-11 15:29:38 +11:00
Hugo Locurcio
2aaa4cd645
Only build glslang if Vulkan or Direct3D 12 rendering is enabled
glslang isn't needed for OpenGL rendering, which includes the web export.
This reduces the web release export template's `.wasm` size by about 20 KB,
since web builds use `vulkan=no`.
2024-01-11 00:42:56 +01:00
Rémi Verschelde
cea56336b2
Merge pull request #86972 from zaevi/fix_csharp_method_return_type
C#: Fix return type hint for methods.
2024-01-10 12:03:33 +01:00
Rémi Verschelde
8a6debd71e
Merge pull request #86592 from emklasson/fix_gd0103_link
Fix typo in GD0103 error link
2024-01-10 12:03:29 +01:00
Juan Linietsky
caef2be758 Tiny fix for lightmapper DDA
- Ensures only one axis advances at a time
- This fixes extremely corner cases where the DDA may skip over geometry
2024-01-10 10:39:56 +01:00
Bastiaan Olij
4c806c03df OpenXR: Add support for hand tracking source extension 2024-01-10 16:58:40 +11:00
Rémi Verschelde
b7f7ca1412
Merge pull request #85783 from TheSofox/regex-lookahead-fix
Fix RegEx `search_all` for zero length matches/lookahead
2024-01-09 17:47:14 +01:00
kobewi
0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Rémi Verschelde
78fadf45ca
Merge pull request #85335 from zinefer/bugfix-blend-importer-on-windows-network-share
Replace `//` with `\\` before sending path to Blender
2024-01-09 15:30:50 +01:00
A Thousand Ships
cae3b822c3
Improve error message when a GDScript instance fails to be constructed
Co-authored-by: Slashscreen <SlashScreen@users.noreply.github.com>
2024-01-09 13:32:22 +01:00
Rémi Verschelde
6f118b8c4a
Merge pull request #86985 from timothyqiu/zip-packer-attributes
Fix ZIPPacker storing file permissions unexpectedly
2024-01-09 11:30:02 +01:00
Rémi Verschelde
079f1c154d
Merge pull request #86269 from aaronfranke/detect-module
Allow detecting when building as an engine module
2024-01-09 11:27:24 +01:00
Rémi Verschelde
e9695d9fa2
Merge pull request #84976 from DarioSamo/rd_common_render_graph
Acyclic Command Graph for Rendering Device
2024-01-09 11:27:19 +01:00
Rémi Verschelde
1edcf9a405
Merge pull request #81345 from anvilfolk/gdoverview
GDScript: Add module description in markdown
2024-01-09 11:27:05 +01:00
Haoyu Qiu
7a833c9b2e Fix ZIPPacker storing file permissions unexpectedly 2024-01-09 13:55:34 +08:00
HolonProduction
92a7c26806 Allow specifying a scene in completion tests 2024-01-08 22:38:41 +01:00
Zae
51c54b03d1 C#: Fix return type hint for methods. 2024-01-09 04:28:17 +08:00
Dario
cc4d39b0c1 Acyclic Command Graph for RenderingDevice.
Adds a new system to automatically reorder commands, perform layout transitions and insert synchronization barriers based on the commands issued to RenderingDevice.
2024-01-08 14:54:56 -03:00
Rémi Verschelde
c6671d9961
Merge pull request #86906 from Malcolmnixon/avatar-capable-openxrhand
Add ability to drive full-body avatars using OpenXRHand
2024-01-08 14:53:20 +01:00
Silc Lizard (Tokage) Renew
a51958a2a0 Remove Object pointer/solve types conflict in AnimationTrackCache
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-08 21:48:19 +09:00
Rémi Verschelde
01f8ce6e3d
Merge pull request #86846 from capnm/240105_thorvg_from_v0.11.6_to_v0.12.0
ThorVG: update from v0.11.6 to v0.12.0
2024-01-08 11:58:19 +01:00
Rémi Verschelde
c10d268974
Merge pull request #86787 from ryevdokimov/code-spell-check
Fix various spelling errors across engine solution
2024-01-08 11:55:55 +01:00
Rémi Verschelde
60f557c0c5
Merge pull request #86016 from demolke/master
Import step interpolation for loc/rot/scale from GLTF as nearest
2024-01-08 11:52:16 +01:00
Rémi Verschelde
b88535fe23
Merge pull request #85178 from HolonProduction/completion-tests
Add unit test runner for autocompletion
2024-01-08 11:51:03 +01:00
Yaohua Xiong
0e344f0d0b Path3D notify transform change to CSGPolygon 2024-01-08 18:29:18 +08:00
Martin Capitanio
e090b112ef ThorVG: update from v0.11.6 to v0.12.0
https://github.com/thorvg/thorvg/releases/tag/v0.12.0

Godot-related SVG bug fixes:

+ [SwEngine] Fixed a linear filling scaling issue.
      thorvg/thorvg#1834
+ [SwEngine] Path data not invalid even though
      it doesn't start with MoveTo.
      thorvg/thorvg#1848

Fixes #86128 Gradient issue.
2024-01-08 09:59:43 +01:00
Malcolm Nixon
5b8b2a4e70 Add ability to drive full-body avatars using OpenXRHand
This PR allows the OpenXRHand to drive:
- OpenXR rigged hand skeletons located under the OpenXRHand node
- Godot Humanoid rigged hand skeletons located under the OpenXRHand node
- OpenXR rigged avatar skeletons located separately in the scene-tree
- Godot Humanoid avatar skeletons located separately in the scene-tree
2024-01-07 12:08:54 -05:00
BlueCube3310
51ad937532 Fix BasisUniversal ETC RA_AS_RG transcoding 2024-01-07 12:53:01 +01:00
Thaddeus Crews
7a06390552
C#: Upgrade TFM for net472 and some netstandard2.0 projects 2024-01-06 09:14:33 -06:00
Aaron Franke
91b24b2780
Use GODOT_MODULE define in TextServer modules 2024-01-06 01:19:29 -06:00
Aaron Franke
e2b3c588e1
Allow detecting when building as an engine module 2024-01-06 01:19:29 -06:00
demolke
3749cbb3ca Import step interpolation for loc/rot/scale from GLTF as nearest
Currently all object transform animation tracks get imported and baked
as linear. For step interpolation mark the resulting animation track
with Nearest interpolation to make sure there are no in-betweens
generated. This is useful for camera cuts or similar.
2024-01-05 22:03:57 +01:00
Danil Alexeev
b31acb0cd5
GDScript: Allow utility functions to be used as Callable 2024-01-05 21:16:53 +03:00
Muller-Castro
96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
HolonProduction
af4cbaf751 Add unit test runner for autocompletion 2024-01-05 17:49:51 +01:00
Rémi Verschelde
bf1de980e5
Merge pull request #86569 from rune-scape/rune-fix-lambda-hotswap2
GDScript: Lambda hotswap fixes
2024-01-05 12:05:32 +01:00
rune-scape
49bce5c9ef GDScript: Lambda hotswap fixes 2024-01-04 16:33:54 -08:00
Aaron Franke
9753a35c76
Move 3D scene import classes to their own folder 2024-01-04 11:02:49 -06:00
Rémi Verschelde
5eb22a317d
Merge pull request #83577 from DennisManaa/fix-translation-for-item-list
Add automatic translation of items to ItemList
2024-01-04 16:39:36 +01:00
Rémi Verschelde
150f2a75b2
Merge pull request #83120 from dalexeev/gds-allow-property-getter-empty-parentheses
GDScript: Allow empty parentheses for property getter declaration
2024-01-04 16:39:16 +01:00
Rémi Verschelde
2bffa3cbc5
Merge pull request #82639 from golfinq/gdscript-improve-indexing-error
GDScript: Improve error messages for invalid indexing
2024-01-04 16:38:58 +01:00
Robert Yevdokimov
f9826a1dd7 Fix various spelling errors 2024-01-04 09:56:43 -05:00
Rémi Verschelde
525e0bb37c
Merge pull request #86667 from HolonProduction/completion-enum-sorting
Improve sorting of enum autocompletion
2024-01-04 14:26:25 +01:00
Rémi Verschelde
2a4eaa4cd8
Merge pull request #86555 from RandomShaper/fix_warn
Fix LightmapperRD division warning in MSVC
2024-01-04 14:26:20 +01:00
Rémi Verschelde
bfbe145457
Merge pull request #84546 from Rubonnek/fix-jpg-save-bugs
Do not mutate source Image in `Image::save_jpg` and use encoder return value
2024-01-04 14:26:04 +01:00
Rémi Verschelde
6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
Rémi Verschelde
11d1844e66
Merge pull request #85869 from paulloz/dotnet-warning-out-of-date-properties
.NET: Add a warning in the inspector when properties might be out of sync
2024-01-03 15:43:41 +01:00
Rémi Verschelde
9b2686c333
Merge pull request #84289 from bruvzg/icu741
ICU4C: Update to version 74.1
2024-01-03 15:41:59 +01:00
Rémi Verschelde
8be3c4b73f
Merge pull request #86341 from Vilcrow/fix-self-completion
Fix the autocomplete function for the 'self' keyword.
2024-01-03 10:00:19 +01:00
Rémi Verschelde
ca7fb29203
Merge pull request #84800 from gshadows/fix_options_range
Fix unlimited project option ranges that could cause crashes.
2024-01-03 09:59:31 +01:00
Rémi Verschelde
22e880ad20
Merge pull request #83163 from Chubercik/vectorXi_dist_methods
Implement `Vector2i/3i/4i` methods: `distance_to` and `distance_squared_to`
2024-01-03 09:58:36 +01:00
rune-scape
cde478bda6 Hot-reload only changed scripts 2024-01-02 17:56:52 -08:00
S.V.I. Vilcrow
c8fc824608 Fix the autocomplete function for the 'self' keyword. 2024-01-02 20:47:41 +03:00
Rémi Verschelde
a1d45858e0
Merge pull request #86504 from lyuma/gltf_reimport_textures_merry_xmas
gltf: Fix three bugs which prevented extracted textures from being refreshed
2024-01-02 18:05:19 +01:00
Rémi Verschelde
2e1725bef6
Merge pull request #86088 from dalexeev/gds-fix-static-func-as-callable-in-static-context
GDScript: Fix accessing static function as `Callable` in static context
2024-01-02 18:05:16 +01:00
Rémi Verschelde
b5c6e870e8
Merge pull request #82264 from dalexeev/core-builtin-methods-as-callables
Core: Allow methods of built-in `Variant` types to be used as Callables
2024-01-02 18:05:05 +01:00
Rémi Verschelde
06bb9f28e7
Merge pull request #86704 from AThousandShips/len_fix
[GDScript] Add `StringName` support to `@GDScript.len`
2024-01-02 15:09:09 +01:00
Rémi Verschelde
ac83ad1e65
Merge pull request #80390 from EddieBreeg/issue_80358
Fix potential integer underflow in rounded up divisions
2024-01-02 15:08:37 +01:00
A Thousand Ships
045d921044 [GDScript] Add StringName support to @GDScript.len 2024-01-02 14:28:34 +01:00
EddieBreeg
8747c67d9e
Fix potential integer underflow in rounded up divisions
A new `Math::division_round_up()` function was added, allowing for easy
and correct computation of integer divisions when the result needs to
be rounded up.

Fixes #80358.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-02 14:14:47 +01:00
HolonProduction
76fd7ec394 Improve sorting of enum autocompletion 2023-12-31 14:35:08 +01:00
Aaron Franke
8acef03cb5
Add export settings to the export dialog for GLTF 2023-12-30 19:57:39 -06:00
Pedro J. Estébanez
fe8c217b7c Fix warning in MSVC 2023-12-27 17:50:45 +01:00
HolonProduction
54742f7c60 Fix symbol lookup in index subscript 2023-12-27 17:46:17 +01:00
Mikael Klasson
a2b183067c fix: use correct number in GD0103 link 2023-12-27 20:30:59 +09:00
rune-scape
e4242f9b40 GDScript: Include lambda dependencies 2023-12-26 13:02:03 -08:00
Lyuma
fea4165ca8 gltf: fix three bugs which prevented extracted textures from being refreshed.
1. Extracted texture paths in `GLTFDocument::_parse_image_save_image` at the project root started with res:/// which broke cache invalidation
2. md5 hashes were not being written to generator_parameters for new imports, which led Godot to think the file was manually created.
3. `EditorFileSystem::reimport_append` must emit the `resources_reimported` signal in order for the resource cache to be updated.
2023-12-25 01:03:40 -08:00
Danil Alexeev
e07ec89bdf
GDScript: Fix POT generator skips some nodes (part 2) 2023-12-23 20:55:16 +03:00
Paul Joannon
0818d015db
Inspector ⚠️ when C# props might be out of date 2023-12-22 23:27:13 +01:00
G-Shadow
cbc8ae660c Fix unlimited project option ranges that could cause crashes. 2023-12-22 09:14:45 +03:00
Raul Santos
abd7927325
C#: Use string literal instead of nameof
Using `nameof` expressions with method parameters requires C# 11 and we're currently on C# 10.
2023-12-21 03:11:47 +01:00
Yuri Sizov
c28a091a09 Merge pull request #86336 from LunaticInAHat/dds_implicit_linearsize
Support unspecified linear size in DDS files
2023-12-20 15:08:17 +01:00
Yuri Sizov
1183bdefe4 Merge pull request #86257 from Faless/mp/fix_complete_auth
[MP] Fix `complete_auth` notifying the wrong peer
2023-12-20 15:08:02 +01:00
LunaticInAHat
a344d7f906 Support unspecified linear size in DDS files
Not all exporters choose to populate that (optional) header field.
2023-12-19 16:42:10 -05:00
Yuri Sizov
fc082dd735 Merge pull request #86091 from dalexeev/gds-fix-pot-gen-skips-some-nodes
GDScript: Fix POT generator skips some nodes
2023-12-19 20:33:09 +01:00
Yuri Sizov
dee2604d99 Merge pull request #84729 from nickyfoo/add-navigationserver-getters
Add missing getters to navigation servers
2023-12-19 20:32:46 +01:00
Yuri Sizov
ef79e5d9dd Merge pull request #82983 from Repiteo/c#-godotsharp-nullable-classes
[C#] Enable nullability for variant classes
2023-12-19 20:32:30 +01:00
Yuri Sizov
c8d0325a93 Merge pull request #82955 from paulloz/testing-source-generators
Add unit tests for C# source generators
2023-12-19 20:32:26 +01:00
Yuri Sizov
e18659c69d Merge pull request #82872 from jsjtxietian/require-editor-restart-when-csg-gizmo-color-changed
Prompt require editor restart to user when gizmo color changed
2023-12-19 20:32:20 +01:00
Nicholas Foo
e7ee672120 Add getters to navigation servers
Add virtual functions and bind to navigation servers
Implement getters
Add documentation
2023-12-19 19:51:49 +01:00
msreis
f1cc14d525 Fix missing time for some script functions in profiler
Fixes the issue by adding a mechanism by which the functions that were
previously disappearing can be profiled too. This is optional with
an editor setting, since collecting more information naturally slows the engine
further while profiling.

Fixes #23715, #40251, #29049
2023-12-19 19:42:21 +01:00
Paul Joannon
b352bdc8cb
Add tests for source generators
- Bootstrap xUnit project to test source generators
- Implement source generator tests
- Better tests structure (put test data in cs files)
- Enable `ScriptSerializationGeneratorTests`
- Enable `ScriptPathAttributeGeneratorTests`
- Fix `NesterClass` -> `NestedClass`
- Use `Path.Combine` when dealing with paths
- Copy test data to the output directory
2023-12-19 18:26:52 +01:00
BlueCube3310
50d33aac6c Implement ETC2_R and ETC2_RG compression to etcpak 2023-12-19 17:49:05 +01:00
Yuri Sizov
f478a599fc Merge pull request #85975 from Repiteo/c#-null-ptr-exception
C#: Implement function to throw on null pointers
2023-12-19 13:02:24 +01:00
Yuri Sizov
38d8ca0dc1 Merge pull request #85703 from TitanNano/jovan/gdscript_foreign_script_properties
Make GDScriptAnalyzer aware of properties from other languages
2023-12-19 13:02:19 +01:00
Yuri Sizov
a6f806f8da Merge pull request #85487 from vnen/gdscript-static-register-annotations
GDScript: Make annotations register statically in parser
2023-12-19 13:02:09 +01:00
Yuri Sizov
ec648fcfd8 Merge pull request #85447 from smix8/gridmap_navlayer_leftover
Remove GridMap navigation_layers leftover
2023-12-19 13:01:49 +01:00
Yuri Sizov
d4806d2d84 Merge pull request #85253 from sandygk/fix-reachable-polygon-closest-to-end-point
[Navigation] Do not use travel cost for minimum when re-selecting end point
2023-12-19 13:01:45 +01:00
Yuri Sizov
714e27393a Merge pull request #84652 from timothyqiu/enum-pun
Avoid punning enum names in documentation
2023-12-19 13:01:10 +01:00
Jovan Gerodetti
030aa41a99 GDScriptAnalyzer is unaware of properties from other Languages
Co-authored-by: K. S. Ernest (iFire) Lee <fire@users.noreply.github.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-18 22:03:30 +01:00
Thaddeus Crews
a0db88335a
Implement function to throw on null pointers
• Specifically: checks if ptr == IntPtr.Zero
2023-12-17 08:52:20 -06:00
Fabio Alessandrelli
4826c14d20 [MP] Fix complete_auth notifying the wrong peer
The SceneMultiplayer complete_auth method was not configuring the
multiplayer peer correctly, causing it to potentially send the
notification to the wrong peer, on the wrong channel, and/or with an
incorrect transfer mode.
2023-12-17 12:27:24 +01:00
Wilson E. Alvarez
a3cb1b096f
Add const references detected by clang-tidy 2023-12-16 13:36:44 -05:00
Yuri Sizov
30e77a6321 Merge pull request #86209 from YuriSizov/main-fix-editor-only-module-classes
Correctly register editor-only module classes with the API
2023-12-16 17:50:07 +01:00
Yuri Sizov
4e29b16166 Merge pull request #85967 from BlueCube3310/squish-ra-as-rg-fix
Fix `squish` DXT5 RA-As-RG channel swapping
2023-12-16 17:49:54 +01:00
Yuri Sizov
671f59f9be Merge pull request #85842 from BlueCube3310/rgtc-compression
Improve normal map VRAM Compression with RGTC
2023-12-16 17:49:51 +01:00
Yuri Sizov
f4b32b228a Merge pull request #85603 from eldidou/speed-up-get-must-clear-dependencies
Speed up `GDScript::get_must_clear_dependencies()`
2023-12-16 17:49:47 +01:00
Yuri Sizov
abe19496ac Merge pull request #85163 from BastiaanOlij/openxr_play_area
OpenXR: Add support for retrieving play area
2023-12-16 17:49:34 +01:00
Yuri Sizov
4b258ccdd3 Merge pull request #82884 from KoBeWi/commit_message_cached,_please_refresh
Clarify some descriptions regarding resource cache
2023-12-16 17:49:20 +01:00
Yuri Sizov
0f8c955c1a Correctly register editor-only module classes with the API 2023-12-15 18:58:30 +01:00
Danil Alexeev
3a4a0c6b15
GDScript: Fix type highlighting 2023-12-14 23:38:24 +03:00
Yuri Sizov
58e68590a3 Merge pull request #81220 from BlueCube3310/dds-formats-extended
Support loading more DDS formats
2023-12-14 21:22:29 +01:00
Yuri Sizov
f79f2ef801 Merge pull request #86065 from bruvzg/non_vis_no_draw
[TextServer] Do not draw non-visual characters.
2023-12-14 17:38:53 +01:00
Yuri Sizov
203c8c31d3 Merge pull request #85071 from Rubonnek/remove-unnecessary-assignments
Remove unnecessary assignments
2023-12-14 17:38:34 +01:00
Yuri Sizov
4cf6325aa1 Merge pull request #84660 from groud/better_tileset_polygons
Move tile transforms handling cache to TileData
2023-12-14 17:38:14 +01:00
Yuri Sizov
c978f6bb3d Merge pull request #82980 from Repiteo/c#-godotsharp-nullable-structs
[C#] Enable nullability for variant structs
2023-12-14 17:38:05 +01:00
Yuri Sizov
5c99558d16 Merge pull request #76591 from HolonProduction/complete-tween
Autocomplete properties in `tween_property`
2023-12-14 17:37:53 +01:00
BlueCube3310
c278cc3946 Add support for loading more DDS formats 2023-12-14 15:18:35 +01:00
Gilles Roudière
18fe0bd025 Move tile transforms handling cache to TileData 2023-12-13 17:44:59 +01:00
Wilson E. Alvarez
80fb8db31f
Remove unnecessary assignments
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
Danil Alexeev
1aa242f7c4
GDScript: Fix POT generator skips some nodes 2023-12-13 13:06:59 +03:00
HolonProduction
5f72254d4d Fix regression when autocompleting subscript on get node 2023-12-13 10:54:40 +01:00
Rémi Verschelde
edf64243bf
Merge pull request #85996 from nikitalita/fix-next_ogg_packet
Fix `OggPacketSequencePlayback::next_ogg_packet()` never returning false
2023-12-13 10:31:58 +01:00
Rémi Verschelde
41365c6c8b
Merge pull request #70315 from RandomShaper/d3d12_mesa
Direct3D 12 Rendering Driver (Mesa NIR approach)
2023-12-12 21:58:57 +01:00
Danil Alexeev
10dcb21d8b
GDScript: Fix accessing static function as Callable in static context 2023-12-12 22:19:39 +03:00
Pedro J. Estébanez
2f47c57385 Add Direct3D 12 RenderingDevice implementation 2023-12-12 19:10:04 +01:00
bruvzg
575e1201cb [TextServer] Do not draw non-visual characters. 2023-12-12 12:17:10 +02:00
Rémi Verschelde
84692c6252
Navigation: Fix GCC 12.3 -Wtype-limits warnings 2023-12-12 11:00:06 +01:00
Aaron Franke
52f1b86ebc
Fix referring to ResourceImporterScene static importers via instances 2023-12-11 20:01:39 -06:00
Rémi Verschelde
ae7c533937
Merge pull request #84686 from dsnopek/webxr-msaa
Add MSAA support for WebXR
2023-12-12 00:17:16 +01:00
Rémi Verschelde
8f2b5cc109
Merge pull request #82899 from aaronfranke/import-settings-dialogs
Rename ImportSettings dialogs to have "Dialog" in the name
2023-12-12 00:15:59 +01:00
Rémi Verschelde
4e2350b1af
Merge pull request #82661 from bruvzg/custom_ellipsis
[Text Overrun] Add option to set custom ellipsis character, add support for system font fallback.
2023-12-12 00:15:34 +01:00
Rémi Verschelde
9eb47ce361
Merge pull request #75098 from smix8/map_random_point_queries_4.x
Add NavigationServer random point queries
2023-12-12 00:15:05 +01:00
David Snopek
275c496bc8 Add MSAA support for WebXR 2023-12-11 09:01:24 -06:00
Bastiaan Olij
69a41b3d39 OpenXR: Add support for retrieving play area 2023-12-11 10:29:03 +11:00
kobewi
a1aa1a468f Clarify some descriptions regarding resource cache 2023-12-10 20:30:01 +01:00
nikitalita
86a914575f fix next_ogg_packet never returning false 2023-12-10 02:47:52 -08:00
Thaddeus Crews
08e44123cb
[C#] Enable nullability for variant classes 2023-12-09 12:42:10 -06:00
Thaddeus Crews
db7a643e1c
[C#] Enable nullability for variant structs 2023-12-09 12:41:53 -06:00
BlueCube3310
1224129c50 Fix squish DXT5 RA-As-RG channel swapping 2023-12-09 18:07:25 +01:00
eldidou
0d77c3e092 Speed up GDScript::get_must_clear_dependencies()
get_must_clear_dependencies() has a N^3*log(N) time complexity, and this can very quickly slow down the quitting process as more gdscripts are added in a project.
This change improves it to N^2*log(N).
Instead of using all the inverted dependencies, we do the same with all (non-inverted) dependencies, which is N times faster.

Fixes #85435
2023-12-09 13:02:38 +01:00
Sofox
7b2fd342e3 Fixed RegEx search_all for zero length matches/lookahead/lookbehind 2023-12-08 17:54:58 +00:00
Yuri Sizov
6e8bba8569 Merge pull request #80900 from BlueCube3310/dds-loading-refactor
Refactor DDS loading code
2023-12-08 18:45:42 +01:00
Yuri Sizov
3b9347d5b2 Merge pull request #81662 from Repiteo/container-type-vector
Change GDScriptDataType `container_element_type` to vector container
2023-12-08 16:57:53 +01:00
BlueCube3310
e6766da6ac Refactor DDS loading code 2023-12-08 15:43:06 +01:00