1
0
Fork 0
Commit Graph

12754 Commits

Author SHA1 Message Date
Rémi Verschelde 06a1e5a06b
Merge pull request #103709 from YYF233333/gds_call_state
Remove dead code in GDScript function `CallState`
2025-05-13 01:04:26 +02:00
Youngmin Koo b99baa38f1 C#: Load assemblies directly from PCK on Android
Assemblies are now loaded directly from the PCK (`res://`) instead of
a cache directory. This prevents runtime failures that occurred when
the OS cleared cached files (e.g., under low storage), ensuring
the required assemblies are always available.
2025-05-12 19:31:44 +09:00
Yyf2333 21fc5cce5c Use LocalVector<Glyph> to reduce reallocation. 2025-05-12 18:11:18 +08:00
Juan Pablo Arce 3d7c4b8012 Fix 'Script class can only be set together with base class name' error with .NET typed collections upon rebuild 2025-05-10 03:09:39 -03:00
Thaddeus Crews 3c90a0e913
Merge pull request #106110 from BlueCube3310/basisu-hdr-quality
BasisU: Configure HDR quality from the settings
2025-05-09 11:29:28 -05:00
Thaddeus Crews 43eeed5d54
Merge pull request #105594 from smix8/navlink_3d_gizmo_plugin
Move `NavigationLink3DGizmoPlugin` to `navigation_3d` module.
2025-05-09 11:29:27 -05:00
Thaddeus Crews c85d6b3078
Merge pull request #103276 from BlueCube3310/bcdec-alignment-fix
bcdec: Fix decompressing mipmaps of non-power of 2 textures
2025-05-09 11:29:25 -05:00
Thaddeus Crews 461c45f2a1
Merge pull request #106188 from smix8/nav2d_editorplugins
Move 2d navigation related editor plugins to `navigation_2d` module.
2025-05-09 11:29:20 -05:00
Thaddeus Crews 0bf9d88797
Merge pull request #106167 from Faless/mbedtls/fix_enable_threading
mbedTLS: Fix concurrency issues with TLS
2025-05-09 11:29:17 -05:00
Yufeng Ying 5484ec0be2 Remove deadcode in GDScript function CallState. 2025-05-09 19:07:50 +08:00
BlueCube3310 9820d04a21 etcpak: Fix decompressing non-power of 2 mipmaps 2025-05-09 10:34:43 +02:00
smix8 cc1b51e8a2 Move 2d navigation related editor plugins to navigation_2d module
Moves 2d navigation related editor plugins to navigation_2d module.
2025-05-08 23:59:13 +02:00
BlueCube3310 8402a1d0bd bcdec: Fix decompressing mipmaps of non-power-of-2 textures 2025-05-08 23:39:47 +02:00
smix8 e9a8c7e858 Move NavigationLink3DGizmoPlugin to navigation_3d module
Moves NavigationLink3DGizmoPlugin to navigation_3d module. Adds stub NavigationLink3DEditorPlugin.
2025-05-08 22:28:58 +02:00
kobewi 9e0203a58a Don't synchronize scripts with errors 2025-05-08 17:29:15 +02:00
EyalZusiman 2ebfeef4a8 C#: use stackalloc to create the pivot arrays in Projection.Inverse 2025-05-08 18:27:32 +03:00
Thaddeus Crews bd619b8d32
Merge pull request #106133 from fLindahl/stringname_movable_dict_fix
[.NET] Avoid heap alloc when using StringNames as key in a Dictionary
2025-05-08 07:19:38 -05:00
Thaddeus Crews e36632a71d
Merge pull request #105588 from smix8/navobstacle_3d_plugin
Move `NavigationObstacle3DEditorPlugin` to `navigation_3d` module
2025-05-08 07:19:38 -05:00
Thaddeus Crews 288822e330
Merge pull request #105570 from kroketio/texture-extension-mipmaps
RenderingDevice: Pass mipmap count to `texture_create_from_extension()`
2025-05-08 07:19:16 -05:00
Fabio Alessandrelli 2c789788c0 mbedTLS: Fix concurrency issues with TLS
When we first integrated mbedTLS, we decided not to enable
MBEDTLS_THREADING_C (which adds mutex locking to calls modifying the
state), and instead to simply create separate contexts ("states") for
each connection.

This worked fine until recently.
Sadly, mbedTLS 3 added a global state for the new PSA crypto
functionalities (which are required to support TLSv1.3).
This results in TLSv1.3 connections to access and modify the global
state concurrently when running in threads.

This commit enables MBEDTLS_THREADING_C, and MBEDTLS_THREADING_C_ALT to
provide a generic Godot implementation using the engine Mutex class.
2025-05-08 11:45:00 +02:00
Fredrik Lindahl 01056f369a [.NET] Avoid heap allocation when using StringNames as key in a Collection.Dictionary.
Changed StringName GetHashCode to call godot_string_name.GetHashCode instead of godot_string_name's (which was not overridden) as this otherwise leads to heap allocations when e.g. calling the indexer in a Dictionary with `StringName` type as Key.
2025-05-08 08:41:22 +02:00
Thaddeus Crews e9ddf57791
Merge pull request #105593 from smix8/navregion_3d_gizmo_plugin
Move `NavigationRegion3DGizmoPlugin` to `navigation_3d` module.
2025-05-07 12:48:32 -05:00
Thaddeus Crews 5c0d33afd7
Merge pull request #96233 from aaronp64/textserver_inline
Remove `_FORCE_INLINE_` from `TextServer*::_ensure*` methods
2025-05-07 12:48:31 -05:00
Thaddeus Crews aa1ca2b244
Merge pull request #93517 from Repiteo/core/nodiscard-strings
Core: Add `[[nodiscard]]` to string-like classes/structs
2025-05-07 12:48:27 -05:00
Thaddeus Crews 6d3f91896d
Merge pull request #104729 from Meorge/bugfix/warning-grammar-fixes
Fix a few GDScript warning messages for grammar and consistency
2025-05-07 12:48:25 -05:00
Thaddeus Crews affbfa5b4e
Merge pull request #89746 from KoBeWi/NOTification
Remove `NOTIFICATION_ENTER_TREE` when `NOTIFICATION_THEME_CHANGED` is used
2025-05-07 12:48:21 -05:00
Thaddeus Crews eb39839a42
Merge pull request #106129 from kitbdev/fix-solo-tests
Fix tests that fail when alone
2025-05-07 12:48:21 -05:00
Sander 6ae50cad17 RenderingDevice: introduce parameter 'mipmaps' for texture_create_from_extension() 2025-05-07 15:15:55 +03:00
Malcolm Anderson d8db03e31a Fix a few GDScript warning messages for grammar and consistency
Regenerate test results

Improve warning message for `INT_AS_ENUM_WITHOUT_CAST`

Improve `REDUNDANT_AWAIT` message and regenerate tests

Allow warning message for UNASSIGNED_VARIABLE_OP_ASSIGN to display specific operator

Remove "being" from some messages to make them consistent and clearer

Update expected test results

Use Variant::get_operator_name for determining string representation of operator instead of big switch-case

Update tests

Update modules/gdscript/gdscript_warning.cpp

Co-authored-by: Danil Alexeev <dalexeev12@yandex.ru>

Update tests... again
2025-05-06 20:28:01 -07:00
aaronp64 91931606f7 Remove _FORCE_INLINE_ from TextServer*::_ensure* methods
Reduces binary size by ~1.5 MB when compiling with TextServerAdvanced, and ~800 KB for TextServerFallback
2025-05-06 17:49:38 -04:00
smix8 3307be5038 Move NavigationObstacle3DEditorPlugin to navigation_3d module
Moves NavigationObstacle3DEditorPlugin to navigation_3d module.
2025-05-06 20:50:28 +02:00
smix8 63bd35e7cf Move NavigationRegion3DGizmoPlugin to navigation_3d module
Moves NavigationRegion3DGizmoPlugin to navigation_3d module.
2025-05-06 20:49:42 +02:00
kit 6d56d2d05e Fix tests that fail when alone 2025-05-06 13:48:16 -04:00
Thaddeus Crews 579feb387c
Core: Add `[[nodiscard]]` to string-like classes 2025-05-06 12:23:41 -05:00
Thaddeus Crews 75253b0815
Merge pull request #105592 from smix8/navregion_3d_plugin
Rename `NavigationMeshEditor` to `NavigationRegion3DEditor`
2025-05-06 08:38:07 -05:00
Thaddeus Crews fd1168620f
Merge pull request #105718 from aaronfranke/nav-const-caps
Capitalize global navigation constants
2025-05-06 08:38:07 -05:00
Thaddeus Crews bd22587170
Merge pull request #106093 from KoBeWi/deprecated_forever
Remove registration of deprecated classes
2025-05-06 08:38:05 -05:00
Thaddeus Crews c4de8ef825
Merge pull request #105765 from smix8/navlink_iteration_id
Add function to get navigation link iteration id from NavigationServer
2025-05-06 08:38:00 -05:00
kobewi d32d2e9b51 Remove NOTIFICATION_ENTER_TREE when NOTIFICATION_THEME_CHANGED is used 2025-05-06 15:28:03 +02:00
Mikael Hermansson f539d0a447 Remove emitting of error in `JoltBody3D::_exit_all_areas` 2025-05-06 11:36:22 +02:00
BlueCube3310 894d3939cd BasisU: Configure HDR quality from the settings 2025-05-05 23:56:24 +02:00
smix8 01e85c49e9 Rename NavigationMeshEditor to NavigationRegion3DEditor
Renames NavigationMeshEditor to NavigationRegion3DEditor to better describe its actual purpose.
2025-05-05 22:32:14 +02:00
Aaron Franke 783728fcb4
Capitalize global navigation constants 2025-05-05 12:08:15 -07:00
kobewi 242293c451 Remove registration of deprecated classes 2025-05-05 20:16:50 +02:00
Thaddeus Crews 5bc01f2994
Merge pull request #105080 from beicause/basisu-ktx2-settings
BasisU: Use KTX2 format and add import options to configure encoder
2025-05-05 11:24:20 -05:00
Thaddeus Crews e939aefe2f
Merge pull request #105748 from mihe/jolt/body-pointer
Remove no-op locking in Jolt Physics module
2025-05-05 11:24:10 -05:00
BlueCube3310 2b8fcca343 DDS: Load BGRA4 textures directly as RGBA4 2025-05-03 16:02:29 +02:00
LuoZhihao 237597b01f BasisU: Use KTX2 format and add import options to configure encoder 2025-05-03 01:45:38 +08:00
Danil Alexeev 2b30f23595
GDScript: Fix `Callable` call error text 2025-05-02 18:30:35 +03:00
Thaddeus Crews 1cf573f44d
Merge pull request #105887 from Repiteo/core/modernize-headers
Core: Modernize C headers with C++ equivalents
2025-05-02 09:25:29 -05:00
Thaddeus Crews acf38b2292
Merge pull request #76560 from aaronfranke/node-set-string-name
Change Node `set_name` to use StringName, slightly improves performance
2025-05-02 09:25:25 -05:00
Thaddeus Crews 01fc9aee6c
Core: Modernize C headers with C++ equivalents 2025-05-02 08:23:01 -05:00
Daniel Kinsman a0cc41b5ed
Use libjpeg-turbo for improved jpg compatibility and speed
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-05-02 11:47:56 +02:00
Aaron Franke 067704f1cd
Add a keyword for abstract classes in GDScript
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2025-05-02 00:03:04 -07:00
Aaron Franke a404b668a1
Change Node set_name to use StringName 2025-05-01 15:15:19 -07:00
Lukas Tenbrink 91362a61da Simplify `StringName` to `bool` conversions.
Move `mutex` include of `string_name.h` to `string_name.cpp`.
2025-04-30 16:59:34 +02:00
Thaddeus Crews f4f1471b57
Merge pull request #105910 from lawnjelly/global_get_fast4
Add `GLOBAL_GET` cached macros.
2025-04-30 09:18:44 -05:00
Thaddeus Crews 61d90a8422
Merge pull request #103020 from Scarface1809/allow_rotating_selected_cells
Allow rotating selected cells in GridMap
2025-04-30 09:18:42 -05:00
Thaddeus Crews b2829f3256
Merge pull request #105897 from akien-mga/mingw-remove-undef-hacks
Remove WinAPI `#undef` hacks needed for mingw-std-threads
2025-04-30 09:18:42 -05:00
lawnjelly f8f350a32a Add `GLOBAL_GET` cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
Scarface1809 93a366c9e5 Allow rotating selected cells in GridMap 2025-04-30 11:46:39 +01:00
Joyless e9da0dfd30 Don't create unnecessary arrays in C# 2025-04-29 23:57:26 +01:00
Thaddeus Crews 2fd48c022a
Merge pull request #103283 from mashumafi/zip-compression-level
Add compression level support to Zip Module
2025-04-29 11:24:10 -05:00
Thaddeus Crews 83d98f02e3
Merge pull request #105415 from HolonProduction/hardcoded-braces
Autocompletion: Remove additional parenthesis from utility function options
2025-04-29 11:24:06 -05:00
Rémi Verschelde c019b76523
Remove WinAPI `#undef` hacks needed for mingw-std-threads
Instead, we rename the conflicting symbols.
2025-04-29 14:24:03 +02:00
Mikael Hermansson 2b88477efc Remove no-op locking in Jolt Physics module 2025-04-29 12:23:24 +02:00
Pāvels Nadtočajevs 6893b2b8e6
[TextServer] Fix outline size and image fonts with oversampling. 2025-04-28 19:10:56 +03:00
Thaddeus Crews c87f23ce7d
Merge pull request #89324 from KoBeWi/pandora's_can_of_worms
Allow exporting variables of type Variant
2025-04-28 10:01:33 -05:00
Thaddeus Crews 2242bf9b3d
Merge pull request #105697 from akien-mga/scons-x86_32-mfpmath-sse
SCons: Explicitly enable `-mfpmath=sse -mstackrealign` for x86_32
2025-04-28 10:01:31 -05:00
Lukas Tenbrink bfdb0f0ecf Fix various sanitizer issues. 2025-04-28 15:23:35 +02:00
Thaddeus Crews faab991792
Merge pull request #105842 from bruvzg/stack_leak
Fix GDScript stack leak.
2025-04-27 19:21:32 -05:00
Thaddeus Crews 1a2a1b07df
Merge pull request #105799 from Repiteo/scons/enum-conversion-warnings
SCons: Add enum conversion warning
2025-04-27 19:21:23 -05:00
Thaddeus Crews 3947cbe3b2
Merge pull request #104386 from Repiteo/core/cpp-math
Core: Replace C math headers with C++ equivalents
2025-04-27 19:21:22 -05:00
Thaddeus Crews 841bfbba5b
Merge pull request #105537 from RedMser/fix-get-returning-true
Fix cases where `_get` returned true erroneously
2025-04-27 19:21:21 -05:00
Thaddeus Crews 9ad16236dd
Merge pull request #105787 from zodywoolsey/fbx-runtime-fixing
Fix fbx runtime import not generating meshes properly
2025-04-27 19:21:19 -05:00
Thaddeus Crews be994d59c9
Merge pull request #103968 from Chubercik/basis_universal-1.60
basis_universal: Update to 1.60
2025-04-27 19:21:17 -05:00
Pāvels Nadtočajevs 89c55f638d
Fix GDScript stack leak. 2025-04-27 23:15:35 +03:00
zodywoolsey a54301ef75 fix fbx runtime import not generating meshes properly
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: K. S. Ernest (iFire) Lee <fire@users.noreply.github.com>
Co-authored-by: Naming-things-is-hard-btw <ahmadmhamad12331233@gmail.com>
2025-04-27 10:55:46 -06:00
Egor Nikulin 976e60ea24
Mark referenced packages in SDK as implicitly defined
Should improve package manager behavior
and fix errors in solutions using CPM.

