Commit graph

10584 commits

Author SHA1 Message Date
Andreia Gaita
2f10f7bed4 Fix processing exclusions during export 2024-02-12 11:51:05 +01:00
Pawel Lampe
9ea8d4fa38 Add means for fixing navmap synchronization errors 2024-02-11 21:06:47 +01:00
Aiden Storey
7ffc246aad Add fallback argument hints for default values 2024-02-11 10:01:03 -05:00
emre0altan
081fa324fd set has_type false if it is BUILTIN but Variant::NIL 2024-02-11 13:47:12 +00:00
Aaron Franke
f18c46d687
Fix exporting trigger shapes in GLTF 2024-02-11 04:37:54 -06:00
bruvzg
062a93fb77
[TextServer] Add extra fallback step, to lookup for individual characters. 2024-02-09 23:47:48 +02:00
Rémi Verschelde
b457a30311
Merge pull request #87628 from YuriSizov/assets-bigger-better-errors
Improve error reporting in the asset library and in related types
2024-02-09 18:09:16 +01:00
Rémi Verschelde
d00dc8facf
Merge pull request #87371 from AThousandShips/size_err_check
Replace error checks against `size` with `is_empty`
2024-02-09 18:09:11 +01:00
Rémi Verschelde
161894652a
Merge pull request #83231 from aaronfranke/gltf-transform
Fix desynced duplicate GLTFNode transform properties
2024-02-09 18:09:05 +01:00
Rémi Verschelde
74b03edf1e
Merge pull request #82800 from Sauermann/fix-screen-mousemotion
Add screen-related attributes to mouse input events
2024-02-09 18:08:58 +01:00
A Thousand Ships
684752e75b
Replace error checks against size with is_empty 2024-02-09 12:50:15 +01:00
Rémi Verschelde
77af6ca8ad
Merge pull request #87634 from vnen/gdscript-binary-tokens
GDScript: Reintroduce binary tokenization on export
2024-02-09 12:35:00 +01:00
Rémi Verschelde
dd275238d1
Merge pull request #86907 from aaronfranke/getter-const
Change AudioStreamPlayer autoplay and GLTFBufferView getters to be const
2024-02-09 12:33:09 +01:00
RedMser
d3852deaa4 Update Node::get_configuration_warnings signature 2024-02-08 23:05:20 +01:00
Aaron Franke
35c99bbcc1
Change AudioStreamPlayer autoplay and GLTFBufferView getters to be const 2024-02-08 13:01:50 -06:00
Raul Santos
5815d1c8c8
Improve handling of generic C# types
- Create CSharpScript for generic C# types.
  - `ScriptPathAttributeGenerator` registers the path for the generic type definition.
  - `ScriptManagerBridge` lookup uses the generic type definition that was registered by the generator.
  - Constructed generic types use a virtual `csharp://` path so they can be registered in the map and loaded as if there was a different file for each constructed type, even though they all share the same real path.
  - This allows getting the base type for a C# type that derives from a generic type.
- Shows base scripts in the _Add Node_ and _Create Resource_ dialogs even when they are generic types.
  - `get_global_class_name` implementation was moved to C# and now always returns the base type even if the script is not a global class (this behavior matches GDScript).
- Create `CSharpScript::TypeInfo` struct to hold all the type information about the C# type that corresponds to the `CSharpScript`, and use it as the parameter in `UpdateScriptClassInfo` to avoid adding more parameters.
2024-02-08 18:31:13 +01:00
George Marques
72e5f8c31e
GDScript: Enable compression on export
Besides the regular option to export GDScript as binary tokens, this
also includes a compression option on top of it. The binary format
needs to encode some information which generally makes it bigger than
the source text. This option reduces that difference by using Zstandard
compression on the buffer.
2024-02-08 11:20:07 -03:00
George Marques
b4d0a09f15
GDScript: Reintroduce binary tokenization on export
This adds back a function available in 3.x: exporting the GDScript
files in a binary form by converting the tokens recognized by the
tokenizer into a data format.

It is enabled by default on export but can be manually disabled. The
format helps with loading times since, the tokens are easily
reconstructed, and with hiding the source code, since recovering it
would require a specialized tool. Code comments are not stored in this
format.

The `--test` command can also include a `--use-binary-tokens` flag
which will run the GDScript tests with the binary format instead of the
regular source code by converting them in-memory before the test runs.
2024-02-08 11:20:05 -03:00
Rémi Verschelde
41564aaf77
Merge pull request #86999 from AThousandShips/init_note
Improve error message when a GDScript instance fails to be constructed
2024-02-08 13:49:44 +01:00
Rémi Verschelde
9a793d95eb
Merge pull request #87124 from rsubtil/bugfix-warn_as_err
Simplify script paths to ensure proper resource path checks
2024-02-08 13:45:57 +01:00
Rémi Verschelde
a0106607e8
Merge pull request #88089 from bruvzg/fix_bmp_kern
[TextServer] Fix bitmap font kerning override.
2024-02-08 10:54:20 +01:00
Rémi Verschelde
312eb20b3e
Merge pull request #88076 from paulloz/dotnet/fix-out-of-sync-notice-with-external-editors
Fix C# "out of sync" notice with external editors
2024-02-08 10:54:16 +01:00
Rémi Verschelde
50491db048
Merge pull request #88071 from Calinou/gdscript-nodepath-autocomplete-fix-identifiers
Fix NodePath autocompletion to ensure paths are quoted when required
2024-02-08 10:54:12 +01:00
Rémi Verschelde
0aa8fa3c05
Merge pull request #88011 from Chubercik/vulkan-1.3.275.0
vulkan: Update all components to Vulkan SDK 1.3.275.0
2024-02-08 10:53:53 +01:00
Rémi Verschelde
763d5cb7a4
Merge pull request #87934 from aaronfranke/fix-gltf-bad-mesh-export
Fix GLTF exporting invalid meshes and attempting to export gizmo meshes
2024-02-08 10:53:48 +01:00
Rémi Verschelde
261952a4c7
Merge pull request #87378 from smix8/navmesh_bordersize
Add NavigationMesh `border_size` property for tile baking
2024-02-08 10:53:30 +01:00
bruvzg
04c0e4446f
[TextServer] Fix bitmap font kerning override. 2024-02-08 08:32:45 +02:00
Paul Joannon
9d283063a0
Fix C# "out of sync" notice with external editors
Change what triggers our re-evaluation of the last valid build datetime stored internally.
Move that datetime in `BuildManager`.
2024-02-07 21:26:32 +01:00
Hugo Locurcio
1238b60b22
Fix NodePath autocompletion to ensure paths are quoted when required
Every component of the path is now checked to be a valid identifier,
so that node names that start with a digit always require the full
path to be quoted.
2024-02-07 19:26:55 +01:00
Yuri Rubinsky
1d75480082 Fix autocompletion for enum members in the core classes 2024-02-07 20:42:06 +03:00
Rémi Verschelde
7223c5b54a
Fix various typos with codespell
Using 2.2.7.dev115+g0eb441d6.

Had to add `cancelled` to the ignore list, as it's a Wayland signal which
we're handling in our code, so we don't want codespell to fix that "typo".

Also includes the typo fix from #87927.

Co-authored-by: Divyanshu Shekhar <61140213+divshekhar@users.noreply.github.com>
2024-02-07 11:09:34 +01:00
Rémi Verschelde
f5b238f111
Merge pull request #88048 from raulsntos/dotnet/fix-88022
C#: Fix crash when reloading scripts
2024-02-07 11:06:46 +01:00
Rémi Verschelde
f3a5c615e2
Merge pull request #87984 from BlueCube3310/etcpak-update
etcpak: Sync with upstream
2024-02-07 11:03:15 +01:00
Rémi Verschelde
8daa633d0d
Merge pull request #87961 from smix8/navmesh2d_bordersize
Add NavigationPolygon `border_size` property for tile baking
2024-02-07 11:01:42 +01:00
Rémi Verschelde
888299d6f7
Merge pull request #87939 from dalexeev/gds-add-is-not-operator
GDScript: Add `is not` operator
2024-02-07 11:01:19 +01:00
Rémi Verschelde
9cfd6dbab2
Merge pull request #87783 from AThousandShips/utility_err
Make `GDScriptUtilityCallable` return call error when method is invalid
2024-02-07 10:59:17 +01:00
Rémi Verschelde
251d5b3669
Merge pull request #87715 from Scony/add-is-baking
Expose `is_baking` method in navigation servers and region nodes.
2024-02-07 10:58:27 +01:00
Raul Santos
8ce4a0cf15
C#: Fix crash when reloading scripts
The crash cond was accidentally moved to the `reload_scripts` method when it was only meant to be in the `reload_tool_script` method. Same about restarting the HotReloadAssemblyWatcher timer.

