Commit graph

10389 commits

Author SHA1 Message Date
Rémi Verschelde 7744d59197
Merge pull request #85856 from smix8/tilemap_layers_parse
Make 2D navigation mesh baking parse all TileMapLayers
2024-04-05 12:15:43 +02:00
Rémi Verschelde 72f9f8d339
Merge pull request #83217 from paulloz/fix/81903-delegate-capture-serialization
[.NET] Fix serialization of delegates capturing variables
2024-04-05 12:15:36 +02:00
Rémi Verschelde 8fcc7a52dc
harfbuzz: Update to 8.4.0 2024-04-05 10:35:10 +02:00
Aaron Franke 92b243dc3c
Separate Shape3D resource logic in GLTFPhysicsShape 2024-04-04 16:22:01 -07:00
Alistair Leslie-Hughes 767bfec8b6 Use local variable to stop memory leak.
I've change the urls variable to be a local, instead of manually allocating it all the time.
This is only used locally and was causing a memory leak because FreeUPNPUrls gave the impression it free it.

1. FreeUPNPUrls doesn't free the pointer passed in, that's up to caller.
2. The second if(!urls) produced dead code as we checked the pointer just after allocation.
2024-04-05 09:13:27 +11:00
Jamie Hill-Daniel 164b34a734 Don't pass self when calling a static function from a non-static context 2024-04-04 21:15:17 +00:00
Aaron Franke a9416da6ea
GLTF export: Propagate property_list_changed from extensions 2024-04-04 14:06:09 -07:00
Thaddeus Crews bbb3eb3a1a
Update lingering do/while(0) defines 2024-04-04 14:17:22 -05:00
Paul Joannon c310ecce13
Fix captured variable serialization in delegates 2024-04-04 18:46:11 +02:00
Silc Lizard (Tokage) Renew 04dd299cba Skeleton3D: Add SkeletonModifier / Deprecate Override / Separate PB 2024-04-05 01:28:26 +09:00
Thaddeus Crews 7918d50297
SCons: Fix Ninja compilation with MSVC 2024-04-04 10:16:33 -05:00
Rémi Verschelde 0c71ba7801
Merge pull request #89880 from dsnopek/openxr-composition-layers-node3d-drs
Add support for OpenXR composition layers
2024-04-04 17:09:07 +02:00
David Snopek 0f2b804059 Add support for OpenXR composition layers
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2024-04-04 09:20:23 -05:00
Rémi Verschelde 96a75d99c4
Merge pull request #90064 from lyuma/remove_immutable_post
Apply "Remove Immutable Tracks" after post-import.
2024-04-04 14:37:01 +02:00
Rémi Verschelde 1469db5e58
Merge pull request #89968 from Calinou/xr-startup-alert-windows
Tweak OpenXR alert to mention WMR only on Windows
2024-04-04 14:35:37 +02:00
Rémi Verschelde c97885be7d
Merge pull request #89811 from timothyqiu/missing-i18n
Fix missing i18n for some editor strings
2024-04-04 14:31:43 +02:00
Rémi Verschelde acfcdbd291
Merge pull request #88783 from Chubercik/embree-4.3.1
embree: Update to 4.3.1
2024-04-04 14:31:02 +02:00
Rémi Verschelde 406d9426cb
Merge pull request #86121 from lawnjelly/occlusion_cull_jitter
Jitter raster occlusion camera to reduce false positives.
2024-04-04 14:30:42 +02:00
Rémi Verschelde e302fb2167
Merge pull request #85386 from RedMser/scene-tree-editor-improvements
Improve SceneTreeEditor usability
2024-04-04 14:30:38 +02:00
Rémi Verschelde c196d12e23
Merge pull request #84947 from raulsntos/dotnet/instance_bindings
C#: Use `get_instance_binding` instead of set
2024-04-04 14:30:35 +02:00
smix8 d6ddeec0fd Make 2D navigation mesh baking parse all TileMapLayers
Makes 2D navigation mesh baking parse all TileMapLayers.
2024-04-04 10:45:53 +02:00
bruvzg 27f6f4147b
[TextServer] Expose ICU title case string conversion to scripting. 2024-04-04 10:56:49 +03:00
lawnjelly 691854d589 Jitter raster occlusion camera to reduce false positives.
Due to the low resolution of the occlusion buffer, small gaps between occluders can be closed and incorrectly occlude instances which should show through the gaps. To ameliorate this problem, this PR jitters the occlusion buffer over time, making it more likely an instance will be seen through a gap. This is used in conjunction with an occlusion timer per instance, to prevent instances flickering on and off rapidly.
2024-04-03 12:18:45 +01:00
Haoyu Qiu 91204f6f3f Fix missing i18n for some editor strings 2024-04-03 16:42:28 +08:00
AyOhEe e18fb27d70
Fixed "Create C# solution" dialog
Flipped the title and dialog text to how they should be. It seemed that the title was being put in the dialog text, and vice versa.
2024-04-01 23:01:40 +01:00
RedMser 9cd30208d6 Improve SceneTreeEditor usability
- Mark contextually relevant node
- Remember/Clear selection as appropriate
- Scroll to marked/selected node
2024-03-31 21:35:10 +02:00
Lyuma b0ce274a52 Apply "Remove Immutable Tracks" after post-import.
Reimplements "Remove Immutable" by comparing to the skeleton rest.
It is necessary to delay removing animation tracks until after the correct rest pose is calculated in rest-fixer.
Preserves the original implementation in the GLTFDocument / FBXDocument API for compatibility.
2024-03-30 23:45:22 -07:00
A Thousand Ships 2508c2e309
[Doc] Document loading behavior with relative paths 2024-03-30 13:33:49 +01:00
Hugo Locurcio e334bf6df4
Tweak OpenXR alert to mention WMR only on Windows
WMR isn't supported on non-Windows platforms, so there's no point
in mentioning it in the error message as it's not a possible
cause for OpenXR not initializing.
2024-03-28 06:17:54 +01:00
Jakub Mateusz Marcowski c43eab55a4
embree: Update to 4.3.1 2024-03-27 22:10:35 +01:00
Rémi Verschelde aed1775cf2
Merge pull request #89883 from timothyqiu/replication-pin
Improve replication editor's pin button
2024-03-26 13:45:42 +01:00
Rémi Verschelde 60d37f1d49
Merge pull request #89843 from kleonc/csharp-transform3d-interpolate-with-first-scale-then-rotate
[C#] Fix `Transform3D.InterpolateWith` applying rotation before scale
2024-03-26 13:45:39 +01:00
Haoyu Qiu 8cfded5934 Improve replication editor's pin button
- When unpressed, only hide the editor if MultiplayerSynchronizer is not
  selected.
- Add tooltip text.
2024-03-25 23:12:26 +08:00
Rémi Verschelde 195a2a479a Merge pull request #89666 from bruvzg/emb_os
[Font] Apply oversampling to the "embolden" strength.
2024-03-25 13:15:59 +01:00
Rémi Verschelde c41da69ed7
Merge pull request #89863 from ppphp/resource_format_override
Add `override` mark to ResourceFormat class
2024-03-25 11:18:57 +01:00
ppphp d4e1a74efb Add 'override' mark to ResourceFormat class 2024-03-25 04:06:34 +08:00
A Thousand Ships 4933fa8bf5
[Buildsystem] Fix encoding when reading files 2024-03-24 18:02:56 +01:00
kleonc e2ed63b313 [C#] Fix Transform3D.InterpolateWith applying rotation before scale 2024-03-24 09:31:20 +01:00
Haoyu Qiu 6feb43200b Fix node config warning not updating for Multiplayer{Spawner,Synchronizer} 2024-03-24 13:53:09 +08:00
Rémi Verschelde 3895639f72
Merge pull request #89756 from zaevi/dotnet/fix_null_array
C#: Fix errors when creating `Variant` from null array
2024-03-24 01:23:18 +01:00
Rémi Verschelde c3370023b6
Merge pull request #89692 from Scony/baking-crash-prevention
Add navigation baking crash prevention mechanism
2024-03-24 01:21:56 +01:00
Rémi Verschelde 1c2ff17f12
Merge pull request #89652 from invino4/patch-1
Add property `UsingGodotNETSdk` to Godot.NET.Sdk
2024-03-24 01:20:29 +01:00
Rémi Verschelde 7ff6d8cd32
Merge pull request #89547 from Repiteo/dotnet/invariant-strings
C#: Implement `InvariantCulture` on Variant strings
2024-03-24 01:17:55 +01:00
Rémi Verschelde d121873d01
Merge pull request #89542 from aaronfranke/convert-hull-to-mesh-func
GLTF: Extract converting hull points to mesh to a helper function
2024-03-24 01:17:15 +01:00
Rémi Verschelde 8a65dd3b9e
Merge pull request #89532 from lyuma/fix_fbxdocument_binding
Fix method bindings in FBXDocument by making them virtual in GLTFDocument.
2024-03-24 01:17:02 +01:00
Rémi Verschelde 48cf825839
Merge pull request #89451 from AThousandShips/emit_fix
[Core] Disconnect one-shot signals before calling callbacks
2024-03-24 01:15:52 +01:00
Rémi Verschelde cd4e4c0fcc
Merge pull request #89111 from AThousandShips/vec_use
Use `Vector*` component-wise `min/max/clamp` functions where applicable
2024-03-24 01:14:51 +01:00
Pawel Lampe 64fc9e2156 Add navigation baking crash prevention mechanism 2024-03-23 22:20:00 +01:00
Zae 833a03fbf6 C#: Fix errors when creating Variant from null array 2024-03-21 23:55:44 +08:00
A Thousand Ships db455e5bee
[Core] Disconnect one-shot signals before calling callbacks
This prevents infinite recursion with one-shot connections emitting
themselves
2024-03-20 20:24:44 +01:00
A Thousand Ships 79ba22a73f
Use Vector* component-wise min/max/clamp functions where applicable 2024-03-20 13:47:42 +01:00
VolTer de8b6f7a3c Add editor settings for autocompletion with NodePath and StringName 2024-03-19 17:23:54 +02:00
bruvzg f6a532d501
[Font] Apply oversampling to the "embolden" strength. 2024-03-19 08:50:01 +02:00
Danil Alexeev c45242578a
GDScript: Fix for expression is highlighted as type 2024-03-18 22:33:08 +03:00
Jason Hunter bdbd9995f8
Add property UsingGodotNETSdk to Godot.NET.Sdk
The Godot.NET.Sdk (for C# use) should define the property `UsingGodotNETSdk` in its [SDK.props](a07dd0d6a5/modules/mono/editor/Godot.NET.Sdk/Godot.NET.Sdk/Sdk/Sdk.props).  

## Why
Defining this property allows shared build configuration (e.g. Directory.Build.targets or other imported msbuild files) to detect deterministically when they are operating within the scope of a project controlled by Godot.NET.Sdk.  This enables shared build configuration that may span many different projects within a folder to have Godot.NET.Sdk-specific configuration that only applies to Godot projects.

## Why named UsingGodotNETSdk
This naming scheme is common practice in Microsoft Dotnet SDKs.  For example, the property `UsingMicrosoftNETSdk` is defined by the default SDK, `UsingMicrosoftTraversalSdk` is defined by [Microsoft.Build.Traversal](363532de5b/src/Traversal/Sdk/Sdk.props (L10)), `UsingMicrosoftNoTargetsSdk` by [Microsoft.Build.NoTargets](363532de5b/src/NoTargets/Sdk/Sdk.props (L10)), and so on.  The property `UsingMicrosoftNETSdk` is even used in the implementation of Godot.NET.Sdk for conditional logic of the type predicted here.

Note that these "Using*" properties are _additive_ in the sense that more than one can be defined for a given project (as SDKs can effectively be built upon other SDKs, using them as components).  So, it is normal and appropriate for both `UsingMicrosoftNETSdk` and `UsingGodotNETSdk` to be simultaneously defined within the same project.
2024-03-18 09:48:52 -07:00
Thaddeus Crews 300aa202c8
C#: Implement InvariantCulture on Variant strings 2024-03-15 19:43:00 -05:00
Aaron Franke 3604b57ba3
GLTF: Extract converting hull points to mesh to a helper function 2024-03-15 15:22:48 -07:00
Diogo Costa 935ea10f3a Fixed enum autocompletion for core classes (Issue #88858)
Minor fix consisted in the use of [[fallthrough]] macro
2024-03-15 20:20:36 +00:00
Lyuma 8232759100 Fix method bindings in FBXDocument by making them virtual in GLTFDocument. 2024-03-15 12:47:02 -07:00
Rémi Verschelde 9c2db0c035
Merge pull request #89495 from akien-mga/pcre2-fix-sljit-compilation-ioscross
pcre2: Remove unused sjlit files after last update
2024-03-15 10:40:10 +01:00
Rémi Verschelde 739fcd1b8c
pcre2: Remove unused sjlit files after last update
Follow-up to #89371.
2024-03-15 09:38:45 +01:00
smix8 5d5e85fe07 Add NavigationObstacle options to affect and carve navigation mesh
Adds NavigationObstacle options to affect and carve navigation mesh.
2024-03-15 01:45:44 +01:00
Rémi Verschelde 3e773b9167
Merge pull request #89484 from dalexeev/update-gds-doc
Update `@GDScript` documentation
2024-03-14 22:35:37 +01:00
Rémi Verschelde 36b33d9b72
Merge pull request #89460 from dsnopek/openxr-composition-layers-multiple
OpenXR: Allow GDExtensions to provide multiple, ordered composition layers
2024-03-14 22:35:08 +01:00
Rémi Verschelde 21b33c5ea4
Merge pull request #89418 from lyuma/gltf_vertex_packing
Only store vertices referenced by the indices per surface in the glTF importer
2024-03-14 22:34:52 +01:00
Rémi Verschelde 37b08a3724
Merge pull request #89356 from lyuma/vsk-gltf-sparse-accessors-4.3
GLTF export: Use sparse accessors for morph targets
2024-03-14 22:34:47 +01:00
Rémi Verschelde 453485aede
Merge pull request #89270 from Repiteo/enforce-typename-in-templates
Enforce template syntax `typename` over `class`
2024-03-14 22:34:37 +01:00
Danil Alexeev 0c48845247
Update @GDScript documentation 2024-03-14 17:51:41 +03:00
Lyuma 77f6e35a8d glTF importer now only stores vertices referenced by the indices per surface. 2024-03-13 18:34:55 -07:00
David Snopek 308a6a4734 OpenXR: Allow GDExtensions to provide multiple, ordered composition layers
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2024-03-13 17:53:15 -05:00
Rémi Verschelde da945ce626
Merge pull request #89444 from AThousandShips/article_fix
[Doc] Fix some incorrect uses of `a/an`
2024-03-13 22:16:50 +01:00
Rémi Verschelde a1c476f9d7
Merge pull request #87680 from AThousandShips/the_angry_count
Add methods to get argument count of methods
2024-03-13 22:16:43 +01:00
A Thousand Ships 24c9d442e9
[Doc] Fix some incorrect uses of a/an 2024-03-13 21:20:28 +01:00
Adam Scott 9f605e0187
Fix GCC build failure 2024-03-13 15:02:17 -04:00
Rémi Verschelde 48b650c254
Merge pull request #89422 from Repiteo/clang-tidy-NULL
clang-tidy: Enforce `modernize-use-nullptr`
2024-03-13 18:41:39 +01:00
Rémi Verschelde 0478998148
Merge pull request #89414 from bruvzg/update_icu_msdfgen
Update ICU and msdfgen.
2024-03-13 18:41:35 +01:00
Rémi Verschelde 6c482fad89
Merge pull request #89207 from bruvzg/_ts_req
[TextServer] Use GDVIRTUAL_REQUIRED_CALL for required extensions methods, update extension docs.
2024-03-13 18:41:28 +01:00
Rémi Verschelde 8620f7356b
Merge pull request #83037 from dalexeev/gds-fix-warning-ignore-issues
GDScript: Fix `@warning_ignore` annotation issues
2024-03-13 18:41:21 +01:00
Rémi Verschelde 6ba0179682
Merge pull request #64488 from reduz/interactive-music-take3
Add interactive music support
2024-03-13 14:32:21 +01:00
bruvzg 3bb5047db3
[TextServer] Use GDVIRTUAL_REQUIRED_CALL for required extensions methods, update extension docs. 2024-03-13 12:57:39 +02:00
bruvzg 0d02568ff8
Update ICU and msdfgen. 2024-03-13 09:12:50 +02:00
Juan Linietsky 43b78cd2ad Add interactive music support
This PR adds 3 types of audio streams used for interactive music support.

* AudioStreamInteractive: Allows setting several sub-streams and transition between them with many options.
* AudioStreamPlaylist: Allows sequential or shuffled playback of a list of streams.
* AudioStreamSynchronized: Allows synchronous playback of several streams, the volume of each can be controlled.

Theese three stream types can be combined to create complex, layered interactive music and transitions between them, similar to software such as WWise.
2024-03-12 21:54:59 +01:00
Danil Alexeev ef1909fca3
GDScript: Fix @warning_ignore annotation issues 2024-03-12 19:00:06 +03:00
Thaddeus Crews 3b3e2374c9
clang-tidy: Enforce modernize-use-nullptr 2024-03-12 10:59:53 -05:00
Rémi Verschelde 48ad83a4e7
Merge pull request #88827 from adamscott/add-browse-folder-icon
Add browse folder and browse file icons
2024-03-12 16:28:03 +01:00
Adam Scott 44d3ce2c11
Add browse folder and browse file icons 2024-03-12 09:57:59 -04:00
Rémi Verschelde 061e0c758d
Merge pull request #89395 from bruvzg/rtl_ts_img_range
[RTL] Use "visible characters" property for inline object visibility
2024-03-12 14:23:03 +01:00
Lyuma db2c9571bb glTF export: morph targets are relative, so use zero as reference 2024-03-12 02:39:15 -07:00
K. S. Ernest (iFire) Lee 1e63a2a132 Update buffer view target handling, encode sparse accessors as vec3.
Co-authored-by: Lyuma <xn.lyuma@gmail.com>
2024-03-12 02:39:00 -07:00
bruvzg 433de7f1a8
[RTL] Use "visible characters" property for inline object visibility 2024-03-12 11:28:45 +02:00
Rémi Verschelde b1b0a526d8
Merge pull request #89393 from Repiteo/retire-subprocess_main
SCons: Remove `run_in_subprocess` & `subprocess_main` dependencies
2024-03-11 23:48:21 +01:00
Rémi Verschelde d5856f864f
Merge pull request #89383 from bruvzg/font_no_bitmaps
[Font] Add option to disable embedded bitmaps loading.
2024-03-11 23:48:17 +01:00
Thaddeus Crews 5a6e3cbcb0
SCons: Remove run_in_subprocess dependency 2024-03-11 13:20:09 -05:00
bruvzg 911fa38d3a
[Font] Add option to disable embedded bitmaps loading. 2024-03-11 16:31:10 +02:00
Rémi Verschelde f040a351c2
Merge pull request #89381 from aaronfranke/disable-3d
Disable all 3D nodes, physics, and resources when compiling without 3D
2024-03-11 14:02:57 +01:00
Jakub Marcowski dab95993c6
pcre2: Update to 10.43 2024-03-11 11:42:02 +01:00
Aaron Franke 6aac3e4a16 Disable all 3D nodes, physics, and resources when compiling without 3D 2024-03-11 01:00:55 -07:00
Rémi Verschelde 53701a0234
Merge pull request #89361 from Repiteo/scons/with-statement
SCons: Ensure `with` statement where applicable
2024-03-10 21:13:18 +01:00
Thaddeus Crews fb299d0fb1
SCons: Ensure with statement where applicable 2024-03-10 12:57:57 -05:00
Lyuma fd2aa564ab gltf export: Remove snapping and fix validation
Round min/max correctly in accessors
Include correct target in vertex and indices bufferViews
Avoid use of Math::snapped
Normalize vertex weights.
2024-03-10 06:07:46 -07:00