https://github.com/NuGet/Home/issues/13529
https://github.com/dotnet/sdk/pull/43151/files#r1746148520
2025-04-27 14:00:55 +04:00
Danil Alexeev 2bacfc8b59
GDScript: Update `get_stack()`, `print_stack()`, and `print_debug()` 2025-04-26 21:10:41 +03:00
Thaddeus Crews dc9c34f0c6
SCons: Add enum conversion warning 2025-04-26 12:06:20 -05:00
smix8 b002ade3ed Add function to get navigation link iteration id from NavigationServer
Adds function to get navigation link iteration id from NavigationServer.
2025-04-25 20:59:10 +02:00
RedMser 143db328e7 Fix cases where _get returned true erroneously 2025-04-25 19:06:09 +02:00
Thaddeus Crews 7f7dd0d5e5
Merge pull request #104636 from Meorge/feat/export-syntax-error
Add specific errors for use of keywords removed in Godot 4
2025-04-25 11:36:07 -05:00
Thaddeus Crews 60726563c9
Merge pull request #105621 from Repiteo/scons/begin-decouple
SCons: Begin decoupling generation & build code
2025-04-25 11:36:04 -05:00
Thaddeus Crews e2766d4501
Merge pull request #105734 from erodozer/fix-v4l2-camerafeed-id
Fix camera feed device order on Linux
2025-04-25 11:36:00 -05:00
Thaddeus Crews ffdffe03c4
Merge pull request #101345 from akien-mga/embree-4.3.3
embree: Update to 4.4.0
2025-04-25 11:35:57 -05:00
Thaddeus Crews 5c9f93ce03
SCons: Begin decoupling generation & build code 2025-04-25 08:23:01 -05:00
Malcolm Anderson 5c662f7707 Add errors for keywords removed in Godot 4
Update modules/gdscript/gdscript_parser.cpp

Co-authored-by: Danil Alexeev <dalexeev12@yandex.ru>

Improve error message

Add tests

Add errors for other removed keywords

Remove very old keywords and improve wording of errors
2025-04-24 22:32:34 -07:00
Thaddeus Crews 28089c40c1
Merge pull request #91006 from reduz/live-backtrace
Ability to print and log script backtraces
2025-04-24 17:18:52 -05:00
Thaddeus Crews 500e0d5dc4
Merge pull request #93722 from aaronfranke/gltf-khr-node-visibility
Implement `KHR_node_visibility` in the GLTF module
2025-04-24 17:18:51 -05:00
Thaddeus Crews 71920b1d50
Merge pull request #104784 from aaronfranke/gltf-fallback-image
GLTF export: Allow using a PNG or JPEG fallback image
2025-04-24 17:18:48 -05:00
Thaddeus Crews d1d4d5f39f
Merge pull request #105711 from dsnopek/openxr-wayland-no-opengl
OpenXR: Fix building with Wayland support and `opengl3=no`
2025-04-24 17:18:48 -05:00
Thaddeus Crews 157f18745d
Merge pull request #101027 from Ivorforce/localvector-reverse
Rename `LocalVector.invert()` -> `LocalVector.reverse()` to match the `Vector`, `String` and `List` APIs.
2025-04-24 17:18:45 -05:00
erodozer 5dc4ac2bb2 linux: respect order of device list when enumerating camera feeds 2025-04-24 17:00:15 -04:00
Lukas Tenbrink d74ef8cb01 Rename `LocalVector.invert()` -> `LocalVector.reverse()` to match the `Vector`, `String` and `List` APIs. 2025-04-24 22:36:32 +02:00
reduz d1dcb40d56 Ability to print and log script backtraces
Co-authored-by: Mikael Hermansson <mikael@hermansson.io>
2025-04-24 18:54:41 +02:00
Rémi Verschelde 57640dd806
embree: Update to 4.4.0 2025-04-24 17:51:03 +02:00
David Snopek dc380f8915 OpenXR: Fix building with Wayland support and `opengl3=no` 2025-04-24 09:17:19 -05:00
Thaddeus Crews 5d697c31c1
Merge pull request #78837 from dalexeev/gds-const-array-and-dict-constructors
GDScript: Add constant `Array` and `Dictionary` constructors
2025-04-24 09:09:29 -05:00
David Snopek 1ca93726c7 OpenXR: Fix building foveation extension without Vulkan 2025-04-24 08:58:17 -05:00
Rémi Verschelde 08fa148310
SCons: Explicitly enable `-mfpmath=sse -mstackrealign` for x86_32
Passing `-msse2` doesn't seem to be sufficient to opt into SSE floating point math
instead of the less stable x87.

`-mstackrealign` also seems necessary when using SSE on x86_32.
2025-04-24 12:36:29 +02:00
Dynamic-Pistol c8fed1e1d0 Add PROPERTY_HINT_INPUT_NAME
Added PROPERTY_HINT_INPUT_NAME for StringName based off https://github.com/godotengine/godot-proposals/discussions/7559
2025-04-23 22:23:44 +02:00
Thaddeus Crews 841c29d62c
Merge pull request #104985 from Ivorforce/stringname-always-string
Always use `String` as `StringName` backing internally.
2025-04-23 12:01:27 -05:00
Lukas Tenbrink 91fe434a86 Always use `String` as `StringName` backing internally. 2025-04-23 14:57:03 +02:00
Pāvels Nadtočajevs 5b49fd4207
Selectively apply `FOCUS_ACCESSIBILITY` to the `Label`s instead of setting it by default. 2025-04-23 12:47:31 +03:00
Thaddeus Crews 72717099d2
Merge pull request #105624 from dsnopek/openxr-action-map-uid-error
OpenXR: Fix saving action map when UID is used in project settings
2025-04-22 18:25:51 -05:00
smix8 1742901ae4 Fix GridMap move selection crashing on invalid MeshLibrary item
Fixes GridMap move selection crashing on invalid MeshLibrary item.
2025-04-22 22:27:35 +02:00
Thaddeus Crews 0ed1c192e8
Merge pull request #105565 from smix8/gridmap_list
Replace GridMap legacy use of `List` with `LocalVector`
2025-04-22 10:44:32 -05:00
Thaddeus Crews 5168214c48
Merge pull request #105329 from smix8/gridmap_octant_raster
Fix GridMap OctantKey cell rasterization
2025-04-22 10:44:30 -05:00
Thaddeus Crews e49d04b72b
Merge pull request #104461 from lodetrick/action-map-ui
Editor: Replace TextEdit with EditorSpinSlider for XR Action Set Priority
2025-04-22 10:44:29 -05:00
Thaddeus Crews 6dcca1eb00
Merge pull request #102667 from BlueCube3310/betsy-its-ogre-now
Betsy: Remove OGRE aliases
2025-04-22 10:44:28 -05:00
Thaddeus Crews 1c51640a1c
Merge pull request #105563 from smix8/gridmap_get_quadrupled
Optimize GridMap rendering scenario quadruple-getters
2025-04-22 10:44:27 -05:00
Thaddeus Crews 2ffd5a3913
Merge pull request #104738 from YYF233333/cleanup_rid_owner
Use `LocalVector` in `RID_Owner::get_owned_list`
2025-04-22 10:44:25 -05:00
David Snopek 217333e7a0 OpenXR: Fix saving action map when UID is used in project settings 2025-04-22 09:28:03 -05:00
BlueCube3310 affa27d188 Betsy: Remove OGRE aliases 2025-04-22 14:54:57 +02:00
Thaddeus Crews 9f03bbf908
Merge pull request #100723 from spoxii/patch/gridmap/palette_item_cursor
Update cursor instance when calling `set_selected_palette_item`
2025-04-21 08:24:26 -05:00
Thaddeus Crews 4bd2724677
Merge pull request #105586 from smix8/gridmap_godotsphir
Remove GridMap godotsphir remarks
2025-04-21 08:24:25 -05:00
Thaddeus Crews 2a96e895e6
Merge pull request #105525 from BlueCube3310/light-probe-sh-impr
Scene shader: Improve and document SH diffuse evaluation for light probes
2025-04-21 08:24:20 -05:00
Yyf2333 1a70a06a43 Change RID_Owner::get_owned_list. 2025-04-21 01:04:27 +08:00
smix8 e2dec5146c Remove GridMap godotsphir remarks
Removes GridMap godotsphir remarks.
2025-04-20 17:13:47 +02:00
Matthieu Bucchianeri e3c215fc13 Add support for Direct3D 12 OpenXR backend.
This change adds support for running XR projects built with the `d3d12`
rendering backend. The XR backend hooks into the setup for the D3D12
render context in order to use the desired device and command queue for
submission to OpenXR. The XR backend takes care of importing the D3D12
swapchain images into the render context.