Also removed the loop that checks if the script array contains a C# script because if we're in CSharpLanguage we can assume that at least one of them is.
2024-02-07 06:33:51 +01:00
smix8
4cc8748c47 Make navigation map spatial queries thread-safe
Makes navigation map spatial queries thread-safe by adding a readers–writer lock.
2024-02-06 19:27:59 +01:00
Jakub Marcowski
8350c88718 vulkan: Update all components to Vulkan SDK 1.3.275.0 2024-02-06 13:46:56 +01:00
Markus Sauermann
2235a1cbd0 Add screen-related attributes to mouse input events 2024-02-05 23:30:15 +01:00
Pawel Lampe
c2cfc0d409 Expose is_baking method in navigation servers and region nodes. 2024-02-05 22:04:22 +01:00
HolonProduction
6df1a1e9b0 Autocompletion: mark datatype as constant for constant arrays 2024-02-05 20:26:43 +01:00
BlueCube3310
becf5b1d23 [etcpak] Sync with upstream 2024-02-05 18:53:35 +01:00
Rémi Verschelde
2f9ea3a505
Merge pull request #87941 from AThousandShips/num_fix
[GDScript] Prevent running `String` number functions on invalid literal
2024-02-05 14:53:23 +01:00
Rémi Verschelde
3eb25dd728
Merge pull request #87933 from aaronfranke/fix-gltf-crash-root-skel-imp
Fix crash when importing a GLTF file with a skeleton as the root
2024-02-05 14:52:37 +01:00
Rémi Verschelde
acde2a81ff
Merge pull request #84640 from aaronfranke/gravity-get
Expose a method to get gravity for any physics body
2024-02-05 14:48:31 +01:00
bruvzg
19f1d5afa9
[TextServer / Font] Do not duplicate images to prevent unnecessary embedding. 2024-02-05 10:38:32 +02:00
smix8
085bc9504b Add NavigationPolygon border_size property for tile baking
Adds NavigationPolygon border_size property for tile baking. Also adds baking Rect2 bounds.
2024-02-05 00:38:28 +01:00
Danil Alexeev
2bf25954b4
GDScript: Add is not operator 2024-02-04 17:36:53 +03:00
A Thousand Ships
66d55e62f0
[GDScript] Prevent running String number functions on invalid literal
Prevents printing excessive errors.
2024-02-04 14:35:22 +01:00
Aaron Franke
2d38c980ee
Fix GLTF exporting invalid meshes and attempting to export gizmo meshes 2024-02-04 02:58:29 -06:00
Aaron Franke
4c8d69f264
Fix crash when importing a GLTF file with a skeleton as the root 2024-02-04 02:48:16 -06:00
Rémi Verschelde
673f1614c4
Merge pull request #87630 from dsnopek/openxr-passthrough-from-gdextension
OpenXR: Allow moving vendor passthrough extensions to GDExtension
2024-02-03 23:19:24 +01:00
Rémi Verschelde
8b0c5f2fca
Merge pull request #87186 from Faless/mp/fix_remote_sync_cleanup
[MP] Fix remote net ID cleanup
2024-02-03 23:18:35 +01:00
Rémi Verschelde
f4fb4799ae
Merge pull request #87185 from Faless/mp/fix_reset
[MP] Fix spawned nodes not working after reset
2024-02-03 23:18:08 +01:00
David Snopek
e74a0f4b09 OpenXR: Allow moving vendor passthrough extensions to GDExtension 2024-02-03 12:40:41 -06:00
Rémi Verschelde
d0f8b76ffd
Merge pull request #87838 from paulloz/dotnet/fix-duplicate-key-on-reload
C#: Fix duplicate key issue on reload
2024-02-02 12:05:14 +01:00
Rémi Verschelde
8a47d6eb50
Merge pull request #87790 from nongvantinh/fix-87643
Fix incorrect condition for error filtering
2024-02-02 12:03:59 +01:00
Rémi Verschelde
fb5f34a75a
Merge pull request #87745 from dsnopek/openxr-change-reference-space
OpenXR: Allow changing play area mode during active session
2024-02-02 12:03:09 +01:00
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
Danil Alexeev
3a3a2011f4
GDScript: Add @export_storage annotation 2023-12-19 20:56:30 +03: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
smix8
64a56245d8 Add NavigationServer random point queries
Adds query functions to get random points on navigation mesh to the NavigationServer.
2023-12-08 00:18:05 +01:00
zinefer
72d18d50a4 Bugfix: Replace // with \\ before sending path to Blender
On Windows, Blender treats //fileshare/assets/model.blend as a relative
path which will not be found. Instead, replace the first two chars with
`\\` which when escaped becomes `\\\\`.
2023-12-07 15:23:11 -07:00
Rémi Verschelde
a311a4b162
Merge pull request #83976 from BastiaanOlij/gles3_msaa_scaler
Add 3D MSAA and scaling support to GLES3
2023-12-07 14:36:42 +01:00
BlueCube3310
5837e1fe3f Improve normal map VRAM Compression with RGTC 2023-12-06 15:28:18 +01:00
Thaddeus Crews
5cf0d772bc
Change container_element_type to vector container 2023-12-05 08:51:49 -06:00
Rémi Verschelde
7c8dfea9e3
Merge pull request #85196 from HolonProduction/completion-filter-groups
Filter groups and categories from autocompletion
2023-12-05 13:05:18 +01:00
Rémi Verschelde
dc367bec38
Merge pull request #79386 from HolonProduction/completion-get-child-static
Improve autocompletion with `get_node`
2023-12-05 13:05:11 +01:00
Haoyu Qiu
08b1354b36 Set language encoding flag when using ZIPPacker
When non-ASCII filenames are used, this indicates that the encoding is
UTF-8. Programs like ZIPReader can then parse the filename correctly.
2023-12-05 17:12:12 +08:00
Bastiaan Olij
caddce14dd Add 3D MSAA and scaling support to GLES3 2023-12-05 10:01:00 +11:00
Rémi Verschelde
d75c44658c
Merge pull request #85373 from DmitriySalnikov/update_singletons
Fix updating cached singletons when reloading GDScripts
2023-12-04 23:13:13 +01:00
Rémi Verschelde
3e7cc5ec32
Merge pull request #85271 from YuriSizov/core-check-please!
Correctly check scripts that must inherit `EditorPlugin`
2023-12-04 23:12:24 +01:00
Rémi Verschelde
257cc51ba4
Merge pull request #85048 from BastiaanOlij/openxr_remove_grip_touch
Remove unused grip touch action from default OpenXR action map
2023-12-04 23:09:12 +01:00
Rémi Verschelde
2f4f87dc56
Merge pull request #85002 from alesliehughes/tinyexr_mem_leak
Fix memory leak on error paths in tinyexr loader
2023-12-04 23:08:47 +01:00
Rémi Verschelde
8a9e3ad8d5
Merge pull request #84816 from Scony/add-obstacle-navserver-tests
Fix memory leak in 'NavigationServer3D' involving static obstacles
2023-12-04 23:05:39 +01:00
Rémi Verschelde
94edf0f9a1
Merge pull request #80326 from MewPurPur/no-exp-with-zero
Remove exp hint of a few properties
2023-12-04 22:57:09 +01:00
HolonProduction
c8889a7fe7 Improve autocompletion with get_node 2023-12-04 17:06:46 +01:00
HolonProduction
e253250814 Filter groups and categories from autocompletion 2023-12-04 15:48:29 +01:00
bruvzg
56579f397d
[Text Overrun] Add option to set custom ellipsis character, add support for system font fallback. 2023-12-04 08:21:42 +02:00
DmitriySalnikov
8cdbec0434 Update cached singletons when reloading GDScripts 2023-11-30 04:07:21 +03:00
Rémi Verschelde
d76c1d0e51
Bump version to 4.3-dev
The essential doesn't change.

