Commit Graph

9062 Commits

Author SHA1 Message Date
Pedro J. Estébanez 664b2502d2
Fix warning in MSVC
(cherry picked from commit fe8c217b7c)
2024-02-27 16:40:17 +01:00
Michael Wörner e1421715e8
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.

(cherry picked from commit a4db4ae658)
2024-02-27 16:40:16 +01:00
Aaron Franke 72f00333dd
[4.1] Fix crash when importing a GLTF file with a skeleton as the root 2024-02-04 20:31:04 -06:00
Fabio Alessandrelli e11165d7f1 [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.

(cherry picked from commit 4826c14d20)
2024-01-24 18:20:38 +01:00
LunaticInAHat afac25a3f8 Support unspecified linear size in DDS files
Not all exporters choose to populate that (optional) header field.

(cherry picked from commit a344d7f906)
2024-01-24 18:19:48 +01:00
Lyuma a4cabd7497 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.

(cherry picked from commit fea4165ca8)
2024-01-24 18:04:25 +01:00
BlueCube3310 bf2b98b801 Fix BasisUniversal ETC RA_AS_RG transcoding
(cherry picked from commit 51ad937532)
2024-01-24 18:00:49 +01:00
Haoyu Qiu 32a3b2bf9c 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.

(cherry picked from commit 08b1354b36)
2024-01-23 20:22:00 +01:00
Ellen Poe 97b081b45f Only warn once about OGG seeking issues
(cherry picked from commit 729d270a25)
2024-01-23 20:22:00 +01:00
Bastiaan Olij 140f5a6a5a Compile OpenXR into MacOS build
(cherry picked from commit a9c8feeba0)
2024-01-23 19:15:03 +01:00
smix8 b0179bba74 Fix NavigationObstacle height
Fixes NavigationObstacle height.

(cherry picked from commit 3f26191d16)
2024-01-23 19:15:03 +01:00
smix8 0cf4e79b48 Fix NavigationObstacle elevation
FixesNavigationObstacle elevation.

(cherry picked from commit fc4cc27e66)
2024-01-23 19:15:03 +01:00
jsjtxietian cf61f5e938 Hide CSGShape's debug_collision_shape when it is invisible
(cherry picked from commit 173e2c7f29)
2024-01-23 17:33:01 +01:00
crazyStewie 222cba2aab Implemented {project} placeholder for external dotnet editor
Implements the {project} placeholder, available when setting an external editor
in the project settings, via Editor > Editor Settings > Text Editor > External
for the c# external editor, under Editor > Editor Settings > Dotnet > Editor,

This allows passing the project folder as a command line argument when using a
custom external editor that isn't one of the available options.

Fixes #81845

(cherry picked from commit c01a47867b)
2024-01-23 16:03:16 +01:00
Yuri Sizov 65f5865d11 Bump version to 4.1.4-rc
This also fixes a reference issue in the changelog for 4.1.3.
2023-11-01 20:59:38 +01:00
Rémi Verschelde 56feab3258
Bump version to 4.1.3-rc
Should have been done before merging #83901, oops.
2023-10-25 14:29:42 +02:00
Rémi Verschelde 93becd4d2e SCons: Use CXXFLAGS to disable exceptions, it's only for C++
Following discussion in https://github.com/godotengine/godot-cpp/pull/1216.

(cherry picked from commit 3bfcbe7946)
2023-10-24 20:02:24 +02:00
Ryan Roden-Corrent c93d74aca0 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>
(cherry picked from commit 7e64c6c399)
2023-10-24 19:51:53 +02:00
Matthew Borkowski 34811c1f1e Fix `GDScriptCache::get_full_script` eating parsing errors because of early exit
Fixes #75545.

(cherry picked from commit 2d262c072b)
2023-10-24 19:51:53 +02:00
Daniel Castellanos de6e7c070c 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.

(cherry picked from commit 771ec958af)
2023-10-24 19:50:22 +02:00
朱力 11f9e35c06 Fixed an error in Vector3.BezierDerivative in mono module
(cherry picked from commit bceba81b54)
2023-10-24 19:50:22 +02:00
0x4448 ced93eb2e5 Omit quotes from completion if triggered with quote
Typing a single or double quote in an external editor triggers
auto-completion. The returned CompletionItem should not include
quotes since they're already in the editor.

CompletionParams was missing context in to_json() and this is
required to detect whether a quote was typed.

(cherry picked from commit 7ea4247c3d)
2023-10-24 18:17:02 +02:00
ocean (they/them) 2beec2b00f GDScript: Add check for `super()` methods not being implemented
(cherry picked from commit 729c9b4d4b)
2023-10-24 16:52:59 +02:00
Chia-Hsiang Cheng 9e7652c5db Ensure the visibility is updated when entering the tree
(cherry picked from commit 3a3ebbf4c9)
2023-10-24 16:07:42 +02:00
BlueCube3310 165c49066b Fix grayscale dds loading
(cherry picked from commit cbbcaa31d5)
2023-10-24 16:06:29 +02:00
Fabio Alessandrelli 560c52cef2 [MP] Fix watch properties not being correctly removed
(cherry picked from commit 3860f2e366)
2023-10-24 16:05:00 +02:00
azuloo 3de5e5d4d4 Fixes LSP connection error when launched in a separate thread
(cherry picked from commit a5710d468b)
2023-10-24 16:04:59 +02:00
pidogs 67f5ec2f2f Make CSGShape follow curve's tilt in Path mode
Fixes #65634.

(cherry picked from commit f476b74ecf)
2023-10-19 21:49:00 +02:00
Danil Alexeev d5a11e17b8 GDScript: Check `get_node()` shorthand in static functions
(cherry picked from commit 0f27c4ad80)
2023-10-19 21:49:00 +02:00
mandryskowski 666460448d Clarify the behaviour of CSGMesh3D using ArrayMesh
(cherry picked from commit 378f835a9c)
2023-10-19 21:45:12 +02:00
Septian bede7fa0d8 Fix `get_method` from named lambda
(cherry picked from commit 793cc080cb)
2023-10-19 21:45:12 +02:00
ajreckof 3d0c29cc0a Fix completion option location not found
(cherry picked from commit 4b724c9252)
2023-10-19 21:21:54 +02:00
smix8 d0b652932e Fix pathfinding funnel adding unwanted point
Fixes pathfinding funnel adding unwanted point due to precision issues.

(cherry picked from commit c51e264446)
2023-10-19 21:21:02 +02:00
Raul Santos 85ab269796 C#: Fix line in OpenInExternalEditor
(cherry picked from commit 132a1daf1a)
2023-10-19 21:21:02 +02:00
Rémi Verschelde aae20e5b10
Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>

(cherry picked from commit faaf27f284)
2023-10-03 20:45:35 +02:00
Fabio Alessandrelli 52e2bde16f
[Crypto] Fix generate_random_bytes for large chunks
Properly handle mbedtls errors, ensure we don't ask more bytes than
allowed for each iteration.

(cherry picked from commit e0140601a5)
2023-10-03 20:45:35 +02:00
Nomad1 33b965367c
Fixed VS 2022 Mac compatibility
Visual Studio 2022 on Mac marks the project as invalid if the project Guid is set. Easiest way to fix it is to remove outdated 'EnableGodotProjectTypeGuid' and other Guid references

(cherry picked from commit a119365d4e)
2023-10-03 20:45:35 +02:00
Rémi Verschelde 089ecc0a82
Merge pull request #82057 from YuriSizov/4.1-cherrypicks
Cherry-picks for the 4.1 branch (future 4.1.2) - 2nd batch
2023-09-21 20:09:13 +02:00
Ben Rog-Wilhelm f8cf6eb567 Fix NavMesh `map_update_id` returning 0 results in errors
(cherry picked from commit d0564f2466)
2023-09-21 15:41:49 +02:00
Fabio Alessandrelli dabd733c4c [ENet] Properly set transfer flags when using custom channels
(cherry picked from commit b96d247ba2)
2023-09-21 15:28:24 +02:00
Sami Kalliomäki c26722badf Do not call Array default constructor when not necessary.
This fixes a bug where Array would get registered twice with the
DisposablesTracker causing an exception on shutdown.

Fixes #81231

(cherry picked from commit 43a6748dfd)
2023-09-21 15:28:24 +02:00
Haoyu Qiu cdc26082aa Make blend file importer warnings translatable
(cherry picked from commit b35a847109)
2023-09-21 15:28:24 +02:00
Markus Sauermann 45718ef635 Fix superfluous `"` in error message
(cherry picked from commit fa8fec2cc1)
2023-09-21 15:14:04 +02:00
ocean (they/them) 0b38cf8a8d Add error message when a GDScript resource fails to load.
Currently, GDScripts who are only loaded through `ResourceLoader::load()`,
like Autoloads, do not have a pathway to announce there is an error in their
code. This contributes to significant confusion in error projects when
autoloads are involved. At least partially closes #78230.

(cherry picked from commit cca57171c1)
2023-09-21 15:12:58 +02:00
Raul Santos a07b83a2dc C#: Hide hostfxr not found error
Godot tries to find hostfxr in two locations, the method that tries
to retrieve the location printed an error when it was not found.
So when the first location fails it was printing an error, even if
the second location succeeded, and users were left confused thinking
there was something wrong with their installation.

Now the error will only be printed when stdout verbose is enabled.
Users will still get an error later if hostfxr is not found in any
of the two locations.

(cherry picked from commit 394c0eb225)
2023-09-21 14:57:13 +02:00
Dario 29bcc51734 Add half-pixel offset to lightmapper rasterization.
Add half-pixel offset to lightmapper to fix issues where the ray would be generated from the wrong spot corresponding to the pixel and causing light leaks. Fixes Issue #69126.

(cherry picked from commit ddc3126bbf)
2023-09-21 14:57:13 +02:00
Danil Alexeev 102f93b8b8 GDScript: Fix conflict between property and group names
(cherry picked from commit bf8f996212)
2023-09-21 14:09:19 +02:00
Rémi Verschelde 269b115d9c SCons: Disable C++ exception handling
Upon investigating the extremely slow MSVC build times in #80513, I noticed
that while Godot policy is to never use exceptions, we weren't enforcing it
with compiler flags, and thus still included exception handling code and
stack unwinding.

This is wasteful on multiple aspects:

- Binary size: Around 20% binary size reduction with exceptions disabled
  for both MSVC and GCC binaries.
- Compile time:
  * More than 50% build time reduction with MSVC.
  * 10% to 25% build time reduction with GCC + LTO.
- Performance: Possibly, needs to be benchmarked.

Since users may want to re-enable exceptions in their own thirdparty code
or the libraries they compile with Godot, this behavior can be toggled with
the `disable_exceptions` SCons option, which defaults to true.

(cherry picked from commit 3907e53ff6)
2023-09-20 22:44:05 +02:00
Rémi Verschelde 8be838481d Allow unbundling OpenXR (for Linux distros)
Copy XrMatrix4x4f_CreateProjectionFov to our OpenXRUtil, instead of relying
on a private header.

(cherry picked from commit 34a07b81ae)
2023-09-20 22:44:05 +02:00
William Edwards 9332a2b387 Fix dumping of signal API parameters
(cherry picked from commit 188132884d)
2023-09-20 22:44:04 +02:00