As part of this process, three issues are addressed:
- Ensuring that resource state transitions are only done on textures
  that require them.
- Enabling view instancing in the PSOs for multiview render passes.
- Addressing a bug in the D3D12 runtime where PSO creation may fail
  when front face detection is used.

Please refer to #86283 for additional discussions on the implementation
details.
2025-04-19 20:39:33 -07:00
Marcos Casagrande f05b22c53e Web: Avoid extra copy when encoding string in WebSocket _onmessage 2025-04-19 17:48:30 +02:00
smix8 aab8dd6488 Replace GridMap legacy use of List with LocalVector
Replaces GridMap legacy use of List with LocalVector.
2025-04-19 15:58:02 +02:00
BlueCube3310 5640ddd0a5 Scene shader: Improve and document SH evaluation for light probes 2025-04-19 15:08:02 +02:00
smix8 172fbe403a Optimize GridMap rendering scenario quadruple-getters
Optimizes GridMap rendering scenario quadruple-getters.
2025-04-19 13:24:26 +02:00
Thaddeus Crews 2d3bdcac35
Merge pull request #105470 from clayjohn/RID-owner-limit
Increase chunk limit for known problematic RID_Owners.
2025-04-18 12:21:30 -05:00
Thaddeus Crews 2ddd9be11f
Merge pull request #105486 from beicause/csharp-stringname-alloc-obj-free
C#: Avoid StringName allocation in `GodotObject.Free`
2025-04-18 12:21:26 -05:00
Thaddeus Crews 146e405c48
Merge pull request #105412 from bruvzg/fix_fixedsize_img_fonts
Fix fixed size image fonts incorrectly getting oversampling applied if set to native size.
2025-04-18 12:21:24 -05:00
Thaddeus Crews e61a0e8c61
Merge pull request #105344 from the-loki/master
Fix LSP not returning expected localization for API docs.
2025-04-18 12:21:23 -05:00
Logan Detrick c67736e6a7 Replace TextEdit with EditorSpinSlider for the Action Set's priority 2025-04-17 12:52:51 -07:00
smix8 39db6c1d3c Fix GridMap OctantKey cell rasterization
Fixes GridMap OctantKey cell rasterization that had octants at different sizes due to faulty integer division.
2025-04-17 17:57:34 +02:00
Thaddeus Crews 98aced4e65
Merge pull request #99768 from dsnopek/openxr-vulkan-foveated-rendering
OpenXR: Use the `XR_FB_foveation_vulkan` extension to get the density map for VRS
2025-04-17 09:14:23 -05:00
LuoZhihao b0348d0e58 C#: Avoid StringName allocation in `GodotObject.Free` 2025-04-17 20:10:34 +08:00
clayjohn 941ad15724 Increase chunk limit for known problematic RID_Owners.
The default limit is fine for most RID_Owners but 3d instances, CanvasItems, and physics bodies need a higher limit.

There is a small memory cost to increasing the limit, so it should only be done where needed.
2025-04-16 17:03:47 -07:00
Thaddeus Crews ad40939b6f
Core: Replace C math headers with C++ equivalents
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
Thaddeus Crews 0110048d46
Merge pull request #104826 from smix8/navregion_iteration_id
Add function to get navigation region iteration id from NavigationServer
2025-04-16 10:45:13 -05:00
Fredia Huya-Kouadio b28e95c8b0 Request the `XR_KHR_LOADER_INIT_EXTENSION_NAME` extension 2025-04-15 17:51:57 -07:00
Clay John dbddc9ef29
Merge pull request #105408 from bruvzg/fix_bmp_scale
Fix bitmap font scaling.
2025-04-15 12:06:20 -07:00
Thaddeus Crews df4ac6b237
Merge pull request #105200 from Monstrofil/fix-dds-mipmap-size-compressed-v2
Fix importing compressed dds textures with non-power-of-two width or height
2025-04-15 12:28:48 -05:00
Thaddeus Crews fa5dd77566
Merge pull request #105262 from raulsntos/dotnet/android-no-copy
[.NET] Add a preload hook to load .NET assemblies from the APK
2025-04-15 12:28:40 -05:00
Thaddeus Crews 2bf96fe18c
Merge pull request #105257 from smix8/navbuilder_linkpolys
Remove no longer needed link polygons from NavMapBuilder
2025-04-15 12:28:38 -05:00
smix8 2b8531d944 Add function to get navigation region iteration id from NavigationServer
Adds function to get navigation region iteration id from NavigationServer.
2025-04-15 19:17:45 +02:00
HolonProduction 3f0ff0417c Autocompletion: Remove additional brace from utility function options 2025-04-15 13:25:28 +02:00
HolonProduction 4a0e40f6ea GDScript: Do phrase level recovery for match 2025-04-15 13:00:43 +02:00
Pāvels Nadtočajevs a3943f8ad4
Fix fixed size image fonts incorrectly getting oversampling applied if set to native size. 2025-04-15 13:39:48 +03:00
Pāvels Nadtočajevs b55d3a2516
Fix bitmap font scaling. 2025-04-15 12:14:37 +03:00
HolonProduction e213737d66 LSP: Account for unicode identifiers 2025-04-15 09:51:50 +02:00
Thaddeus Crews 15ed56315a
Merge pull request #105206 from adamscott/add-webxr-singleton-check
Add singleton check before adding webxr interface
2025-04-14 19:39:53 -05:00
Thaddeus Crews 561dc6ced6
Merge pull request #104689 from Delsin-Yu/csharp-getset-alloc-perf
[.Net] Avoid unnecessary StringName allocations on not implemented virtual _Get and _Set method call
2025-04-14 19:39:53 -05:00
Thaddeus Crews e1509d533e
Merge pull request #105071 from smix8/map_changed
Make navigation maps emit map_changed directly
2025-04-14 19:39:52 -05:00
Thaddeus Crews 756053f05f
Merge pull request #105067 from smix8/navmesh_sync
Move NavigationServer navmesh sync from main() to process()
2025-04-14 19:39:51 -05:00
Thaddeus Crews bef5d1e4f8
Merge pull request #102218 from HolonProduction/dictionary-recovery
GDScript: Do phrase level recovery when parsing faulty dictionaries
2025-04-14 19:39:50 -05:00
Thaddeus Crews 6989a0897c
Merge pull request #105287 from Calinou/doc-gdscript-nan
Improve documentation on `is_nan()` and `NAN` constant
2025-04-14 19:39:49 -05:00
Thaddeus Crews af252823ac
Merge pull request #101291 from Ivorforce/stringname-to-bool
Change `StringName.operator const void *` to `explicit operator bool`.
2025-04-14 19:39:45 -05:00
Thaddeus Crews 9b6d92723d
Merge pull request #104872 from bruvzg/per_vp_os
Replace global oversampling with overrideable per-viewport oversampling.
2025-04-14 19:39:43 -05:00
smix8 c901f39cda Remove no longer needed link polygons from NavMapBuilder
Removes no longer needed link polygons from NavMapBuilder.
2025-04-14 17:32:55 +02:00
Pāvels Nadtočajevs 4afeca3bcf
Replace global oversampling with overrideable per-viewport oversampling. 2025-04-14 13:43:09 +03:00
Aaron Franke 8459f4cdaf
Implement KHR_node_visibility in the GLTF module 2025-04-13 13:42:46 -07:00
Paul Joannon 88191b0b15
Fix extraction of C# default property values when negative 2025-04-13 17:57:20 +02:00
loki7 23a2481abc Fix LSP not returning expected localization for API docs. 2025-04-13 19:51:16 +08:00
DE-YU_H14 f0ec392bb1 [.Net] Avoid StringName allocations if type does not defines `_Get` or `_Set` 2025-04-12 03:39:24 +08:00
Thaddeus Crews addab4f001
Merge pull request #95916 from Repiteo/core/bit-field
Core: Add dedicated `BitField` template
2025-04-11 13:29:13 -05:00
Hugo Locurcio a0b796218a
Improve documentation on `is_nan()` and `NAN` constant 2025-04-11 20:25:16 +02:00
Thaddeus Crews 0d267e7b1e
Core: Add dedicated `BitField` template 2025-04-11 11:53:26 -05:00
Lukas Tenbrink e989d7bd89 Change `StringName.operator const void *` to `explicit operator bool`. 2025-04-11 18:34:01 +02:00
Zae e8311840e4 [.NET] Fix `string.PathJoin` to be consistent with core 2025-04-11 23:21:29 +08:00
Thaddeus Crews 98c204a8f0
Merge pull request #104828 from van800/rider_fleet
C#: Separate Rider and Fleet options as external editors
2025-04-11 09:51:13 -05:00
Thaddeus Crews 9b3e445e47
Merge pull request #105073 from Mickeon/documentation-miscellaneous-oddities-part-4
Fix miscellaneous oddities around the class reference (part 4)
2025-04-11 09:51:11 -05:00
Thaddeus Crews 0d07a6330a
Merge pull request #105253 from smix8/nav3d_point
Replace NavigationServer3D `Point` struct with `Vector3`
2025-04-11 09:51:06 -05:00
Thaddeus Crews 3bcc45617b
Merge pull request #105252 from smix8/nav2d_point
Replace NavigationServer2D `Point` struct with `Vector2`
2025-04-11 09:51:05 -05:00
Thaddeus Crews 717df3ee88
Merge pull request #105249 from Repiteo/core/math-defs-namespace
Core: Use `Math` namespace for constants
2025-04-11 09:51:04 -05:00
Ivan Shakhov 45a07c1ab9 split Rider and Fleet as different external editors for Godot C#
Co-authored-by: Paul Joannon <437025+paulloz@users.noreply.github.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2025-04-11 13:21:50 +02:00
Thaddeus Crews 9e158215d1
Merge pull request #96375 from HolonProduction/completion-callable-braces
Autocompletion: Don't add parenthesis if `Callable` is expected
2025-04-10 16:53:45 -05:00
Thaddeus Crews 1aa0b5f2f7
Merge pull request #93636 from Nolkaloid/fix-const-callv
GDScript: Add tests for calling with wrong arguments in Callable.callv() when passing a readonly (const) Array
2025-04-10 16:53:41 -05:00
Thaddeus Crews 94282d88f9
Core: Use `Math` namespace for constants 2025-04-10 16:29:30 -05:00
Nolkaloid c1cdaf7b16
Add gdscript tests for callv with const arrays 2025-04-10 23:13:01 +02:00
Priahoud bf963e767e Add Options, Functions and Settings to convert Node-Names and Strings to kebab-case
- refactored and renamed String::_camelcase_to_underscore to String:_separate_compound_words
- refactored String::to_snake_case to work with the refactored String::_separate_compound_words
- created char_utils::is_hyphen to catch all hyphen variants in kebab-case conversion
- created String::to_kebab_case using the new String::_separate_compound_words
- created corresponding Documentation in String and StringName
- simplified both switch statements in EditorNode and ProjectDialog
- added new kebab-casing Option for Node Names in ProjectSettings
- added missing camelCase Options to Scene- and Node-Names in ProjectSettings
- simplified Mono RuntimeInterop Functions
- hooked up the ConnectionsDialog
- created additional Unit Tests
2025-04-10 21:22:21 +02:00
Raul Santos b941c2d013
[.NET] Add a preload hook to load .NET assemblies from the APK
Avoids using assemblies extracted to a temporary directory in Android.
2025-04-10 21:10:51 +02:00
smix8 af14aaecd4 Replace NavigationServer3D Point struct with Vector3
Replaces NavigationServer3D Point struct with Vector3.
2025-04-10 20:19:20 +02:00
smix8 1c03b15b4f Replace NavigationServer2D Point struct with Vector2
Replaces NavigationServer2D Point struct with Vector2.
2025-04-10 20:18:54 +02:00
HolonProduction e7487263ad Autocompletion: Don't add parenthesis if `Callable` is expected 2025-04-10 18:40:32 +02:00
Micky e935fb1ee2 Fix miscellaneous oddities around the class reference (part 4) 2025-04-10 17:56:58 +02:00
Thaddeus Crews 1be843f77a
Merge pull request #103798 from Rudolph-B/new-97712
Switch occlusion culling to be based on depth instead of Euclidean distance
2025-04-10 10:18:17 -05:00
Thaddeus Crews cade15a163
Merge pull request #92475 from AThousandShips/string_replace_char
Add `String::replace_char(s)` methods for performance and convenience
2025-04-10 10:18:16 -05:00
Thaddeus Crews ef3e8b1609
Merge pull request #102786 from Giganzo/top-toolbar-menu-button-styles
Fix MenuButton style in editor top menu bar
2025-04-10 10:18:10 -05:00
A Thousand Ships 889410dcda
Add `String::replace_char(s)` methods for performance and convenience 2025-04-10 13:08:45 +02:00
Thaddeus Crews 4636d0abc9
Merge pull request #105193 from Monstrofil/fix-dds-mipmap-size-uncompressed-dds
Fix incorrect mipmap size calculation for uncompressed DDS textures
2025-04-09 18:12:01 -05:00
Thaddeus Crews f76190092d
Merge pull request #104780 from aaronfranke/gltf-fix-invalid-byte-stride
GLTF: Fix importing files with invalid buffer view byte strides
2025-04-09 18:12:00 -05:00
Thaddeus Crews 7a6c3b309f
Merge pull request #105130 from bruvzg/uri_fix_plus
Add uri_file_decode to handle + in file names.
2025-04-09 18:11:56 -05:00
Thaddeus Crews d23329a0e4
Merge pull request #104213 from ryevdokimov/shortcuts-gridmap-mouse-captrued
Fix `GridMap` shortcuts being triggered during freelook (mouse captured)
2025-04-09 18:11:54 -05:00
Thaddeus Crews 1be28a7cb2
Merge pull request #102292 from HolonProduction/gizmo-capsule
Editor: Improve capsule gizmos
2025-04-09 18:11:54 -05:00
Thaddeus Crews 171187d1aa
Merge pull request #101011 from aaronfranke/limit-max-contacts-reported
Place a hard limit on the `max_contacts_reported` property in 2D/3D physics
2025-04-09 18:11:53 -05:00
Adam Scott ab1757c4b9
Add singleton check before adding webxr interface 2025-04-09 12:54:30 -04:00
Oleksandr Shyshatskyi 65c9f44a2f Fix incorrect mipmap size calculation for uncompressed DDS textures
Previously, the DDS texture loader incorrectly calculated mipmap dimensions
for uncompressed textures when the original dimensions
were non-power-of-two.