-- Samuel Beckett, Waiting for Godot
2023-11-29 23:00:27 +01:00
Jordyfel
ef5dcccde7 Stop caching packed scenes in GDScript cache 2023-11-29 12:52:55 +02:00
George Marques
39e8cf891d
GDScript: Make annotations register statically in parser
So it only register the annotations once per run instead of doing it
every time a script is parsed.
2023-11-28 17:16:21 -03:00
Sandy Gutierrez
11e63d244e Do not use travel cost for minimum when re-selecting end point 2023-11-28 07:23:58 -05:00
Ivan Shakhov
7f63f4a6bf bump the PackageReference "JetBrains.Rider.PathLocator" to 1.0.8 2023-11-28 11:13:30 +01:00
smix8
cd07e73812 Remove GridMap navigation_layers leftover
Removes GridMap navigation_layers leftover.
2023-11-28 00:05:50 +01:00
Pedro J. Estébanez
cfa7e72057 Fix GDScript thread-exit routine assuming thread-enter was called 2023-11-27 13:01:37 +01:00
Aaron Franke
a8dc34b8f0
Rename ImportSettings dialogs to have "Dialog" in the name 2023-11-26 22:59:01 -06:00
HolonProduction
8cc85515af Suggest scene unique nodes in get_node autocompletion 2023-11-26 15:41:29 +01:00
Pedro J. Estébanez
bfe66ab7cd Fixup thread-owned lambda bookkeeping on thread exit (take 2) 2023-11-23 18:50:20 +01:00
Yuri Sizov
bc1949d797 Correctly check scripts that must inherit EditorPlugin
Also updates some error messages related to this kind of check
across the codebase.
2023-11-23 16:24:43 +01:00
Pedro J. Estébanez
f26328e9a3 Revert recently added approach to cross-thread lambda survival
Commits reverted:
- 1ed6919148
- 271511726b
2023-11-22 20:07:01 +01:00
Rémi Verschelde
c2f8fb3015
Merge pull request #85039 from RandomShaper/mingwthreads
Use mingw-std-threads in MinGW builds
2023-11-21 15:44:18 +01:00
Rémi Verschelde
fa259a77cd
Codestyle: Fix some comment issues 2023-11-21 15:26:53 +01:00
Pedro J. Estébanez
1ed6919148 Fix leak in the bookkeeping of GDScript lambdas 2023-11-21 12:52:55 +01:00
HolonProduction
4883a12a13 Autocomplete properties in tween_property 2023-11-19 22:18:06 +01:00
Pedro J. Estébanez
fe4850c0d0 Use mingw-std-threads in MinGW builds 2023-11-18 11:56:05 +01:00
Bastiaan Olij
3af0176e8c Remove unused grip touch action from default OpenXR action map 2023-11-18 20:17:28 +11:00
Pawel Lampe
a4b3546577 Fix memory leak in 'NavigationServer3D' involving static obstacles 2023-11-17 21:20:14 +01:00
Alistair Leslie-Hughes
f912a5aa56 Fix memory leak on error paths in tinyexr loader 2023-11-17 17:40:26 +11:00
bruvzg
a92511fec3
[iOS] Fix dotnet export. 2023-11-16 15:05:44 +02:00
Raul Santos
a351c4bbe3
C#: Use get_instance_binding instead of set 2023-11-15 21:06:13 +01:00
Rémi Verschelde
c455cb6555
Merge pull request #84897 from raulsntos/dotnet/callp-when-invalid
C#: Fail `callp` silently if script is not valid
2023-11-14 19:31:55 +01:00
Raul Santos
3936871077
C#: Fail callp silently if script is not valid 2023-11-14 16:56:16 +01:00
Rémi Verschelde
70ec97aadf
Merge pull request #84844 from Calinou/doc-runtime-loading-image
Link to runtime loading/saving tutorial and improve Image documentation
2023-11-14 12:17:31 +01:00
Hugo Locurcio
e5270c0db2
Link to runtime loading/saving tutorial and improve Image documentation 2023-11-14 12:05:54 +01:00
smix8
3f26191d16 Fix NavigationObstacle height
Fixes NavigationObstacle height.
2023-11-13 21:32:22 +01:00
smix8
fc4cc27e66 Fix NavigationObstacle elevation
FixesNavigationObstacle elevation.
2023-11-13 06:55:31 +01:00
Rémi Verschelde
5a5b456fca
Merge pull request #84774 from akien-mga/fix-TTR-in-ERR-WARN-prints
Don't use TTR/RTR for ERR/WARN prints
2023-11-12 22:59:38 +01:00
Rémi Verschelde
bc80776618
Merge pull request #84659 from RandomShaper/fix_lambda_cross_thread
Fix lambda cross-thread dynamics
2023-11-12 12:14:42 +01:00
Rémi Verschelde
8928b2044b
Merge pull request #80281 from KoBeWi/unacceptable
Assign temporary path to preloaded resources
2023-11-12 12:13:55 +01:00
Rémi Verschelde
15b8185c68
Don't use TTR/RTR for ERR/WARN prints
We don't translate those, only editor strings are translated.
2023-11-12 12:00:55 +01:00
Rémi Verschelde
bfa687ae55
Merge pull request #84758 from timothyqiu/decompress
Fix crash when saving compressed image as JPG & WebP
2023-11-11 23:06:00 +01:00
Rémi Verschelde
ba713c80df
Fix various typos with codespell
Using 2.2.7.dev51+geb4a58fe.
2023-11-11 23:01:24 +01:00
Haoyu Qiu
c07cd406cb Fix crash when saving compressed image as JPG & WebP 2023-11-12 00:15:49 +08:00
Rémi Verschelde
e38686f85b
Merge pull request #84723 from lawnjelly/fix_vorbis_inf_loop
Fix OGG Vorbis infinite error spam with corrupt file.
2023-11-10 21:56:59 +01:00
Rémi Verschelde
313bffc205
Merge pull request #83357 from raulsntos/dotnet/ConvertCallableToNative(default)
C#: Fix converting default Callables to native
2023-11-10 21:55:22 +01:00
Rémi Verschelde
61b62fc047
Merge pull request #81438 from 0xafbf/patch-2
Fix subpixel layouts in text rendering
2023-11-10 21:52:48 +01:00
lawnjelly
188266af47 Fix OGG Vorbis infinite error spam with corrupt file.
When OGG Vorbis encountered unreadable file, it emitted infinite error spam.
This PR returns the full number of frames in the case of error, to prevent infinite loop.
2023-11-10 15:48:28 +00:00
Rémi Verschelde
a9c864dc35
Merge pull request #83039 from KoBeWi/it's_always_the_cache
Fix GDScript cache assigning UID as scene path
2023-11-10 10:44:33 +01:00
kobewi
a3627b6e37 Assign temporary path to preloaded resources 2023-11-10 00:43:30 +01:00
Pedro J. Estébanez
271511726b Fixup thread-owned lambda bookkeeping on thread exit 2023-11-10 00:05:38 +01:00
Aaron Franke
6d8f029df4
Use the Blender file name instead of the generated GLTF file name 2023-11-09 12:11:39 -06:00
A Thousand Ships
668761fa8e Rename Vector2/3/4I.Min/Max to MinValue/MaxValue
More consistent with the `Mathf` constants they reference
2023-11-09 14:16:53 +01:00
Rémi Verschelde
26f1c503ec
Merge pull request #84617 from YuriSizov/editor-this-one-is-for-all-my-subs
Fix node names of submenu items across the editor
2023-11-09 11:47:24 +01:00
Rémi Verschelde
ce53362f98
Merge pull request #83670 from raulsntos/notification-predelete-cleanup
Add `NOTIFICATION_PREDELETE_CLEANUP` notification to fix C# `Dispose()`
2023-11-09 11:45:49 +01:00
Haoyu Qiu
cc3984f359 Avoid punning enum names in documentation 2023-11-09 17:16:30 +08:00
Rémi Verschelde
84e16de8eb
Merge pull request #84099 from BastiaanOlij/fix_openxr_samplecount
Fix OpenXR sample count
2023-11-08 19:08:48 +01:00
Yuri Sizov
b04b546092 Fix node names of submenu items across the editor
Also removes some programmer remarks and fixes some docs.
2023-11-08 14:42:42 +01:00
Wilson E. Alvarez
62cbd6805c
Do not mutate source Image in Image::save_jpg and use encoder return value 2023-11-06 16:51:41 -05:00
Yuri Sizov
4c96e9676b Merge pull request #84494 from Calinou/fastnoiselite-tweak-property-hints
Tweak FastNoiseLite property hints for better slider usability
2023-11-06 15:43:28 +01:00
Yuri Sizov
3c68ab679a Merge pull request #84271 from aaronfranke/gltf-compat-version
Implement glTF compat version system for files from older Godot versions
2023-11-06 13:23:07 +01:00
Yuri Sizov
a8bcbff59f Merge pull request #82133 from MewPurPur/svg-tweaks
Optimize and tweak some SVGs, improve consistency between icons, and fix broken masks in light mode
2023-11-06 13:22:59 +01:00
Hugo Locurcio
6b7ec62b96
Tweak FastNoiseLite property hints for better slider usability
- Mark Frequency as exponential to make low frequency values easier
  to control when dragging the slider. The default now
  conveniently appears halfway in the middle.
- Reduce range hint for Offset to make "absolute"
  slider dragging more controllable, but allow lower/greater
  values to be entered manually.
2023-11-05 23:25:05 +01:00
MewPurPur
03d1830176 Optimize, tweak, improve consistency in SVG icons, and fix masks in light mode 2023-11-04 17:36:18 +02:00
Aaron Franke
58076b9ccb
Implement glTF compat version system for files from older Godot versions 2023-11-03 12:07:25 -05:00
smix8
0cba21f2da Fix CSGShape debug_collision_shape crash
Fixes CSGShape debug_collision_shape crash.
2023-11-02 11:23:47 +01:00
Rémi Verschelde
44a54f4500
Merge pull request #84252 from clayjohn/ensure_tangents
Enhance checks and user experience around tangent arrays in meshes.
2023-11-02 09:11:32 +01:00
clayjohn
d1043a5f93 Enhance checks and user experience around tangents.
Ensure `ensure_tangents` option actually creates tangent array. Even if it is just a dummy array.

