1
0
Fork 0
Commit Graph

12393 Commits

Author SHA1 Message Date
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
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
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