For example, given a 120×120 texture, the expected mipmap chain should be:
    mipmap=0, size=120×120
    mipmap=1, size=60×60
    mipmap=2, size=30×30
    mipmap=3, size=15×15
    mipmap=4, size=7×7
    mipmap=5, size=3×3
    mipmap=6, size=1×1

But the loader was producing:
    mipmap=0, size=120×120
    mipmap=1, size=60×60
    mipmap=2, size=30×30
    mipmap=3, size=15×15
    mipmap=4, size=8×8
    mipmap=5, size=4×4
    mipmap=6, size=2×2

This commit corrects the logic to properly compute width and height independently at each mip level.

Fixes issue #105136.
2025-04-09 18:40:20 +03:00
Oleksandr Shyshatskyi 85a9c73a84 Fix the formula for calculation the size of compressed textures.
Accodring to the DDS documentation, the size of each mipmap level should
be:

    max(1, ( (width + 3) / 4 ) ) x max(1, ( (height + 3) / 4 ) ) x 8(DXT1) or 16(DXT2-5)

But in dds loader a slightly different formula was used which
provided different results. Check gh issue #105136 and pull request for details.
2025-04-09 18:23:16 +03:00
Thaddeus Crews ec675fc329
Merge pull request #100333 from YYF233333/reduce_list
Use `LocalVector` instead of `List` as arg of `Dictionary::get_key_list`
2025-04-09 08:51:45 -05:00
Thaddeus Crews d7ced73997
Merge pull request #104939 from HolonProduction/json-rpc-notification-return-fix
JSONRPC: Fix notification return behavior
2025-04-09 08:51:44 -05:00
Thaddeus Crews 0563f4f978
Merge pull request #105166 from Ivorforce/get-class-static-stringname
Change `get_class_static` to return `StringName`.
2025-04-09 08:51:39 -05:00
Lukas Tenbrink fbe64ffb45 Change `get_class_static` to return `StringName`.
Use that static `get_class_static` for `_get_class_namev` to avoid duplication.
2025-04-08 23:25:05 +02:00
kobewi 13741ff913 Add FoldableContainer
Co-authored-by: WhalesState <whalesstate@gmail.com>
2025-04-08 22:27:32 +02:00
Yufeng Ying f7e4987d0e Dictionary::get_key_list use LocalVector instead of List. 2025-04-09 02:46:24 +08:00
Thaddeus Crews 4248411baf
Merge pull request #102521 from HolonProduction/cancel-await
GDScript: Cancel suspended functions when reloading a script
2025-04-08 12:32:52 -05:00
Thaddeus Crews 36ff5d351c
Merge pull request #105152 from DeeJayLSP/ogg-name
Add an actual name for Ogg Vorbis importer visible name.
2025-04-08 12:32:50 -05:00
Thaddeus Crews e6a61b1ecc
Merge pull request #76829 from bruvzg/ac_kit_direct
Implement screen reader support using AccessKit library.
2025-04-08 12:32:47 -05:00
Thaddeus Crews bc723b0ddf
Merge pull request #102930 from Ivorforce/lambda-callable-overvalid
Optimize `GDScriptLambdaCallable` by skipping the unnecessary `ObjectDB` lookup for `script`.
2025-04-08 12:32:42 -05:00
Thaddeus Crews d98c3f5ffe
Merge pull request #104333 from Mickeon/documentation-even-more-miscellaneous-oddities
Fix *even* more miscellaneous oddities around the class reference
2025-04-08 12:32:41 -05:00
Pāvels Nadtočajevs 302fa831cc
Initial editor accessibility. 2025-04-08 20:25:48 +03:00
Pāvels Nadtočajevs b106dfd4f9
Base accessibility API. 2025-04-08 20:14:28 +03:00
DeeJayLSP 15b09e2e03 Add an actual name for Ogg Vorbis importer/visible name. 2025-04-08 11:47:46 -03:00
Pāvels Nadtočajevs 9abe2e5294
Add `uri_file_decode` to handle `+` in file names. 2025-04-07 23:49:17 +03:00
Micky 7603945d14 Fix *even* more miscellaneous oddities around the class reference 2025-04-07 17:37:08 +02:00
Thaddeus Crews af2c713971
Merge pull request #105082 from Delsin-Yu/dotnet-signalawaiter-alloc-opt
[.Net] Avoid array allocation when signal have 0 arg
2025-04-07 08:43:34 -05:00
Thaddeus Crews 13eee43437
Merge pull request #105072 from lodetrick/action-map-editor-scale
Fix OpenXR Action Map GUI not scaling according to Editor Scale
2025-04-07 08:43:34 -05:00
Thaddeus Crews 0fbb22c095
Merge pull request #104432 from YYF233333/dict_iter2
Do not iterate `Dictionary` with `Dictionary::keys()`
2025-04-07 08:43:33 -05:00
Thaddeus Crews 5e20c8fbcd
Merge pull request #105061 from HolonProduction/lsp-workspace-symbol
LSP: Don't advertise support for workspace symbols
2025-04-07 08:43:32 -05:00
Thaddeus Crews 27cc05194c
Merge pull request #105059 from HolonProduction/lsp-relative
LSP: Fix relative path handling for document links
2025-04-07 08:43:31 -05:00
Thaddeus Crews 45a64319e1
Merge pull request #104771 from Repiteo/ci/pre-commit-bump
CI: Bump various pre-commit hooks
2025-04-07 08:43:27 -05:00
Thaddeus Crews 5edb235018
CI: Bump various pre-commit hooks 2025-04-07 08:23:35 -05:00
Joyless f7f6e5ee21 Use `FrozenDictionary` 2025-04-06 20:13:02 +01:00
Aaron Franke 03b793464f
GLTF export: Allow using a PNG or JPEG fallback image 2025-04-06 03:34:43 -07:00
HolonProduction 02eab5e2c4 Editor: Improve capsule gizmos 2025-04-06 10:44:37 +02:00
DE YU af67fb1f62 Avoid array allocation when signal have 0 arg 2025-04-06 16:02:35 +08:00
Danil Alexeev 4b9bcda113
GDScript: Add autocompletion for `@export_tool_button` 2025-04-06 08:21:43 +03:00
smix8 4d76c197a7 Make navigation maps emit map_changed directly
Makes navigation maps emit map_changed directly.
2025-04-05 22:50:48 +02:00
Logan Detrick 0ead587fa2 Fixes Editor Scales in OpenXR GUI 2025-04-05 13:48:52 -07:00
smix8 a4c56d478a Move NavigationServer navmesh sync from main() to process()
Moves NavigationServer navmesh sync from main() to process().
2025-04-05 21:29:24 +02:00
HolonProduction c203e6381e LSP: Don't advertise support for workspace symbols 2025-04-05 18:11:44 +02:00
MewPurPur 857f47e238 Rework icons of noise-related classes 2025-04-05 18:45:49 +03:00
HolonProduction 920997d0c8 LSP: Fix relative path handling for document links 2025-04-05 17:35:06 +02:00
Micky 2ed4586076 Fix differences between OpenXRInterface and XRHandTracker docs 2025-04-05 13:07:52 +02:00
Yufeng Ying 8ae16699c5 Do not use Dictionary::keys() for Dictionary iteration. 2025-04-05 18:42:13 +08:00
Yufeng Ying 4029051bb1 Change ClassDB::get_inheriters_from_class. 2025-04-04 23:47:19 +08:00
Thaddeus Crews 2fe029ded8
Merge pull request #104449 from mihe/jolt/v5.3.0
Jolt: Update to 5.3.0
2025-04-04 09:29:20 -05:00
HolonProduction a18d6e48c9 JSONRPC: Fix notification return behavior 2025-04-04 10:41:18 +02:00
Thaddeus Crews 8bd9cdeea6
Merge pull request #104890 from HolonProduction/json-rpc-manual-bind
JSONRPC: Require manual method registration
2025-04-03 16:50:24 -05:00
HolonProduction e2c3731cdd JSONRPC: Require manual method registration 2025-04-03 17:51:03 +02:00
smix8 565ea927d2 Emit changed signal after baking navigation mesh
Emits changed signal after baking navigation mesh.
2025-04-02 16:54:48 +02:00
Thaddeus Crews 1f56d96cf2
Merge pull request #104893 from Repiteo/scons/external-includes-alt
SCons: Add `CPPEXTPATH` for external includes
2025-04-02 07:48:03 -05:00
Thaddeus Crews c9c8556a47
Merge pull request #104862 from smix8/navserver_process
Prepare NavigationServer for `process()` and `physics_process()` split
2025-04-02 07:37:32 -05:00
Thaddeus Crews 9f222d500d
Merge pull request #104375 from YYF233333/is_empty
Replace `size() == 0` with `is_empty()`
2025-04-02 07:37:31 -05:00
Thaddeus Crews f25fc34439
SCons: Add `CPPEXTPATH` for external includes 2025-04-02 07:29:08 -05:00
Yufeng Ying 7a1a970c25 size() <= 0 and size() < 1. 2025-04-02 19:18:44 +08:00
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08:00
smix8 16fd7b6ae1 Prepare NavigationServer for process() and physics_process() split
Prepares the NavigationServer API for a split of its functionality between frame process() and stepped physics_process().
2025-04-02 11:01:08 +02:00
LuoZhihao 06c8a7d396 Navigation: Replace the deprecated `Geometry2D::get_closest_point_to_segment` 2025-04-02 13:45:06 +08:00
Thaddeus Crews f72511d908
Merge pull request #104811 from YeldhamDev/build_no_navigation
Allow to compile templates without navigation features
2025-04-01 19:53:29 -05:00
smix8 79ae9bf775 Change navigation module LocalVector size_t uses to uint32_t
Changes navigation module LocalVector size_t uses to uint32_t.
2025-04-01 23:44:43 +02:00
Michael Alexsander 556933306a
Allow to compile templates without navigation features 2025-04-01 11:53:35 -03:00
Thaddeus Crews d52b84e472
Merge pull request #103993 from aaronfranke/geometry-segment
Directly use segment points in Geometry2D/3D function parameters
2025-04-01 08:01:34 -05:00
KOGA Mitsuhiro e37d785a0a feat: Allow users to select Continuity Camera
Added Continuity Camera to the device discovery session to provide
users with more camera options. Users on macOS 13+ can now select
their Continuity Camera device within the application.
2025-04-01 20:15:20 +09:00
Pāvels Nadtočajevs 19f360d65a
Add font import flag to toggle modulation of colored glyphs. 2025-04-01 13:36:10 +03:00
Thaddeus Crews 4778212be1
Merge pull request #101270 from aaronfranke/gltf-export-img-num-pad
GLTF: Only pad zeros when exporting numbered images
2025-03-31 19:02:07 -05:00
Thaddeus Crews abd565eb19
Merge pull request #104844 from Ivorforce/gdsoftclass
Add and require `GDSOFTCLASS` for `Object` subclasses that want to cast but do not use `GDCLASS`.
2025-03-31 19:02:03 -05:00
scgm0 c8ade8618b Fix Windows Mono build 2025-04-01 06:45:33 +08:00
Lukas Tenbrink fa0a3c9c6e Add and require `GDSOFTCLASS` for `Object` subclasses that want to cast but do not use `GDCLASS`. 2025-03-31 20:49:50 +02:00
Danil Alexeev 7721e13a92
GDScript: Add constant `Array` and `Dictionary` constructors 2025-03-31 21:31:34 +03:00
Thaddeus Crews 8f6bb119f4
Merge pull request #100602 from KoBeWi/over_100_changes_in_50_random_files_aka_the_best_kind_of_PR
Add templated version of `ObjectDB::get_instance()`
2025-03-31 12:03:47 -05:00
Thaddeus Crews 64f80ca0e9
Merge pull request #104810 from kiroxas/utf8_cleanup
Replace `append_utfx` with direct `String::utfx`
2025-03-31 12:03:44 -05:00
David Snopek 79f5a4d9fe OpenXR: Use the `XR_FB_foveation_vulkan` extension to get the density map for VRS 2025-03-31 07:21:58 -05:00
Lukas Tenbrink ccdc5862e9 Add `LocalVector.erase_unordered`, mimicking `erase` but with `remove_at_unordered`, to remove duplicate logic.
`erase_unordered` should be preferred over `erase` where order is not important, for its performance benefits.