Allow mesh to generate its own tangents when using compression. This allows users to compress meshes without tangents.

Warn users if they are trying to read from tangents without providing tangents.
2023-11-01 22:40:42 +01:00
bruvzg
5e55c6c611
ICU4C: Update to version 74.1 2023-11-01 08:56:12 +02:00
bruvzg
9ad55dc32d
[TextServer] Fix line breaks for dropcap and resizing embedded objects. 2023-10-31 22:39:42 +02:00
Rémi Verschelde
6afd320984
Merge pull request #78157 from RedworkDE/net-shutting-down-abruptly
C#: Fix crash with `DisposablesTracker_OnGodotShuttingDown`
2023-10-31 20:52:27 +01:00
Rémi Verschelde
8c7f836c19
Merge pull request #84191 from akien-mga/scons-gdscript-fix-no-lsp-build
SCons: Fix build with GDScript LSP disabled
2023-10-31 20:15:53 +01:00
bruvzg
f52559bf98
[TextServer] Fix glyph comparator ambiguous output, causing "bad comparison function" error spam when processing text with excessive use of combining diacritics. 2023-10-31 08:41:35 +02:00
Rémi Verschelde
67941551ca
Merge pull request #83809 from raulsntos/dotnet/free-dialogs
C#: Free dialogs when exiting the editor
2023-10-30 16:26:15 +01:00
Rémi Verschelde
bfd7a50036
SCons: Fix build with GDScript LSP disabled
Fixes #83947.
2023-10-30 15:28:34 +01:00
Rémi Verschelde
5dc10b5aa5
Merge pull request #84181 from jsjtxietian/fix-FastNoiseLite.get_image-crash
Fix `FastNoiseLite.get_image` crashes with bad param
2023-10-30 13:58:06 +01:00
Rémi Verschelde
23bcb702ec
Merge pull request #84174 from jsjtxietian/hide_debug_collision_shape_when_csgshape_invisible
Hide CSGShape's `debug_collision_shape` when it is invisible
2023-10-30 13:57:42 +01:00
jsjtxietian
ff45c08143 Fix FastNoiseLite.get_image crashes with bad param 2023-10-30 18:44:44 +08:00
jsjtxietian
173e2c7f29 Hide CSGShape's debug_collision_shape when it is invisible 2023-10-30 14:53:09 +08:00
Bastiaan Olij
c512e85082 Fix OpenXR sample count 2023-10-28 17:17:13 +11:00
Saracen
4b671eec0e Reimport bone attachment fixes:
Assign bone_idx to GLTF importer to fix serialization.
Notifies Skeletons and BoneAttachments when reimporting.
Removes usage of NOTIFICATION_NODE_RECACHE_REQUESTED
2023-10-27 20:34:01 +01:00
Danil Alexeev
6e996a597f
GDScript: Fix UNSAFE_CAST warning 2023-10-27 12:42:00 +03:00
Rémi Verschelde
c05341e048
Merge pull request #83984 from akien-mga/openxr-1.0.31
openxr: Sync with upstream 1.0.31, don't build obsolete dispatch table
2023-10-27 11:38:08 +02:00
Rémi Verschelde
bf41c6bd34
Merge pull request #82918 from raulsntos/dotnet/only-node-can-export-node
C#: Report diagnostic for Node exports in a type that doesn't derive from Node
2023-10-27 11:36:33 +02:00
Rémi Verschelde
adcd16c710
Merge pull request #83569 from vnen/gdscript-no-opt-division-modulo
GDScript: Don't optimize division and modulo on debug
2023-10-26 15:59:44 +02:00
Rémi Verschelde
7443fb2cf2
Merge pull request #83978 from jsjtxietian/fix-FastNoiseLite.get_seamless_image-crash-on-bad-input
Fix `FastNoiseLite.get_seamless_image` function crash with bad param
2023-10-26 12:10:08 +02:00
jsjtxietian
1fafca56a6 Fix FastNoiseLite.get_seamless_image function will crashes with bad param 2023-10-26 17:13:04 +08:00
Rémi Verschelde
f0b6677906
openxr: Sync with upstream 1.0.31, don't build obsolete dispatch table 2023-10-26 10:01:48 +02:00
Danil Alexeev
b04263644c
Core: Allow methods of built-in Variant types to be used as Callables 2023-10-25 15:53:52 +03:00
smix8
5e4ff965cc Fix potential crashes with TileMap navmesh baking
Fixes potential crashes with TileMap navmesh baking.
2023-10-24 14:51:52 +02:00
Rémi Verschelde
adc4566b1e
Merge pull request #83829 from akien-mga/openxr-revert-1.0.28-fix-mingw-crash
openxr: Revert to 1.0.28, newer versions crash on Windows/Mingw-GCC
2023-10-24 10:54:38 +02:00
Rémi Verschelde
9d4fe33dd9
Merge pull request #83792 from ryanabx/fixes/gdscript-parser-typo
Fix comment typo in `gdscript_parser.h`
2023-10-24 10:54:35 +02:00
Rémi Verschelde
398b254f27
Merge pull request #83325 from raulsntos/dotnet/find-latest-sdk
C#: Fallback to the latest SDK
2023-10-24 10:54:04 +02:00
ryanabx
e945a8fbad Fix typo in gdscript_parser.h and gdscript_translation_parser_plugin.cpp 2023-10-23 08:48:36 -05:00
Theraot
8777c05817 Expanded documentation for vector slide and project 2023-10-23 06:16:07 -05:00
Rémi Verschelde
c21c2706ad
Merge pull request #83827 from bruvzg/icu_data_keep
[TextServerAdvanced] Keep dynamically loaded ICU data in memory.
2023-10-23 12:44:02 +02:00
Rémi Verschelde
5e8bf6addf
Merge pull request #83815 from timothyqiu/as
Fix "as" capitalization in editor strings
2023-10-23 12:43:15 +02:00
Rémi Verschelde
2079bbabfd
openxr: Revert to 1.0.28, newer versions crash on Windows/Mingw-GCC
Reverts #82582.
Works around #83674.

Users tested 1.0.29, 1.0.30, and 1.0.31, which all triggered the same issue,
with both mingw-gcc from Fedora 36 and Fedora 39.
2023-10-23 11:10:31 +02:00
bruvzg
0fb5d53feb
[TextServerAdvanced] Keep dynamically loaded ICU data in memory. 2023-10-23 11:21:13 +03:00
DennisManaa
1a1c542836 Implement automatic translation for ItemList 2023-10-23 10:14:08 +02:00
Haoyu Qiu
2413952a4c Fix "as" capitalization in editor strings 2023-10-23 16:10:05 +08:00
Raul Santos
48edcc3b34
C#: Free dialogs when exiting the editor 2023-10-23 02:10:06 +02:00
smix8
9416f0c266 Fix hole in heightmap navigation mesh baking
Fixes hole in heightmap navigation mesh baking.
2023-10-22 18:23:43 +02:00
smix8
ade4d3cf28 Fix NavigationLink enabled toggle
Fixes NavigationLink enabled toggle.
2023-10-21 03:11:37 +02:00
Rémi Verschelde
46efe48386
Merge pull request #83683 from YuriSizov/random-cleanup
Clean up some Editor, OpenXR, VideoStream code
2023-10-20 22:03:14 +02:00
Danil Alexeev
7f4721a941
GDScript: Fix non-static call is allowed in static var lambda body 2023-10-20 20:43:07 +03:00
Yuri Sizov
cd31407cb3 Clean up some Editor, OpenXR, VideoStream code
- EditorNode has excessive and pointless checks for Input singleton.
- EditorNode initialization order is a bit awkward.
- OpenXR binds a method that doesn't need that (for call deferred).
- VideoStream has a formatting error.
2023-10-20 17:54:39 +02:00
Rémi Verschelde
78e47a4523
Merge pull request #83663 from jsjtxietian/prevent-invalid-gltf-crash-godot
Prevent godot crash from importing a certain kind of invalid gltf
2023-10-20 15:13:50 +02:00
Rémi Verschelde
a63bff4ce4
Merge pull request #83619 from YuriSizov/core-our-vessel-only-has-one-node-left
Fix StringName leaks in VariantParser
2023-10-20 15:11:24 +02:00
Rémi Verschelde
7270da76ba
Merge pull request #83540 from mattbork/get_shallow_script_fix
Fix `GDScriptCache::get_full_script` eating parsing errors because of early exit
2023-10-20 15:09:04 +02:00
Rémi Verschelde
db493ede00
Merge pull request #83284 from DarioSamo/lightmapper-grid-clusters
Optimize lightmapper using triangle clusters on the acceleration structure.
2023-10-20 15:08:17 +02:00
Rémi Verschelde
aa3beb5f11
Merge pull request #81628 from rune-scape/rune-lambda-hotswap
GDScript: Fix lambda hot reloading
2023-10-20 15:07:05 +02:00
Raul Santos
9750e49c57
Add NOTIFICATION_PREDELETE_CLEANUP notification
New notification sent after `NOTIFICATION_PREDELETE` to let Objects cleanup at the very end, it should be the last notification sent.
2023-10-20 13:43:42 +02:00
jsjtxietian
1c70a7ae6a Prevent godot crash from importing a certain kind of invalid gltf
invalid type: mistach interpolation CUBICSPLINE and value size
2023-10-20 16:58:11 +08:00
Yuri Sizov
4952d37f4b Fix StringName leaks in VariantParser 2023-10-19 17:13:15 +02:00
Matthew Borkowski
2d262c072b Fix GDScriptCache::get_full_script eating parsing errors because of early exit
Fixes #75545.
2023-10-18 18:21:59 -04:00
smix8
36146258de Fix NavRegion sync error messages
Fixes NavRegion sync error messages
2023-10-18 21:09:48 +02:00
George Marques
08e3f30299
GDScript: Don't optimize division and modulo on debug
Since the validated operators don't have checks for division by zero,
use the regular evaluator in debug which has those checks.
2023-10-18 14:12:51 -03:00
Rémi Verschelde
49f492d54b
Merge pull request #83532 from raulsntos/dotnet/nested-class-generation
C#: Fix generated nested class order
2023-10-18 16:54:58 +02:00
Raul Santos
fe078219fc
C#: Fix generated nested class order 2023-10-18 03:37:57 +02:00
Raul Santos
e6ebde8408
Fix C# docs to use the proper XML
Replaces some BBCode that was accidentally left in the C# documentation
with the proper XML syntax.
2023-10-18 01:56:25 +02:00
Rémi Verschelde
dce1aab174
Merge pull request #83514 from kleonc/docs-multiplication-operators-doing-xform_inv-csharp
Clarify C# docs for operators performing `xform_inv`
2023-10-18 00:06:02 +02:00
Rémi Verschelde
ca09afd530
Merge pull request #80489 from raulsntos/dotnet/diagnostics
C#: Improve diagnostic messages and add help link
2023-10-17 23:59:17 +02:00
rune-scape
9fb8862d73
GDScript: Lambda hot reloading
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
2023-10-17 15:52:52 -04:00
kleonc
408de3b091 Clarify C# docs for operators performing xform_inv 2023-10-17 19:49:42 +02:00
Raul Santos
aa4dba5b56
C#: Improve diagnostic messages and add help link
- Reword diagnostic messages.
- Add help link to diagnostics.
2023-10-17 19:45:09 +02:00
Rémi Verschelde
109cb8e697
Merge pull request #83455 from Lunarisnia/fix/gdscript-error-typo
Fix grammar typo in GDScript error message
2023-10-17 16:13:02 +02:00
Thaddeus Crews
0935a99bf9
C# - bindings generator langword check 2023-10-17 08:51:24 -05:00
Rémi Verschelde
94810115fe
openxr: Sync with upstream 1.0.30 2023-10-17 15:46:01 +02:00
Lunarisnia
981c6c94c0 Fix grammar typo in GDScript error message 2023-10-17 01:33:37 +07:00
Rémi Verschelde
ddb7969cb6
Merge pull request #83257 from dalexeev/gds-fix-unresolved-type-for-incomplete-expressions
GDScript: Fix unresolved datatype for incomplete expressions
2023-10-16 18:44:27 +02:00
Rémi Verschelde
6a0716dedd
Merge pull request #83123 from astillich/82998-propagate-base-class-exports
Fix modifying base script exports not propagating to derived scripts
2023-10-16 18:43:39 +02:00
Rémi Verschelde
50212ecfdb
Merge pull request #78882 from dalexeev/gds-fix-utility-func-err-msg
GDScript: Fix incorrect error message for utility functions
2023-10-16 18:43:11 +02:00
Alexander Stillich
99f8751878 Fix editing exports in a base script not propagating the change to the opened property editor
This patch fixes the user having to navigate away from the selected node which has the derived script attached and back to see the changes of the base script exports reflected in the property editor.
2023-10-16 17:55:19 +02:00
Martin Capitanio
0983022e0c ThorVG: Update to v0.11.1
https://github.com/thorvg/thorvg/releases/tag/v0.11.1

Godot related:
+ [SwEngine] Enhanced the quality of the dash line corners.
+ [SVG] Fixed a regression bug related to maskContentUnit,
	userSpaceOnUse/objectBoundingBox.

Fixes #82982 icons.
Fixes #83198 svg ← png/jpg.
2023-10-16 13:48:22 +02:00
Danil Alexeev
0c2202c56e
GDScript: Fix incorrect error message for utility functions 2023-10-16 14:09:57 +03:00
Raul Santos
be1dfd3b3a
C#: Allow exporting games without C#
When exporting a game that contains a C# solution, a feature is added so the exported game can check if it should initialize the .NET module. Otherwise, the module initialization is skipped so games without C# won't check for the assemblies and won't show alerts when they're missing.
2023-10-16 05:07:11 +02:00
Raul Santos
d525a45e5c
C#: Fix converting default Callables to native 2023-10-15 02:02:58 +02:00
Raul Santos
a186343abd
C#: Fallback to the latest SDK 2023-10-14 14:21:48 +02:00
Dario
47214ea9f5 Optimize lightmapper using triangle clusters on the acceleration structure.
Add an additional layer of indirection to the grid used by the lightmapper to store fixed-size triangle clusters. Greatly speeds up baking times on scenes with high triangle density, as the clusters will help to avoid unnecessary checks when the triangle density is high on the scene.
2023-10-13 17:57:25 -03:00
Rémi Verschelde
a574c0296b
Merge pull request #80452 from strellydev/ogg-loop-offset-pop-fix
Fix OGG audio loop offset pop
2023-10-13 22:45:59 +02:00
Rémi Verschelde
325cc0178e
Merge pull request #83279 from Faless/mp/fix_delta_indexed
[MP] Fix "on change" indexed properties
2023-10-13 22:20:21 +02:00
Rémi Verschelde
56a0f22391
Merge pull request #83264 from Faless/mp/timer_and_reset_fixes
[MP] Fix synchronizer init and reset
2023-10-13 22:18:37 +02:00
Rémi Verschelde
68cc80ee58
Merge pull request #83249 from zaevi/fix_csharp_lookup_singleton_instance
C#: Fix lookup for singleton instance types.
2023-10-13 22:17:50 +02:00
strellydev
9c9f1154f8 Fix OGG audio loop offset pop.
Co-authored-by: MJacred <loesch.benny92@gmx.de>
Co-authored-by: Ellen Poe <ellen.h.poe@gmail.com>
Co-authored-by: Michael Wörner <mwoerner@semw-software.com>
2023-10-13 19:54:24 +01:00
Dario
a9a197d2dc Rewrite the GPU Lightmapper's indirect lighting logic to match Godot 3.5's CPU Lightmapper.
Port over the logic from Godot 3.5 for indirect lighting. This should fix many issues about indirect bounces causing more energy and improve the overall quality of the result.
2023-10-13 14:33:55 -03:00
Fabio Alessandrelli
9d44954a3f [MP] Fix "on change" indexed properties
Watchers were still using Object::get instead of Object::get_indexed.
2023-10-13 16:53:24 +02:00
ocean (they/them)
f870711739 GDScript: add module description in markdown 2023-10-13 10:46:24 -04:00
Fabio Alessandrelli
f79b90a6c0 [MP] Fix synchronizer init and reset
Fix set_multiplayer_authority not resetting the synchronizer.

Fix the reset function not clearing the watchers state.