Co-authored-by: smix8 <smix8@users.noreply.github.com>
2025-03-31 13:31:53 +02:00
Aaron Franke 674c2dc9ee
GLTF: Fix importing files with invalid buffer view byte strides 2025-03-30 18:38:22 -07:00
Aaron Franke c1acc839a8
Directly use segment points in Geometry2D/3D function parameters 2025-03-30 16:25:59 -07:00
Kiro 23129a66ed Replace append_utfx with direct String::utfx 2025-03-30 19:56:38 +02:00
Thaddeus Crews 4b796b068a
Merge pull request #104768 from Rudolph-B/Issue-104763
Fix corrupted negative values for signed BC6
2025-03-30 09:05:59 -05:00
Thaddeus Crews 8b2952a71c
Merge pull request #101504 from AThousandShips/nav_split_new
[Navigation] Create a dedicated 2D navigation server
2025-03-30 09:05:43 -05:00
Robert Yevdokimov 943eed575b Fix `GridMap` shortcuts being triggered during freelook (mouse captured) 2025-03-30 00:30:38 +04:00
Rudolph Bester 040cc3d5ec Fix corrupted negative values for signed BC6 2025-03-29 17:26:54 +02:00
Thaddeus Crews 780cf03051
Merge pull request #104556 from Ivorforce/string-extend-instead-of-parse
Use `append_` instead of `parse_` for `String` methods.
2025-03-29 10:16:33 -05:00
Aaron Franke aeece9d5fb
GLTF: Only pad zeros when exporting numbered images 2025-03-29 04:18:16 -07:00
A Thousand Ships 5cc0539961
[Navigation] Create a dedicated 2D navigation server
* Add a dedicated 2D server
* Create dedicated tests
* Split performance metrics between 2D and 3D
* Rename the 3D only server module
2025-03-29 12:10:50 +01:00
Aaron Franke a5de242a2f
Place a hard limit on the max_contacts_reported property 2025-03-29 01:17:55 -07:00
Rémi Verschelde be57309c30
Merge pull request #104658 from m4gr3d/fix_composition_layer_setup
Ensure the composition layer is registered when the layer viewport is updated
2025-03-28 17:30:40 +01:00
Rémi Verschelde ab5a3521f9
Merge pull request #104561 from Calinou/doc-csgshape3d-deferred-updates
Document CSGShape3D updates being deferred until the next frame
2025-03-28 17:30:23 +01:00
Rémi Verschelde 9ecc59f172
Merge pull request #104465 from lodetrick/action-map-tooltips
Add tooltips to OpenXR Action Map UI
2025-03-28 17:30:19 +01:00
Rémi Verschelde ddae331c79
Merge pull request #103853 from aaronfranke/gltf-fix-light-color-space
GLTF: Fix wrong color space for GLTFLight on export
2025-03-28 17:30:09 +01:00
Rémi Verschelde e8bc75f056
Merge pull request #103373 from YeldhamDev/build_remove_physics
Allow to compile templates without physics servers
2025-03-28 17:30:03 +01:00
Rémi Verschelde 3b90bb56ad
Merge pull request #89782 from KoBeWi/stdArrayList
Use initializer list in Arrays
2025-03-28 17:29:40 +01:00
Michael Alexsander 5ad414d046
Allow to compile templates without physics servers 2025-03-28 11:00:44 -03:00
Rémi Verschelde b13c96b097
Merge pull request #104713 from aaronfranke/gltf-post-convert
GLTF: Fix `export_post_convert` not running for multi-root scenes
2025-03-28 14:35:03 +01:00
Rémi Verschelde c93ce94f4a
Merge pull request #104455 from Ivorforce/ubrk-clone
Optimize startup times by using `ubrk_clone` instead of `ubrk_open`.
2025-03-28 14:33:03 +01:00
Rémi Verschelde 0d3ce48562
Merge pull request #104279 from L2750558108/pr-fix-nested-in-generic-errors
Fix nested GodotObject class in generic class lead to source generator errors in C#
2025-03-28 14:32:44 +01:00
Rémi Verschelde 46a5940950
Merge pull request #103643 from dsnopek/openxr-alternative-reference-spaces
OpenXR: Support alternative reference spaces from extensions
2025-03-28 14:32:00 +01:00
Rémi Verschelde e81eb3f1e9
Merge pull request #102354 from YYF233333/style_iterator
Use iterator pattern instead of manually traverse `List::Element *`
2025-03-28 14:31:40 +01:00
Aaron Franke 38ba5f59c9
GLTF: Fix export_post_convert not running for multi-root scenes 2025-03-27 23:00:01 -07:00
Yyf2333 22b5ec17fb Using iterator pattern instead of List::Element *.
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
2025-03-28 13:29:15 +08:00
Aaron Franke 98e9ace3ef
GLTF: Don't write unused targetNames on meshes 2025-03-27 18:14:33 -07:00
Lukas Tenbrink ffa6ef220b Use `append_` instead of `parse_` for `String` methods. 2025-03-27 17:51:02 +01:00
kobewi bc9d0c7835 Add templated version of ObjectDB::get_instance() 2025-03-27 15:43:23 +01:00
Mauricio Narvaez 15b9c15517 Ensure the composition layer is registered when the layer viewport is updated. 2025-03-26 14:39:40 -07:00
kobewi 75881f8322 Use initializer list in Arrays 2025-03-26 18:38:15 +01:00
Rémi Verschelde b699508b07
Merge pull request #104599 from mihe/jolt/rest-info-shape-index
Fix `shape` always being zero with `get_rest_info` when using Jolt Physics
2025-03-25 23:08:20 +01:00
Thaddeus Crews d032c1170a
Merge pull request #104521 from Chubercik/pcre2-10.45
pcre2: Update to 10.45
2025-03-25 11:09:11 -05:00
Thaddeus Crews 350ac5bac9
Merge pull request #104575 from bruvzg/cvtt_mul_4
Force multiple of 4 sizes for CVTT compressor.
2025-03-25 11:09:01 -05:00
Thaddeus Crews 1b2e388af3
Merge pull request #104470 from m4gr3d/use_composition_layer_fallback_for_panel
Enable composition layer fallback in panel mode
2025-03-25 11:08:59 -05:00
Mikael Hermansson 4b5661758f Fix `shape` always being zero with `get_rest_info` when using Jolt Physics 2025-03-25 12:35:01 +01:00
Pāvels Nadtočajevs 6f50511a4d
Force multiple of 4 sizes for CVTT compressor. 2025-03-25 11:12:28 +02:00
Thaddeus Crews c687e4f692
Merge pull request #104509 from HolonProduction/completion-super-method
GDScript: Return early when parsing invalid super call
2025-03-24 15:27:26 -05:00
Hugo Locurcio 38f43eb2ed
Document CSGShape3D updates being deferred until the next frame
This affects several methods that users can call, such as `get_meshes()`,
`bake_static_mesh()`, and `bake_collision_shape()`.
2025-03-24 19:36:52 +01:00
HolonProduction b67dcb21fd GDScript: Return early when parsing invalid super call 2025-03-24 17:40:26 +01:00
David Snopek 3f27351f2b OpenXR: Support alternative reference spaces from extensions
Co-authored-by: Fredia Huya-Kouadio <fhuyakou@gmail.com>
2025-03-24 11:33:30 -05:00
Thaddeus Crews 2161217ed6
Merge pull request #104219 from van800/source_gen_fix
C#: Fix source generator for primary constructor
2025-03-24 10:00:59 -05:00
Thaddeus Crews 1cb3cfaa8e
Style: Convert namespaces to PascalCase 2025-03-23 19:10:24 -05:00
Thaddeus Crews 8f331ebd9c
Merge pull request #103099 from YeldhamDev/build_res_loader_disable
Disable `ResourceFormatLoader/Saver`s of disabled classes
2025-03-23 19:04:01 -05:00
Thaddeus Crews a8bab92fc0
Merge pull request #104450 from Ivorforce/font-load-once
Optimize startup times by avoiding loading fonts twice.
2025-03-23 19:03:57 -05:00
Jakub Marcowski 2c3e302c75
pcre2: Update to 10.45 2025-03-23 17:22:09 +01:00
Thaddeus Crews f09ee0171a
Style: Begin integrating simple `.clangd` fixes 2025-03-22 13:24:35 -05:00
2750558108 6a56ed8926 Fix nested GodotObject class in generic class lead to source generator errors in C# 2025-03-22 20:46:52 +08:00
Mauricio Narvaez 18fd37d4a8 Enable composition layer fallback in non-editor desktop player 2025-03-21 21:51:25 -07:00
Logan Detrick ba88732910 Add tooltips to OpenXR Action Map UI 2025-03-21 18:08:36 -07:00
Lukas Tenbrink 09e7bef0e0 Use `ubrk_clone` instead of `ubrk_open` to create `UBreakIterator` instances.
`ubrk_clone` is much faster, because the locale doesn't have to be parsed again.
2025-03-22 00:42:43 +01:00
Michael Alexsander 090358afcf
Disable `ResourceFormatLoader/Saver`s of disabled classes 2025-03-21 14:23:05 -03:00
Mikael Hermansson 5d00161040 Jolt: Update to 5.3.0 2025-03-21 17:17:55 +01:00
Lukas Tenbrink 1a2cb12077 Generate an error when trying to load a font with an invalid face, instead of defaulting to the last valid font face.
This optimizes `TextServerAdvanced::_ensure_cache_for_size`, improving editor startup times.
2025-03-21 17:12:28 +01:00
Ivan Shakhov 724c0021c7 fix https://github.com/godotengine/godot/issues/104135 Generator for C# makes illegal code for a GodotObject with a primary ctor
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2025-03-21 08:34:25 -07:00
Rémi Verschelde 21e1e43b79
Merge pull request #104430 from Ivorforce/add-features-iterate-fast
Optimize `TextServerAdvanced::_add_features` by using iteration instead of `.values()` and `.keys()`
2025-03-21 13:04:19 +01:00
Rémi Verschelde 3e3cf292bd
Merge pull request #104377 from Mickeon/translation-slight-duplicates
Tweak a few miscellaneous localization strings
2025-03-21 13:04:08 +01:00
Rémi Verschelde f51ea67fb5
Merge pull request #104232 from Ivorforce/camera-server-shutdown
Deactivate the `CameraServer` by default.
2025-03-21 13:03:32 +01:00
Rémi Verschelde 2715017641
Merge pull request #104087 from dsnopek/death-to-multiple-inheritance-openxr-edition
OpenXR: Clean-up `OpenXRExtensionWrapper` by removing multiple inheritance and deprecating `OpenXRExtensionWrapperExtension`
2025-03-21 13:03:23 +01:00
Rémi Verschelde d3676e9352
Merge pull request #99872 from HolonProduction/plugin-template
Add `_enable`/`_disable_plugin` to plugin script template
2025-03-21 13:03:03 +01:00
Lukas Tenbrink bfc1ef4ab7 Optimize `TextServerAdvanced::_add_features` by using iteration instead of `.values()` and `.keys()`.
Rename `_add_featuers` to `_add_features`.
2025-03-21 11:59:29 +01:00
Lukas Tenbrink 54685c3037 Deactivate the `CameraServer` by default.
Add `monitoring_feeds` property to `CameraServer`.
This saves resources for games that don't use a physical camera.
2025-03-21 07:58:57 +01:00
mmurphy316 0ed8bf89ae Add compression level support to ZipPacker 2025-03-20 10:42:30 -04:00
David Snopek 9d3c950b5d OpenXR: Clean-up `OpenXRExtensionWrapper` by removing multiple inheritance and deprecating `OpenXRExtensionWrapperExtension` 2025-03-20 07:19:55 -05:00
Micky 5d794f83ed Tweak a few miscellaneous localization strings 2025-03-20 13:12:44 +01:00
Thaddeus Crews 5bb1a2cb0f
Merge pull request #104249 from jamie-pate/fix_104193
Correct occlusion culling viewport location calculation when projection uses asymmetric fov
2025-03-19 17:46:10 -05:00
Jamie Pate 8e3e2a8f44 Calculate the viewport location correctly in OpenXR
Fixes #104193