Skip wrap around check for the first sync packet after reset.
2023-10-13 14:03:40 +02:00
bruvzg
9a1e0e4aef
[Bitmap fonts] Add support for scaling. 2023-10-13 12:57:45 +03:00
Danil Alexeev
3ac61aadd7
GDScript: Fix unresolved datatype for incomplete expressions 2023-10-13 12:52:14 +03:00
Rémi Verschelde
cd9fd6ddfd
Merge pull request #83216 from dalexeev/code-editor-fix-region-doc-comment
Code Editor: Fix regression with using doc comments for code regions
2023-10-13 11:46:44 +02:00
Rémi Verschelde
85e508b570
Merge pull request #80182 from mikemar10/mikemar10/update_documentation_enetconnection_eventreceive
Fix packet details of ENetConnection EventType EVENT_RECEIVE documentation
2023-10-13 11:43:11 +02:00
Rémi Verschelde
5e9d096f06
Merge pull request #79407 from zaevi/fix_web_websocket-close-reason
[Web] Fix WebSocket returning empty close-reason.
2023-10-13 11:42:41 +02:00
Zae
55f74d99f4 C#: Fix lookup for singleton instance types. 2023-10-13 16:40:46 +08:00
Danil Alexeev
881fe67d94
Code Editor: Fix regression with using doc comments for code regions 2023-10-13 09:38:03 +03:00
Jakub Marcowski
cb954c6bab Implement Vector2i/3i/4i methods: distance_to and distance_squared_to 2023-10-12 13:46:49 +02:00
Rémi Verschelde
2c79bc686e
Merge pull request #83150 from dalexeev/gds-autocomplete-static-var-on-class
GDScript: Add autocompletion for static variables accessed via class
2023-10-11 22:44:35 +02:00
Rémi Verschelde
25fa5eadd5
Merge pull request #82986 from OmarShehata/fix-external-editor-hot-reload
Fix external editor hot reload for GDScript
2023-10-11 22:38:42 +02:00
bruvzg
899e56de5d
Re-add optional OIDN denoise as an external executable. 2023-10-11 19:52:18 +03:00
Danil Alexeev
496bee3bc7
GDScript: Add autocompletion for static variables accessed via class 2023-10-11 17:10:16 +03:00
Danil Alexeev
668ba2d1a5
GDScript: Allow empty parentheses for property getter declaration 2023-10-11 09:54:17 +03:00
Fabio Alessandrelli
5df7577a05 [MP] Optimize internal SceneReplicationConfig access
Use direct pointer addressing to avoid unnecessary refs/unrefs
2023-10-10 14:42:54 +02:00
Fabio Alessandrelli
311a27281f [MP] Avoid unnecessary internal ref/unrefs
Access the various internal components (cache/replicator) via pointer,
to avoid unnecessary overhead.
2023-10-10 14:42:54 +02:00
Fabio Alessandrelli
9ce423914e [MP] Optimize internal authority checks
We already know which MultiplayerAPI a certain Node uses, so we don't
need to retrieve it via SceneTree every time.
2023-10-10 14:42:54 +02:00
Fabio Alessandrelli
61cf7d180c [MP] Optimize multiplayer NodePath caching
Only use paths during network transfer.
Use ObjectID instead of NodePaths for storing the Node <-> NetID
relations locally.
2023-10-10 14:42:48 +02:00
Rémi Verschelde
53c6c387ef
Merge pull request #83050 from k0T0z/fix-unnecessary-include
Deleting unnecessary include in GDScriptParser
2023-10-10 12:33:58 +02:00
Rémi Verschelde
7f5be552ec
Merge pull request #83049 from dalexeev/gds-docgen-fix-return-metatype-regression
GDScript DocGen: Fix regression with return metatypes
2023-10-10 12:33:34 +02:00
Raul Santos
cea77d0b48
C#: Add checks to Android export
- Add .NET 7.0 TFM when the platform is Anroid to the created csproj.
- Prevent exporting to Android when the architecture is not supported.
2023-10-10 00:35:08 +02:00
Rémi Verschelde
6b727ebdd2
Merge pull request #83068 from AThousandShips/null_fix
Fix incorrect null check
2023-10-09 23:27:17 +02:00
Rémi Verschelde
9694f1d48c
Merge pull request #83051 from Repiteo/c#-untyped-to-typed-argumentnullexception
C#: Untyped to typed `ArgumentNullException`
2023-10-09 23:24:52 +02:00
Rémi Verschelde
e0ea86f0a0
Merge pull request #83040 from DarioSamo/lightmapper-dda-fix
Fix `trace_ray()` function in the lightmapper missing hits with large triangles.
2023-10-09 23:24:23 +02:00
Rémi Verschelde
4a5801b44a
Merge pull request #82729 from shana/shana/ios-csharp
Add C# iOS support
2023-10-09 23:23:11 +02:00
Rémi Verschelde
a28dab7e82
Merge pull request #79711 from adamscott/web-non-blocking-main-thread
Add `proxy_to_pthread` option to `platform=web`
2023-10-09 23:22:22 +02:00
Rémi Verschelde
71a8ac41fb
Merge pull request #72751 from dalexeev/doc-comment-color
Highlight doc comments in a different color
2023-10-09 23:21:54 +02:00
A Thousand Ships
2eef0ffb77 Fix incorrect null check 2023-10-09 23:21:30 +02:00
Andreia Gaita
ee9a735c26 Add C# iOS support
This support is experimental and requires .NET 8

Known issues:
- Requires macOS due to use of lipo and xcodebuild
- arm64 simulator templates are not currently included
  in the official packaging
2023-10-09 18:22:56 +02:00
Adam Scott
78c2a08fae
Add proxy_to_pthread option to platform=web
Co-authored-by: Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
2023-10-09 11:50:01 -04:00
Saif Kandil
3e57279be2 removing unnecessary include of gdscript_warning.h as it is already included in the header file
Signed-off-by: Saif Kandil <74428638+k0T0z@users.noreply.github.com>
2023-10-09 18:00:44 +03:00
Thaddeus Crews
d0cd726310
C#: untyped to typed handle null exception
• Add some missing exception/return documentation
2023-10-09 09:53:21 -05:00
Danil Alexeev
faa066f9e5
GDScript DocGen: Fix regression with return metatypes 2023-10-09 17:38:54 +03:00
Rémi Verschelde
a1d7c62df7
Merge pull request #83003 from AThousandShips/null_check_extra
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-10-09 15:37:14 +02:00
Rémi Verschelde
336260b7b3
Merge pull request #83002 from AThousandShips/safety_check
Replace `sanity` with `safety` for checks
2023-10-09 15:36:49 +02:00
Dario
94c60ae556 Fix trace_ray() function in the lightmapper missing hits with large triangles.
The DDA traversal had a conceptual error where it did an early termination of the search if it hit a triangle, but it didn't check if the hit position was inside the bounds of the cell being traversed. This can aid to fix light leaks such as the ones found in issue #75440.
2023-10-09 09:44:40 -03:00
kobewi
6849cf48d1 Fix GDScript cache assigning UID as scene path 2023-10-09 13:57:31 +02:00
Danil Alexeev
de7cbe8789
Highlight doc comments in a different color 2023-10-08 19:26:10 +03:00
A Thousand Ships
f18aa00e85 Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-10-08 17:23:33 +02:00
A Thousand Ships
034c0f1624 Replace sanity with safety for checks 2023-10-08 16:22:24 +02:00
Thaddeus Crews
d5d5af653e
C# - Fix inheritdoc links in Compat.cs 2023-10-08 09:14:28 -05:00
Omar Shehata
c25a2d832b Fix external editor hot reload 2023-10-07 22:14:54 -04:00
Raul Santos
bfe1a93023
C#: Report diagnostic for Node exports in a type that doesn't derive from Node 2023-10-06 19:03:18 +02:00
George Marques
4a7d49a89a
GDScript: Replace ptrcalls on MethodBind to validated calls
This improves the performance of typed calls to engine methods when the
argument types are exact.

Using validated calls delegate more of the work the core instead of
doing argument unpacking in the VM. It also does not need different
instructions for each return type, simplifying the code.
2023-10-06 11:15:44 -03:00
Rémi Verschelde
7f8c3124a8
Merge pull request #82752 from decacis/openxr_swapchain_error
OpenXR - Properly skip frame render when the XR runtime is not yet ready to let us acquire the next image from the swapchain
2023-10-06 12:52:52 +02:00
Rémi Verschelde
373c4b22d3
Fix various typos with codespell
Using 2.2.7.dev5+g2af65969.
2023-10-06 12:52:22 +02:00
jsjtxietian
b0ccd5c84f Prompt require editor restart to user when gizmo color changed 2023-10-06 15:02:03 +08:00
Rémi Verschelde
1edf0f35b1
Merge pull request #82326 from adeneve/gdscript_dict_highlighter_fix
Fix for GDScriptHighlighter dictionaries as function arguments
2023-10-05 22:49:47 +02:00
Andrew de Neve
978fcaf1b4 Fix for gdscript_highlighter dictionaries as arguments
Fix for gdscript_highlighter. When passing a dictionary
as a function argument, the dictionary values were being
highlighted green as if they were types.
2023-10-05 12:38:39 -07:00
clayjohn
51ed3aef63 Vertex and attribute compression to reduce the size of the vertex format.
This allows Godot to automatically compress meshes to save a lot of bandwidth.

In general, this requires no interaction from the user and should result in
no noticable quality loss.

This scheme is not backwards compatible, so we have provided an upgrade
mechanism, and a mesh versioning mechanism.