In OpenXR the viewport location is not centered on the transform origin
2025-03-19 10:04:37 -07:00
kobewi 10f6c01b9c Remove ABS in favor of Math::abs 2025-03-19 13:52:40 +01:00
Rémi Verschelde 18cd665202
Merge pull request #104206 from KoBeWi/unshape
Unbind `CSGShape::_update_shape()` and make it public
2025-03-19 12:27:23 +01:00
Rémi Verschelde 2fa721b1bc
Merge pull request #104127 from Ivorforce/360-noclip
Remove `String` clipping constructors.
2025-03-19 12:27:10 +01:00
Rémi Verschelde 05a9e0153a
Merge pull request #101951 from BastiaanOlij/openxr_futures
Add support for the OpenXR futures extension
2025-03-19 12:26:30 +01:00
Pablo Andres Fuente 1de900c6ec Add `MultiplayerSpawner` unit tests
Partially fixes #43440.
2025-03-19 10:03:28 +01:00
Thaddeus Crews 2e1803e07f
Merge pull request #102975 from metakunt/jolt_physics_reg_type
Improve Jolt module initialization style
2025-03-18 14:42:55 -05:00
Pāvels Nadtočajevs face3caf6a
Force multiple of 4 sizes for Betsy compressor. 2025-03-18 15:39:53 +02:00
metakunt 0c25ac8d44
Improve Jolt module initialization style 2025-03-18 13:53:30 +01:00
Rémi Verschelde fc827bbe25
Merge pull request #104310 from mihe/jolt/back-face-collision
Fix `ConcavePolygonShape3D` always enabling `backface_collision` when using Jolt Physics
2025-03-18 13:50:31 +01:00
Rémi Verschelde 500d005702
Merge pull request #104281 from mihe/clear-static-gdscript-cache
Add clearing of `static_gdscript_cache` to `GDScriptCache`
2025-03-18 13:50:20 +01:00
Mikael Hermansson 3603a5a9dd Fix `ConcavePolygonShape3D` always enabling `backface_collision` when using Jolt Physics 2025-03-18 12:26:31 +01:00
Bastiaan Olij d6312188d7 Adding support for the OpenXR futures extension 2025-03-18 18:59:36 +11:00
Thaddeus Crews f98cddfc71
Merge pull request #101994 from fire/vsk-save-dds-4.4
Add DDS image load and save functionality
2025-03-17 16:03:26 -05:00
Thaddeus Crews 1f6426066e
Merge pull request #98768 from Repiteo/core/constexpr-math-operators
Core: Add `constexpr` constructors/operators to math structs
2025-03-17 16:03:20 -05:00
kobewi 6f25babd6b Remove empty constructors and destructors from editor/ 2025-03-17 21:20:02 +01:00
Mikael Hermansson db5e843e46 Add clearing of `static_gdscript_cache` to `GDScriptCache` 2025-03-17 18:19:23 +01:00
Thaddeus Crews ea62170dac
Core: Add `constexpr` constructors/operators to math structs
• Begin integrating `constexpr` on math tests; use `static_assert` where appropriate
2025-03-17 12:15:31 -05:00
Thaddeus Crews f4e929e41a
Merge pull request #104002 from smix8/navowner_check
Move navmesh connection owner check to subfunction
2025-03-17 10:52:31 -05:00
Thaddeus Crews a9065db5ad
Merge pull request #104130 from KoBeWi/are_tools_enabled_when_tools_are_enabled
Remove `TOOLS_ENABLED` checks from `editor/`
2025-03-17 10:52:25 -05:00
Thaddeus Crews 41349bec5f
Merge pull request #104153 from raulsntos/dotnet/deprecate-compat-methods-that-reference-deprecated-types
[.NET] Deprecate compat methods that reference deprecated types
2025-03-17 10:52:23 -05:00
kobewi e64a07cc57 Unbind CSGShape::_update_shape() and make it public 2025-03-16 00:36:50 +01:00
Thaddeus Crews 10ed66f28c
SCons: Add emitter to declutter build objects 2025-03-15 12:08:24 -05:00
Lukas Tenbrink a23f630781 Remove `String` clipping constructors.
Callers should instead call constructors with explicit encoding names, with known length `Span`.
2025-03-15 12:34:44 +01:00
K. S. Ernest (iFire) Lee 69b281295c Add DDS image load and save functionality
Save and load DDS from Image class.

Co-authored-by: BlueCube3310 <53150244+BlueCube3310@users.noreply.github.com>
2025-03-14 19:31:43 -07:00
Raul Santos 2213545fc5
[.NET] Deprecate compat methods that reference deprecated types 2025-03-14 21:33:33 +01:00
kobewi 7cb2fb189a Remove TOOLS_ENABLED checks from editor/ 2025-03-14 18:13:16 +01:00
Thaddeus Crews b377562b52
Merge pull request #91660 from AThousandShips/methodinfo_vec
[Core] Use `Vector` for `MethodInfo::arguments`
2025-03-14 10:06:13 -05:00
Thaddeus Crews e68ac1c89d
Merge pull request #104114 from HolonProduction/lsp-spec-selection-range-round-3
GDScript: Fix head class range to include `class_name`
2025-03-14 10:06:11 -05:00
Thaddeus Crews 4292f2464c
Merge pull request #104113 from aaronfranke/projection-construct
Add missing Projection constructor with 16 `real_t` values
2025-03-14 10:06:07 -05:00
HolonProduction d6da30e9c7 GDScript: Fix head class range to include `class_name` 2025-03-14 11:36:55 +01:00
Rémi Verschelde 535014fd53
Merge pull request #104097 from aaronfranke/csharp-missing-vec4
Fix missing Vector4(i) and Projection in C# bindings generator
2025-03-14 11:02:53 +01:00
Aaron Franke ced61da848
Add missing Projection constructor with 16 real_t values 2025-03-14 02:57:19 -07:00
Aaron Franke 6c9087fb5a
Fix missing Vector4(i) and Projection in C# bindings generator 2025-03-13 19:04:47 -07:00
Michael Alexsander ce8d2e4917
Implement class detection in GDScript for build configuration 2025-03-13 21:24:56 -03:00
Rémi Verschelde eabd877873
Merge pull request #104084 from dsnopek/classdb-correctly-register-editor-classes
Register editor classes normally, rather than via `ClassDB::set_current_api()`
2025-03-14 00:09:09 +01:00
Rémi Verschelde a2d1990ca2
Merge pull request #104054 from adamscott/interactive_music_meta_stream
Set interactive music streams as meta streams
2025-03-14 00:08:56 +01:00
David Snopek 393465ce92 Register editor classes normally, rather than via `ClassDB::set_current_api()` 2025-03-13 15:17:45 -05:00
Thaddeus Crews 768d75a248
Merge pull request #101254 from mihe/jolt/better-settings
Refactor Jolt-related project settings to only be loaded as needed
2025-03-13 08:57:43 -05:00
Thaddeus Crews c1b7865ae9
Merge pull request #103557 from aaronfranke/godot-version-defines
Rename version defines to `GODOT_VERSION_*` to match GDExtension godot-cpp
2025-03-13 08:57:42 -05:00
Thaddeus Crews 22a7079afd
Merge pull request #104047 from YYF233333/dict_iter
Add const iteration support to `Dictionary`
2025-03-13 08:57:23 -05:00
Thaddeus Crews e97bb76142
Merge pull request #100314 from Ivorforce/use-string-chr
Optimize `String::chr` to avoid calling `strlen`. Use `String::chr` instead of `String(&chr, 1)` where appropriate.
2025-03-13 08:57:20 -05:00
Rémi Verschelde c2ba0a8646
Merge pull request #103869 from Bromeon/bugfix/openxr-editor-apis
Correctly register editor-only `OpenXR*` classes' `api_type`
2025-03-12 23:17:44 +01:00
Adam Scott d68ff21fbe
Set interactive music streams as meta streams 2025-03-12 17:57:23 -04:00
smix8 fe1462cdec Move navmesh connection owner check to subfunction
Moves the NavBase related connection checks for navigation layers and region filters to subfunction.
2025-03-12 20:04:19 +01:00
Thaddeus Crews df65b341ad
Merge pull request #101999 from devloglogan/swapchain-update-state
Implement OpenXR FB swapchain update extensions
2025-03-12 13:17:14 -05:00
Thaddeus Crews f51ad3443d
Merge pull request #101597 from devloglogan/openxr-performance-settings
Implement `XR_EXT_performance_settings` OpenXR extension
2025-03-12 13:17:12 -05:00
Thaddeus Crews c6004c6267
Merge pull request #102100 from AThousandShips/nav_split_prepare
[Navigation] Rename classes in preparation for future restructure
2025-03-12 13:17:11 -05:00
Aaron Franke 97ee05e9b7
Rename version defines to GODOT_VERSION_* to match GDExtension godot-cpp 2025-03-12 11:11:38 -07:00
Yufeng Ying bebe037abf Add ConstIterator to Dictionary. 2025-03-13 01:28:46 +08:00
devloglogan 352859c29e Implement XR_EXT_performance_settings OpenXR extension 2025-03-12 10:50:43 -05:00
Thaddeus Crews 15a5a2f309
Merge pull request #103766 from BlueCube3310/basisu-hdr-astc
BasisUniversal: Ensure ASTC's HDR variant is supported when transcoding
2025-03-12 10:31:49 -05:00
Adam Johnston e202851e20
C#: Add missing `get_data` when calling `CFStringCreateWithCString` in `macos_utils` 2025-03-12 15:49:54 +01:00
devloglogan 251ae9c138 Implement OpenXR FB swapchain update extensions 2025-03-12 09:49:17 -05:00
yesfish f180e8a79d Add named placeholder to blender import options 2025-03-12 13:18:36 +00:00
A Thousand Ships b064fcf547
[Navigation] Rename classes in preparation for future restructure 2025-03-12 13:26:34 +01:00
Thaddeus Crews 0a30831bed
Merge pull request #100023 from Repiteo/core/module-includes-header-strip
Core: Avoid including `modules/modules_enabled.gen.h` in headers
2025-03-11 19:54:48 -05:00
Thaddeus Crews 70d7a77a9a
Merge pull request #98653 from Repiteo/scons/pretty-builders
SCons: Make builders prettier, utilize `constexpr`
2025-03-11 19:54:47 -05:00
Thaddeus Crews 754e3b3f9a
Merge pull request #103825 from JulianHeuser/region_highlight_crash_fix
Fix crash related to #region/#endregion caused by trailing spaces
2025-03-11 19:54:46 -05:00
Thaddeus Crews 6c4f17db1a
Core: Avoid including `modules_enabled` in headers 2025-03-11 19:42:13 -05:00
Thaddeus Crews be429eb404
SCons: Make builders prettier, utilize `constexpr` 2025-03-11 18:31:20 -05:00
Thaddeus Crews e30d3af34e
Merge pull request #102766 from smix8/region_filters
Add path query region filters
2025-03-11 16:54:05 -05:00
Thaddeus Crews 90509e6402
Merge pull request #102129 from Ivorforce/optimize-text-server-adv-break-iter
Optimize text rendering by caching `UBreakIterator` instances.
2025-03-11 16:53:56 -05:00
Thaddeus Crews 9aae1fe61e
Merge pull request #102869 from dsnopek/openxr-system-info
OpenXR: Expose more system info from `XrSystemProperties`
2025-03-11 14:00:52 -05:00
Thaddeus Crews 4af8989e38
Merge pull request #103973 from dsnopek/openxr-opengl-version-warning
OpenXR: Fix OpenGL version warning when using GLES
2025-03-11 14:00:37 -05:00
David Snopek 6353386241 OpenXR: Fix OpenGL version warning when using GLES 2025-03-11 10:32:22 -05:00
Thaddeus Crews e1b9048ae4
Merge pull request #103536 from raulsntos/dotnet/shipped-diagnostics
Move entries from `AnalyzerReleases.Unshipped.md` to `AnalyzerReleases.Shipped.md`
2025-03-11 09:34:51 -05:00
Jakub Marcowski 246b062bd6
basis_universal: Update to 1.60 2025-03-11 13:43:00 +01:00
Julian 659d1b5d0c Fix crash caused by trailing spaces 2025-03-11 00:06:08 -04:00
Thaddeus Crews 4af4b66d1b
Merge pull request #102765 from Delsin-Yu/csharp-typed-collections-documentation-improvments
[C#] Improve Documentation for Typed `Godot.Collections` Wrappers
2025-03-10 21:05:52 -05:00
Thaddeus Crews d7c9c3a5f6
Merge pull request #102538 from Chubercik/ufbx-0.16.0
ufbx: Update to 0.17.1
2025-03-10 21:05:50 -05:00
Thaddeus Crews 3f759f488d
Merge pull request #103491 from bruvzg/hb1040
Update HarfBuzz to 10.4.0
2025-03-10 21:05:48 -05:00
Aaron Franke 6249306c15
GLTF: Fix wrong color space for GLTFLight 2025-03-10 13:42:35 -07:00
Thaddeus Crews 30bb49ec1f
Merge pull request #102356 from a-johnston/add_missing_cs_vector_methods
Add `Min(float)` and octahedron encode/decode to `Vector3.cs`
2025-03-10 10:01:20 -05:00
Thaddeus Crews 8d1c1c5867
Merge pull request #92476 from AThousandShips/string_remove_char
Add `String::remove_char(s)` methods for performance and convenience
2025-03-10 10:01:04 -05:00
Thaddeus Crews a5acf1dc81
Merge pull request #101174 from Repiteo/style/objc-import-syntax
Style: Standardize Obj-C `#import` syntax
2025-03-10 10:01:02 -05:00
A Thousand Ships d9721954e6
[Core] Use `Vector` for `MethodInfo::arguments` 2025-03-10 13:57:53 +01:00
A Thousand Ships 331a43a9d8
Add `String::remove_char(s)` methods for performance and convenience 2025-03-10 13:19:28 +01:00
Jan Haller 99071539e0 Register editor-only OpenXR* classes as api_type = "editor" instead of "core" 2025-03-09 18:13:40 +01:00
A Thousand Ships 466590d0ec
Use `get_slicec` instead of `get_slice` for single character splitters 2025-03-08 20:36:37 +01:00
Thaddeus Crews 713a1ba554
Style: Standardize Obj-C `#import` syntax 2025-03-08 09:28:34 -06:00
Rudolph Bester 18eb1c1072 Fix occlusion culling by using depth instead of Euclidean distance when selecting the closest point
Co-authored-by: Florent Guiocheau <florent.guiocheau@gmail.com>
2025-03-08 08:48:34 +02:00
Thaddeus Crews 324512e11c
Style: Replace header guards with `#pragma once` 2025-03-07 17:33:47 -06:00
Thaddeus Crews 67d4a245d8
Merge pull request #103267 from YeldhamDev/reality_got_too_extended
Allow to compile the engine without XR support
2025-03-07 15:12:54 -06:00
Thaddeus Crews 850599c36d
Merge pull request #98153 from Delsin-Yu/dotnet-warn-missing-tool-preprocessor
[Editor] Prevent `TOOLS` .Net DefineConstants being overriden by the user
2025-03-07 15:12:49 -06:00
Thaddeus Crews 3d9b37911d
Merge pull request #103011 from Repiteo/style/svgo-newline
Style: Ensure svgs have trailing newlines
2025-03-07 15:12:41 -06:00
Thaddeus Crews 3c43508ed7
Merge pull request #102427 from AThousandShips/fix_substr
Clean up some uses of `String::substr`
2025-03-07 15:12:33 -06:00
Thaddeus Crews 0c8f4f3d91
Merge pull request #97908 from atlasapplications/just-linux-bionic
Add `linux-bionic` RID export option
2025-03-07 15:12:32 -06:00
Thaddeus Crews c937b6d180
Merge pull request #102419 from Ivorforce/std-size
Use `std::size` instead of `sizeof(a) / sizeof(a[0])` pattern throughout the codebase.
2025-03-07 15:12:25 -06:00
Thaddeus Crews d9125ebebe
Merge pull request #101293 from Ivorforce/string-to-pointer-conversion
Remove implicit conversions from `String`, `Char16String` and `CharString` to data pointers.
2025-03-07 15:12:12 -06:00
Thaddeus Crews 9e7fbdf52b
Merge pull request #103663 from pafuent/fixing_errors_warnings_output_on_tests
Fix `SCRIPT ERROR/ERROR/WARNING` on test output
2025-03-07 15:12:11 -06:00
Thaddeus Crews e0a040c0d3
Merge pull request #101319 from JulianHeuser/region_syntax_highlighting_fix
Improve consistency of code regions
2025-03-07 12:06:34 -06:00
BlueCube3310 4d46ef8e8e BasisUniversal: Ensure ASTC's HDR variant is supported when transcoding 2025-03-07 15:26:03 +01:00
A Thousand Ships 5113022dfe
Clean up some uses of `String::substr`
Cases where the end position is either equvalent to the default or past
the end of the string.
2025-03-07 14:50:38 +01:00
Thaddeus Crews 82c713ec51
Merge pull request #103440 from mihe/jolt/transform-decomposition
Fix broken negative scaling when using Jolt Physics
2025-03-06 16:36:16 -06:00
Thaddeus Crews f002258454
Merge pull request #103714 from raulsntos/dotnet/skip-resaving-when-tfm-unchanged
[.NET] Skip re-saving `.csproj` when TFM is unchanged
2025-03-06 16:36:08 -06:00
Raul Santos 57d5b664d3
[.NET] Skip re-saving `.csproj` when TFM is unchanged
Avoids updating the platform-specific `TargetFramework` properties if they already match the minimum required version.
2025-03-06 18:49:08 +01:00
Pablo Andres Fuente 5775d29ad8 Fix `SCRIPT ERROR/ERROR/WARNING` on test output
Also "fixing" some GDScript completion tests which
where named wrongly.
2025-03-06 13:44:48 +01:00
HolonProduction f4172445f3 Add `_enable`/`_disable_plugin` to plugin script template 2025-03-06 11:41:21 +01:00
HolonProduction ca1e444bca GDScript: Do phrase level recovery when parsing faulty dictionaries 2025-03-06 11:35:56 +01:00
HolonProduction 676e4c9013 GDScript: Cancel suspended functions when reloading a script 2025-03-06 11:34:40 +01:00
Thaddeus Crews c81405d841
Merge pull request #102880 from mooflu/svg_artifacts_102839
Apply `fix_alpha_edges` for both theme icons and font glyphs.
2025-03-05 12:07:51 -06:00
Micky 8922a2f5a3 Reorder properties in NoiseTexture2D/3D 2025-03-05 14:55:59 +01:00
Olle Lukowski 3f1594ab90
Delete rendering device on the same thread it was created 2025-03-04 09:18:35 +01:00
Rémi Verschelde d5a494469d
Merge pull request #102576 from arkology/network-profiler-flow-container
Use `FlowContainer` for `EditorNetworkProfiler` bar
2025-03-04 01:00:20 +01:00
Rémi Verschelde a414fed4c5
Merge pull request #98034 from raulsntos/dotnet/variant-object-id
[.NET] Use `ObjectID` when converting `Variant` to `GodotObject`
2025-03-04 01:00:16 +01:00
Raul Santos 7dcad4c9ad
Move entries from `AnalyzerReleases.Unshipped.md` to `AnalyzerReleases.Shipped.md` 2025-03-04 00:35:42 +01:00
Rémi Verschelde 1c35a31b9e
Bump version to 4.5-dev
Mr. Godot told me to tell you he won't come this evening but surely tomorrow.
2025-03-03 17:27:40 +01:00
Pāvels Nadtočajevs ec10d38d2f Update HarfBuzz to 10.4.0 2025-03-03 07:55:00 +02:00
Jakub Marcowski 100001c807
ufbx: Update to 0.17.1 2025-03-02 11:37:32 +01:00
Mikael Hermansson 62e8b1e5fd Fix broken negative scaling when using Jolt Physics 2025-03-02 01:14:19 +01:00
Fredia Huya-Kouadio 33a235beb8 Inform that Android sensors must be enabled for MobileVR support 2025-02-27 12:53:57 -08:00
Rémi Verschelde dd43d401ec
Merge pull request #103338 from dsnopek/openxr-passthrough-emulation-wins
OpenXR: Emulated alpha blend mode should override the real blend mode
2025-02-27 12:40:36 +01:00
Pāvels Nadtočajevs ddd807ff7d Add `(void *)` cast directly to `GetProcAddress` calls. 2025-02-27 12:30:04 +02:00
David Snopek fd622afb1d OpenXR: Emulated alpha blend mode should override the real blend mode 2025-02-26 17:35:03 -06:00
Aaron Franke 0528d92d73
Fix compiling on arm64 Linux 2025-02-25 14:47:29 -08:00
Michael Alexsander aea559b39a
Allow to compile the engine without XR support 2025-02-25 17:07:21 -03:00
Thaddeus Crews 9f4ac3c0b0
Merge pull request #103259 from BlueCube3310/bcdec-fix-realign
bcdec: Fix unnecessary alignment of texture resolution when only one of its dimensions isn't divisible by 4
2025-02-24 19:52:21 -06:00
BlueCube3310 a22c16cf5c bcdec: Fix unnecessary alignment of texture resolution when only one of its dimensions isn't divisible by 4 2025-02-24 21:40:34 +01:00
Fabio Alessandrelli fe84b84b51 [mbedTLS] Enable TLS 1.3 negotiation by default 2025-02-24 14:04:09 +01:00
DE-YU_H14 b2b7c1fd77 Force include `TOOLS` in Editor to prevent data loss
Update modules/mono/editor/Godot.NET.Sdk/Godot.NET.Sdk/Sdk/Sdk.targets

Co-authored-by: Raul Santos <raulsntos@gmail.com>
2025-02-23 05:54:27 +08:00
Rémi Verschelde cbb22caa35
Merge pull request #102964 from akien-mga/mbedtls-2.28-compat
mbedtls: Don't set TLS max version on Mbed TLS < 3.0
2025-02-20 16:51:51 +01:00
A Thousand Ships fec3d9e68c
[Editor] Fix return of `EditorTranslationParserPlugin._parse_file`
Merged `_get_comments` into `_parse_file` and changed to using a
returned `Array[PackedStringArray]` instead.
2025-02-19 20:11:24 +01:00
Frank Becker 70a8421c30 Apply fix_alpha_edges for both theme icons and font glyphs.
Only apply fix_alpha_edges for SVG glyphs.
Allow modulate for svg glyphs.
2025-02-18 13:10:28 -08:00
Thaddeus Crews 7e5baa0426
Style: Enforce trailing newlines on svgs 2025-02-18 11:02:45 -06:00
Rémi Verschelde 5f8b5a34c6
mbedtls: Don't set TLS max version on Mbed TLS < 3.0
Relevant for Linux distribution packages which may link against system Mbed TLS.

Fixes #102957.
2025-02-17 17:51:15 +01:00
Rémi Verschelde 032cec51a7
Merge pull request #101958 from berarma/theora_fixes
Fix Theora video issues
2025-02-17 09:47:36 +01:00
Lukas Tenbrink 279505d8b0 Optimize `GDScriptLambdaCallable` by skipping the unnecessary `ObjectDB` lookup for `script`. 2025-02-16 20:52:09 +01:00
kobewi 012d47b089 Allow exporting variables of type Variant 2025-02-15 18:00:55 +01:00
Rémi Verschelde 5da66ebc57
Merge pull request #102861 from Faless/mp/enet_close_destroy
[ENet] Explicitely destroy hosts on close
2025-02-14 22:58:28 +01:00
Rémi Verschelde 7a0e659a80
Merge pull request #102836 from raulsntos/dotnet/export-tool-button-no-storage
[.NET] Disallow `[ExportToolButton]` on members thay may store the Callable
2025-02-14 22:58:25 +01:00
Rémi Verschelde 8add5838ac
Merge pull request #102774 from Faless/mbedtls/optional_tls1.3
[TLS] Disable TLSv1.3 support by default
2025-02-14 22:58:16 +01:00
Rémi Verschelde aeadefc1a2
Merge pull request #102579 from BlueCube3310/lightmap-denoise-region-expose
Lightmapper: Expose the JNLM denoiser region size in the project settings
2025-02-14 22:58:10 +01:00
David Snopek d9fbb1affb OpenXR: Expose more system info from `XrSystemProperties` 2025-02-14 14:03:20 -06:00
Fabio Alessandrelli 488cdbacdb [TLS] Disable TLSv1.3 support by default 2025-02-14 18:06:46 +01:00
Fabio Alessandrelli 062413fb30 [ENet] Explicitely destroy hosts on close
To ensure we free up the UDP port even if a script is holding a
reference to the underlying host, we need to explicitly destroy it on
close.
2025-02-14 15:51:03 +01:00
Raul Santos 2550cdc0c4
[.NET] Skip serializing delegates with a disposed target
When reloading assemblies, we serialize the managed delegates so we can recreate the callables later. If the delegate's target is a GodotObject that has already been disposed, we can't serialize the delegate.

Before this change, trying to serialize one of these delegates throws an exception and prevents releasing its strong GCHandle, so the assembly can't be unloaded.

With this change, we don't serialize the delegates and release them anyway. This means some delegates may get lost on reloading assemblies, but if their target was already freed it's probably fine.
2025-02-14 03:17:06 +01:00
DE-YU_H14 288e3e3af2 Improve documentation for C# typed collection wrappers 2025-02-14 08:19:58 +08:00
Raul Santos f4094b554d
[.NET] Disallow `[ExportToolButton]` on members thay may store the Callable
Ensures the user doesn't store the Callable so the .NET assembly can be reloaded.
2025-02-14 01:09:59 +01:00
HolonProduction c00518eec7 Autocompletion: Override context for preload 2025-02-13 22:56:06 +01:00
Thaddeus Crews b853aceece
Merge pull request #102286 from ryevdokimov/fix-collision-reposition-csgshape
Fix collision reposition with `CSGShape3D`
2025-02-13 10:15:41 -06:00
Thaddeus Crews d2c79f0cb3
Merge pull request #102754 from smix8/fix_navbase_dirty
Fix NavBase properties not requesting sync
2025-02-13 10:15:38 -06:00
Robert Yevdokimov 6f0a0ba408 Fix collision reposition with `CSGShape3D` 2025-02-13 19:31:58 +04:00
Bernat Arlandis 24278072a9 Replace memnew with instantiate 2025-02-13 15:34:00 +01:00
smix8 9dfeabc92a Add path query region filters
Adds filter lists to exclude or include specific regions in path queries.
2025-02-13 15:05:34 +01:00
BlueCube3310 7ed64ebd9a Lightmapper: Expose the JNLM denoiser region size in the project settings 2025-02-13 12:00:51 +01:00
Rémi Verschelde 26ac8ce50f ThorVG: Explicitly enable embedded texture support with THORVG_FILE_IO_SUPPORT
This was made opt-in in 0.15.6 so we need to define it now.

Co-authored-by: Pāvels Nadtočajevs <7645683+bruvzg@users.noreply.github.com>
2025-02-12 19:05:28 +01:00
Bernat Arlandis 00fb5c4df5 Crop image when doing color space conversion 2025-02-12 13:08:05 +01:00
smix8 98f5305d4b Fix NavBase properties not requesting sync
Fixes that setters of NavBase properties never made the link or region dirty and requested a sync.
2025-02-12 12:16:53 +01:00
Rémi Verschelde 9ac02ccbcb Merge pull request #102726 from mihe/jolt/thread-safe-errors
Skip `Object::to_string` when Jolt Physics is on separate thread
2025-02-11 23:59:40 +01:00
Rémi Verschelde 4f137bb1ad Merge pull request #102716 from Calinou/doc-control-layout-direction
Clarify the behavior of `Control.layout_direction` in the documentation
2025-02-11 23:59:33 +01:00
Rémi Verschelde 83b3c1e11e Merge pull request #102389 from Meorge/bugfix/unique-name-error
Display correct symbol in warning when unique name is used without @onready annotation
2025-02-11 23:59:01 +01:00
Mikael Hermansson 1006fa9c42 Skip `Object::to_string` when Jolt Physics is on separate thread 2025-02-11 22:55:32 +01:00
Hugo Locurcio 65c795eb35
Clarify the behavior of `Control.layout_direction` in the documentation 2025-02-11 16:56:22 +01:00
Thaddeus Crews c58e718cde
Merge pull request #101071 from mihe/jolt/less-query-allocations
Improve performance of certain physics queries when using Jolt Physics
2025-02-11 09:13:16 -06:00
Mikael Hermansson 5d2a54e6b1 Improve performance of certain physics queries when using Jolt Physics 2025-02-11 11:52:05 +01:00
Rémi Verschelde 172fc62c80 Merge pull request #102698 from HolonProduction/no-null-safety
Autocompletion: Account for invalid annotations when making arghint
2025-02-11 10:54:42 +01:00
HolonProduction 62eebf1266 Autocompletion: Account for invalid annotations when making arghint 2025-02-11 09:17:22 +01:00
Thaddeus Crews c90fd7f3da
Merge pull request #98066 from TCROC/fix-android-mono-export
Fix Android mono export with 2 or more cpu architectures fails
2025-02-10 12:21:32 -06:00
Travis Lange 5e2fd7b1d7 fix android mono export causing conflicts 2025-02-10 10:09:52 -05:00
Giganzo f7b6f98215 Fix MenuButton style in editor top menu bar 2025-02-10 10:03:54 +01:00
Pāvels Nadtočajevs 316b50ba8d [TextServer] Use all available space when string is too short for ellipsis. 2025-02-10 08:24:46 +02:00
arkology c7ef85a92f Use `FlowContainer` for `EditorNetworkProfiler` bar 2025-02-08 12:42:54 +03:00
Lukas Tenbrink e34f1f504c Use `std::size` instead of `sizeof(a) / sizeof(a[0])` pattern throughout the codebase. 2025-02-07 14:57:48 +01:00
Pāvels Nadtočajevs 7da0767f35 [TextEdit] Update syntax highlighting when IME composition string is updated. 2025-02-07 11:54:56 +02:00
Rémi Verschelde 5d037d3a24 Merge pull request #102477 from Calinou/lightmapgi-decrease-max-rays-per-pass
Decrease default Max Rays per Pass setting to 4 to fix some lightmapping crashes
2025-02-07 01:39:44 +01:00
Malcolm Anderson 8e8f93cf0c Display correct symbol in warning when unique name is used without @onready annotation
Add tests for `GET_NODE_DEFAULT_WITHOUT_ONREADY` warning with unique nodes

Small modifications to tests
2025-02-06 10:49:08 -08:00
Hugo Locurcio 0c4834b20f Decrease default Max Rays per Pass setting to 4 to fix some lightmapping crashes 2025-02-06 14:36:23 +01:00
HolonProduction d616ea5462 Fix enum value lookup jump 2025-02-06 10:04:01 +01:00
Rémi Verschelde 91907a89f7 Thirdparty: Harmonize patches to document downstream changes 2025-02-06 01:40:03 +01:00
Thaddeus Crews d3967e968b
Merge pull request #102264 from akien-mga/betsy-doc-cleanup
Betsy: Consolidate documentation in module folder and cleanup SCsub
2025-02-05 18:22:18 -06:00
Pāvels Nadtočajevs b50d9742c2 Fix `is_valid_float`, `Variant` parser, `Expression` parser, script highlighter, and `TextServer` not handing capital E in scientific notation. 2025-02-05 18:39:40 +02:00
bruvzg 3be46a69c4 Fix uppercase B and X parsing in the integer literals. 2025-02-05 16:02:06 +02:00
Rémi Verschelde 274cd2917d Merge pull request #102429 from akien-mga/revert-96499
Revert "Fixed resource loader using not fully loaded scripts"
2025-02-05 11:34:20 +01:00