Existing meshes can still be used as a result, but users can get a
performance boost by reimporting assets.
2023-10-05 12:02:23 -06:00
Rémi Verschelde
cd7c50fdf1
Merge pull request #82843 from dalexeev/gds-export-node-only-in-nodes
GDScript: Add error when exporting node in non `Node`-derived classes
2023-10-05 16:33:04 +02:00
Danil Alexeev
9e2273abc7
GDScript: Add error when exporting node in non [Node]-derived classes 2023-10-05 13:50:26 +03:00
kobewi
09b30be86d Add vararg call() method to C++ Callable 2023-10-05 11:35:29 +02:00
Rémi Verschelde
7c1abe8599
Merge pull request #82789 from dalexeev/gds-fix-unresolved-type-for-incomplete-bin-op
GDScript: Fix unresolved datatype for incomplete binary operator
2023-10-05 10:10:33 +02:00
Rémi Verschelde
a05c800a56
Merge pull request #82784 from dalexeev/gds-fix-empty-native-class
GDScript: Fix `native_type` is empty for autoload without script
2023-10-05 10:10:09 +02:00
Rémi Verschelde
5cee7b0264
Merge pull request #82767 from dalexeev/core-make-object-has-method-virtual
Core: Fix `Object::has_method()` for script static methods
2023-10-05 10:09:45 +02:00
Rémi Verschelde
5c26550b86
Merge pull request #82715 from BastiaanOlij/openxr_hand_joint_validity_flags
OpenXR - add access to hand joint validity flags
2023-10-05 10:09:22 +02:00
Rémi Verschelde
b9bf46de9e
Merge pull request #82067 from dalexeev/gds-docgen-fix-metatypes-and-values
GDScript DocGen: Fix and improve appearance of metatypes and values
2023-10-05 10:07:43 +02:00
Daniel Castellanos
771ec958af Fixing incorrect swapchain release timing
Applied a couple of checks suggested by @dhoverml for when the
XrResult is not XR_SUCCESS but is also not a failure. Also simplified
checks from @BastiaanOlij feedback.
2023-10-05 01:34:51 -06:00
Bastiaan Olij
50693a5420 OpenXR - add access to hand joint validity flags 2023-10-05 13:37:26 +11:00
Danil Alexeev
ed0b3c08e1
Core: Fix Object::has_method() for script static methods 2023-10-04 19:44:32 +03:00
Danil Alexeev
2c5636c135
GDScript: Fix unresolved datatype for incomplete binary operator 2023-10-04 17:07:37 +03:00
Rémi Verschelde
bfd78bb917
Merge pull request #82779 from emacser0/typo
Fix some typos in source
2023-10-04 15:46:29 +02:00
Rémi Verschelde
46b8f4a859
Merge pull request #82740 from raulsntos/dotnet/compat4.2
Add C# compat members for 4.2 changes
2023-10-04 15:44:05 +02:00
Rémi Verschelde
d7bca20359
Merge pull request #82722 from BastiaanOlij/openxr_fix_hand_tracking_issues
OpenXR: Fix small hand tracking issues
2023-10-04 15:43:18 +02:00
Rémi Verschelde
1e544505be
Merge pull request #82691 from YuriSizov/rst-validate-with-exceptions
Validate `code` tags for class and member references
2023-10-04 15:42:42 +02:00
Rémi Verschelde
a874344938
Merge pull request #82683 from raulsntos/dotnet/fix-transient-parent-or-something-idk
Fix C# editor dialogs
2023-10-04 15:36:47 +02:00
Danil Alexeev
6767de9b69
GDScript: Fix native_type is empty for autoload without script 2023-10-04 16:09:18 +03:00
emacser0
4c65ff52e4 Fix some typos in source. 2023-10-04 19:55:11 +09:00
Bastiaan Olij
c60ef33175 OpenXR Fix small hand tracking issues 2023-10-04 13:18:31 +11:00
Raul Santos
1dbecc3ff1
Add C# compat members for 4.2 changes 2023-10-03 19:34:39 +02:00
Rémi Verschelde
3a5d524287
Merge pull request #82614 from m4gr3d/openxr_eye_gaze_interaction
Add support for the OpenXR Eye gaze interaction extension
2023-10-03 17:25:52 +02:00
Rémi Verschelde
e41582f42f
Merge pull request #82547 from dalexeev/gds-fix-unsafe-call-arg-variant-constructors
GDScript: Fix `UNSAFE_CALL_ARGUMENT` warning for `Variant` constructors
2023-10-03 17:25:28 +02:00
Rémi Verschelde
2af3229ce7
Merge pull request #82516 from dalexeev/gds-improve-hl-types
GDScript: Improve highlighting of types
2023-10-03 17:24:32 +02:00
Rémi Verschelde
9af1983af2
Merge pull request #82475 from bruvzg/ts_spacing_var
[TextServer] Store font extra spacing variations without making a full copy of font.
2023-10-03 17:23:43 +02:00
Rémi Verschelde
6de06138c0
Merge pull request #79425 from vnen/gdscript-load-classes-for-debug-tests
GDScript: Load global classes when running debug tests
2023-10-03 17:11:01 +02:00
Danil Alexeev
e750c59cf8
GDScript: Improve highlighting of types 2023-10-03 17:32:27 +03:00
Yuri Sizov
cc0eebd9d8 Validate code tags for class and member references
This commit also adds means to manually disable warnings
in `code` tags where it's a false positive with the new
`skip-lint` attribute.

Warnings are now enabled on CI to prevent future errors.
2023-10-03 15:48:31 +02:00
Bastiaan Olij
9e56e7a3ce Add support for the OpenXR Eye gaze interaction extension
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2023-10-02 14:02:23 -07:00
Rémi Verschelde
5efbed51cc GDScript: Improve error messages for invalid indexing
These errors are very common when using an invalid property name
or calling on an object of the wrong type, and the previous message
was a bit cryptic for users.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
Co-authored-by: golfinq <golfinqz@gmail.com>
2023-10-02 14:23:11 -04:00
Raul Santos
404fd0b2dc
Fix C# editor dialogs
- Use `EditorInterface` to open C# editor dialogs.
- Ensure C# editor dialogs are open after `EditorProgress` finishes.
2023-10-02 17:50:33 +02:00
Jakub Janšta
74c937079c Add type_string() utility 2023-10-02 17:41:20 +02:00
Rémi Verschelde
6bebd9c961
Merge pull request #82664 from hackerzhuli/master
Fixed an error in `Vector3.BezierDerivative` in mono module
2023-10-02 13:17:02 +02:00
Rémi Verschelde
3cf17679ca
Merge pull request #81194 from rcorre/blend-import-76338
Update blender export flags for 3.6.
2023-10-02 13:16:11 +02:00
Rémi Verschelde
e95b7e84a4
Merge pull request #80844 from dalexeev/fix-callable-expected-argc
Fix expected argument count for `Callable` call errors
2023-10-02 13:15:53 +02:00
Rémi Verschelde
7588e3ff0d
Merge pull request #80225 from ettiSurreal/rotate-toward
Add `rotate_toward` and `angle_difference` methods.
2023-10-02 13:15:49 +02:00
朱力
bceba81b54 Fixed an error in Vector3.BezierDerivative in mono module 2023-10-02 15:00:05 +08:00
etti
3a39de4e2f Add rotate_toward and angle_difference to GDScript and C# 2023-10-01 22:19:42 +02:00
Ithamar R. Adema
36ff0591f2 Add build option for MP1/MP2 audio format support.
Enabling this adds 3.5k to the template size (Win/64bits).

Co-authored-by: Riteo <riteo@posteo.net>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-09-30 21:46:59 +02:00
Ryan Roden-Corrent
7e64c6c399
Update blender export flags for 3.6.
Fixes #76338.

Blender 3.6 imports fail with:

```
TypeError: Converting py args to operator properties: : keyword "export_nla_strips" unrecognized
```

The `export_nla_strips` flag was removed and replaced with `export_animation_mode`.
In 3.6.0-3.6.21, this option does not exist at all and causes the failure above.
In 3.6.22, this option was re-added, but does nothing.
See 96a73cb664.

We now need to check the blender version to determine what flags to use.
This adds an additional shell command before every import.
We might consider caching the version, but we'd have to invalidate the cache if the blender version or path changes.

As an aside, the "group animations" setting in Godot does the opposite of what I'd expect.
When `group_tracks=true`, each animation is exported individually.
When `group_tracks=false`, all animations are exported as a single track.
This seems backwards, but I've kept the 3.6 behavior consistent with 3.5.

From https://docs.blender.org/api/3.6/bpy.ops.export_scene.html:

> ACTIONS Actions – Export actions (actives and on NLA tracks) as separate animations.
> ACTIVE_ACTIONS Active actions merged – All the currently assigned actions become one glTF animation.

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-09-30 11:32:21 -04:00
Danil Alexeev
ba96d4f631
GDScript: Fix UNSAFE_CALL_ARGUMENT warning for Variant constructors 2023-09-30 13:57:09 +03:00
Rémi Verschelde
2566cbec5c
Merge pull request #82542 from capnm/update_godot4.2_tip_from_0.10.7_revision_to_thorvg_0.11.0_release
ThorVG: update to v0.11.0 release.
2023-09-30 11:03:32 +02:00
Martin Capitanio
aab650f2ef ThorVG: update to v0.11.0 release.
See https://github.com/thorvg/thorvg/releases/tag/v0.11.0

+ Infrastructure
    Repository folder structure was make it more intuitive and coherent.
        "thorvg/src/lib" -> "thorvg/src/common"
            (providing essential common functionalities
                used internally among the renderer and sub-modules)
        "thorvg/src/lib" -> "thorvg/src/renderer"
            (for vector drawing features)

+ SVG related
    Fix stroke regression https://github.com/thorvg/thorvg/issues/1670
    Support stroke dash offset function https://github.com/thorvg/thorvg/issues/1591#issuecomment-1681319321
    Support Focal property in Radial Gradient https://github.com/thorvg/thorvg/issues/1558
2023-09-29 19:50:19 +02:00
Rémi Verschelde
dd3dda797c
Merge pull request #82533 from DarioSamo/no-dilate-before-denoise
Make the lightmapper not dilate before denoising.
2023-09-29 19:47:29 +02:00
Danil Alexeev
aff767ef07
Fix expected argument count for Callable call errors 2023-09-29 20:00:10 +03:00
Dario
ac90ca714c Make the lightmapper not dilate before denoising.
Dilating noisy data caused issues for the denoiser. Fixes #82526.
2023-09-29 12:36:36 -03:00
Hugo Locurcio
d6d640f158
Disable lightmapper_rd module in non-editor builds (and in Android editor)
This is consistent with `xatlas_unwrap`, which isn't enabled in non-editor
builds and the Android editor either. There is currently no way to
use the lightmapper in a non-editor build anyway, as it doesn't expose
any methods (and even if there was, there would be no way to perform
UV2 unwrapping in the exported project).

This reduces binary size of a stripped Linux x86_64 export template
build by ~164 KB.

This also moves the PrimitiveMesh texel size project setting
so that it's defined when the module is disabled,
and adds a property hint to it.
2023-09-29 11:30:15 +02:00
Aaron Franke
7bd894ba7a
Fix skeletons when generating multiple Godot scenes from one GLTF 2023-09-28 17:48:33 -05:00
Yuri Sizov
b25f1f9c79 Merge pull request #82477 from dalexeev/gds-covariance-and-contravariance
GDScript: Add return type covariance and parameter type contravariance
2023-09-28 20:04:37 +02:00
Yuri Sizov
4c95ebddd6 Merge pull request #82291 from bitsawer/fix_occlusion_culling_leak
Fix RaycastOcclusionCull World3D scenario memory leak
2023-09-28 20:04:25 +02:00
Yuri Sizov
78483a1df2 Merge pull request #82186 from dalexeev/gds-fix-property-duplication
GDScript: Fix duplication of inherited script properties
2023-09-28 20:04:18 +02:00
Yuri Sizov
73252669b1 Merge pull request #82030 from dalexeev/gds-make-for-loop-array-literal-typed
GDScript: Make array literal typed if `for` loop variable type is specified
2023-09-28 20:04:12 +02:00
Yuri Sizov
813cd1dfc8 Merge pull request #80085 from vnen/gdscript-pattern-guards
GDScript: Implement pattern guards for match statement
2023-09-28 20:03:57 +02:00
Danil Alexeev
cb8b89fd95
GDScript: Add return type covariance and parameter type contravariance 2023-09-28 12:27:36 +03:00
bruvzg
4a167fc740
[TextServer] Store font extra spacing variations without making a full copy of font. 2023-09-28 10:45:09 +03:00
Yuri Sizov
aa82cccc41 Merge pull request #81659 from DarioSamo/nlm-denoiser
Replace OIDN denoiser in Lightmapper with a JNLM denoiser compute shader.
2023-09-27 19:08:01 +02:00
Yuri Sizov
aa474c9feb Merge pull request #75988 from dalexeev/gds-unsafe-call-argument
GDScript: Improve call analysis
2023-09-27 19:07:46 +02:00
George Marques
54a1414500
GDScript: Implement pattern guards for match statement
Within a match statement, it is now possible to add guards in each
branch:

	var a = 0
	match a:
		0 when false: print("does not run")
		0 when true: print("but this does")

This allows more complex logic for deciding which branch to take.
2023-09-27 11:25:25 -03:00
Rémi Verschelde
214c978f4b
Merge pull request #81862 from akien-mga/thorvg-0.10.6
thorvg: Update to 0.10.7
2023-09-27 14:03:38 +02:00
Rémi Verschelde
3228f73127
Merge pull request #82413 from Calinou/3d-editor-gizmos-ignore-fog
Make 3D editor gizmos and debug shapes ignore fog
2023-09-27 09:21:35 +02:00
Rémi Verschelde
c7a5a284d3
Merge pull request #80260 from raulsntos/dotnet/msbuild-panel
C#: Redesign MSBuild panel
2023-09-27 09:20:19 +02:00
Raul Santos
f19694a8d6
C#: Redesign MSBuild panel
- Redesign panel to look closer to the look of other Godot panels such as Output and Debugger.
- Moved list of problems and output log to separate tabs instead of using a HSplit.
- Added Tree/List layouts to the problems tab.
- Added search box to filter problems tab.
- Added `FileTree` icon, made from `FileList`. Both are used for the button that toggles the Tree/List layouts.
2023-09-27 02:53:27 +02:00
Hugo Locurcio
fcbf7011cc
Make 3D editor gizmos and debug shapes ignore fog
This makes them easier to see in their intended colors in scenes with fog.
2023-09-27 00:54:57 +02:00
Rémi Verschelde
81949c2cd2
thorvg: Update to 0.10.7
Fixes #81618.
2023-09-26 22:43:44 +02:00
bitsawer
7654e7852e Fix RaycastOcclusionCull World3D scenario memory leak 2023-09-26 21:53:17 +03:00
Rémi Verschelde
dc14f02892
Merge pull request #81851 from aaronfranke/gltf-single-root
GLTF: Add root node export options and GODOT_single_root extension
2023-09-26 17:52:51 +02:00
Aaron Franke
446893fdd1
GLTF: Add GODOT_single_root extension 2023-09-26 10:18:52 -05:00
A Thousand Ships
517e9f8aef [Modules] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-26 16:44:52 +02:00
Rémi Verschelde
da91cf9367
Merge pull request #82347 from SaracenOne/dir_access_checks
Add error checks for DirAccess creation
2023-09-26 16:36:47 +02:00
Rémi Verschelde
9b0b441cf3
Merge pull request #82139 from dalexeev/gds-add-inferred-declaration-warning
GDScript: Add `INFERRED_DECLARATION` warning
2023-09-26 16:36:39 +02:00
Rémi Verschelde
4410b0b0e1
Merge pull request #67304 from wscalf/master
Allow readonly and writeonly C# properties to be accessed from GDScript
2023-09-26 16:36:33 +02:00
Rémi Verschelde
e9e99775f1
Merge pull request #82375 from raulsntos/dotnet/fix-compat
C#: Remove compat method that is now generated
2023-09-26 16:36:27 +02:00
Rémi Verschelde
e0b1171396
Merge pull request #82368 from kleonc/NavMeshGenerator2D-dev-assert-assignment-typo
Fix typo in dev assert in NavMeshGenerator2D
2023-09-26 16:36:19 +02:00
Raul Santos
f60cff1cb2
C#: Remove compat method that is now generated 2023-09-26 16:12:10 +02:00
kleonc
5904c2ca19 Fix typo in dev assert in NavMeshGenerator2D 2023-09-26 14:30:23 +02:00
Rémi Verschelde
42011d8673
Merge pull request #82240 from jaros3/vector2i-gethashcode
[C#] Use `HashCode.Combine()` for basic composite types instead of xor
2023-09-26 13:45:18 +02:00
Rémi Verschelde
10c3941a9a
Merge pull request #80587 from garychia/shadowed_class_name
Check if any global script class is shadowed by a variable
2023-09-26 13:44:56 +02:00
Rémi Verschelde
017541bcec
Merge pull request #80527 from raulsntos/dotnet/generate-compat-methods-from-classdb
C#: Generate and use compat methods
2023-09-26 13:44:52 +02:00
Chia-Hsiang Cheng
ceda13720b Check if any global script class is shadowed by a variable 2023-09-26 16:47:17 +08:00
bruvzg
bc6585a5a7
[RTL] Add support for image dynamic updating, padding, tooltips and size in percent. 2023-09-26 09:39:51 +03:00
Rémi Verschelde
0c626bdfb0
Merge pull request #82294 from dalexeev/gds-fix-gdsnc-crash
GDScript: Fix crash with `GDScriptNativeClass`
2023-09-26 08:31:26 +02:00