1
0
Fork 0
Commit Graph

7515 Commits

Author SHA1 Message Date
bruvzg 10f3c1f587
Add support for non-blocking IO mode to `OS.execute_with_pipe`. 2024-09-06 14:16:39 +03:00
Rémi Verschelde 05d985496c
Merge pull request #96593 from RandomShaper/res_changed_multiverse
ResourceLoader: Add thread-aware resource changed mechanism
2024-09-06 11:11:13 +02:00
Rémi Verschelde 58b3481eaf
Merge pull request #89649 from dalexeev/core-bind-and-doc-iter-virtual-methods
Core: Bind and document iterator API virtual methods
2024-09-06 11:10:58 +02:00
Pedro J. Estébanez 74b9c38d58 ResourceLoader: Add thread-aware resource changed mechanism 2024-09-06 08:57:09 +02:00
Rémi Verschelde a8e3feb788
Merge pull request #96244 from Repiteo/scons/msvc-__cplusplus
SCons: Pass `/Zc:__cplusplus` in MSVC builds
2024-09-05 19:42:51 +02:00
Rémi Verschelde 38447c545e
Merge pull request #93319 from 10Drenth/astar_jump_performance_improvement
Improve `AStarGrid2D` performance when jumping is enabled
2024-09-05 19:42:44 +02:00
Thaddeus Crews 4c84cb6ae8
SCons: Pass `/Zc:__cplusplus` in MSVC builds 2024-09-05 11:44:57 -05:00
Martijn 202e197717 Improve AStarGrid2D performance when jumping is enabled 2024-09-05 18:12:43 +02:00
Rémi Verschelde 4629f7d040
Merge pull request #96496 from aXu-AP/lerp-transform
Add support for Transform2D/3D in `lerp()`
2024-09-05 17:44:11 +02:00
Pedro J. Estébanez c450f4d667 ResourceLoader: Simplify handling of unregistered tasks 2024-09-05 09:54:03 +02:00
Ryan 8835f326b1 Expose get_rpc_config and get_node_rpc_config
add documentation

Update doc/classes/Node.xml

change name of get_node_rpc_config to get_rpc_config

Co-Authored-By: moondog <159832633+dog-on-moon@users.noreply.github.com>
Co-Authored-By: Micky <66727710+Mickeon@users.noreply.github.com>
2024-09-04 15:45:22 -04:00
Rémi Verschelde cb21a207b3
Merge pull request #96555 from dalexeev/doc-theme-items-deprecated-experimental
Docs: Add missing deprecated/experimental tag support for theme items
2024-09-04 18:55:49 +02:00
Thaddeus Crews 9853a69144
Implement typed dictionaries 2024-09-04 10:27:26 -05:00
Danil Alexeev 2dd043d1f6
Docs: Add missing deprecated/experimental tag support for theme items 2024-09-04 17:49:05 +03:00
Rémi Verschelde 906a4e9db9
Merge pull request #96525 from bruvzg/rem_gl_renderer_incl
Store GLES over GL status in the OS to avoid direct renderer includes in the editor.
2024-09-04 11:16:48 +02:00
Rémi Verschelde 69ca549ef9
Merge pull request #92570 from rune-scape/rune-stringname-bits
StringName: `operator==` compares in-place
2024-09-04 11:16:32 +02:00
rune-scape 6abd17265b StringName: operator== compares in-place 2024-09-03 17:31:08 -07:00
Rémi Verschelde 13a90e938f
Merge pull request #70096 from rune-scape/stringname-dict
StringName Dictionary keys
2024-09-03 17:38:06 +02:00
Rémi Verschelde d15de6f264
Merge pull request #96292 from AThousandShips/null_check_ref_fix
Cleanup of raw `nullptr` checks with `Ref`
2024-09-03 16:13:55 +02:00
aXu-AP 7218dd6a3a Add support for Transform2D/3D in lerp()
Implements godotengine/godot-proposals#10579
2024-09-03 16:59:15 +03:00
bruvzg d4e78b8db5
Store GLES over GL status in the OS to avoid direct renderer includes in the editor. 2024-09-03 16:11:59 +03:00
Rémi Verschelde 262c8da104
Merge pull request #95887 from bruvzg/sysinfo_drv
Update rendering driver name on fallbacks. Fix rendering driver/method in the editor system info.
2024-09-03 11:43:12 +02:00
Rémi Verschelde 866099684c
Merge pull request #92667 from Hilderin/fix-addon-requires-editor-restart
Fix Addon requires editor restart to become functional
2024-09-03 11:42:52 +02:00
Hilderin 7dd235905e Fix Addon requires editor restart to become functional 2024-09-02 16:54:45 -04:00
Rémi Verschelde 88197d4a51
Merge pull request #96462 from RandomShaper/opt_comp_loc
TranslationServer: Add fast path for comparison of equal locales
2024-09-02 12:14:01 +02:00
Rémi Verschelde 04f1977199
Merge pull request #96406 from Bromeon/bugfix/bool-in-header
Fix `bool` type appearing in GDExtension header
2024-09-02 12:13:42 +02:00
Pedro J. Estébanez cfb7443e26 TranslationServer: Add fast path for comparison of equal locales 2024-09-02 10:50:14 +02:00
bruvzg c273786758
Update rendering driver name on fallbacks. Fix rendering driver/method in the editor system info. 2024-09-01 18:22:40 +03:00
BlueCube3310 205a10e0ae Reduce code duplication in FileAccess 2024-09-01 12:39:32 +02:00
Jan Haller 82b2a58f4c Fix `bool` type appearing in GDExtension header 2024-08-31 22:40:48 +02:00
A Thousand Ships 194bdde947
Cleanup of raw `nullptr` checks with `Ref`
Using `is_valid/null` over checks with `nullptr` or `ERR_FAIL_NULL` etc.
2024-08-31 15:01:09 +02:00
Rémi Verschelde 52d1b0be4a
Merge pull request #96328 from object71/fix-animation-snap-96159
Add `modf` function and fix animation editor snap behavior
2024-08-30 23:38:02 +02:00
Rémi Verschelde 4c0ce657d5
Merge pull request #96322 from RandomShaper/wtp_info
WorkerThreadPool: Print info about thread count at startup
2024-08-30 23:37:58 +02:00
Danil Alexeev 49bcdf78a7
Core: Сheck `r_error` after calling `callp()` 2024-08-30 21:09:30 +03:00
Hristo Iliev fcc8518bce Add modf function and fix snap behavior
Fixes #96159
2024-08-30 17:49:57 +03:00
Pedro J. Estébanez db4672f83f WorkerThreadPool: Print info about thread count at startup 2024-08-30 13:04:46 +02:00
Rémi Verschelde a5830f6eb9
Merge pull request #96317 from Chaosus/objectdb_write_path_instead_of_name_at_cleanup
Write path instead of name at verbose output of leaked instances
2024-08-30 11:43:13 +02:00
Rémi Verschelde acc48797e1
Merge pull request #96303 from MBCX/huf-decompress-x64-only
zstd: Make sure `huf_decompress` is only applied to 64-bit x86.
2024-08-30 09:59:55 +02:00
Rémi Verschelde 909629d9f9
Merge pull request #96166 from AThousandShips/more_lock_raii
Use `MutexLock` in more places
2024-08-30 09:59:19 +02:00
Rémi Verschelde f0ee0bdd37
Merge pull request #93972 from Hilderin/fix-editor-needs-restart-after-adding-gdextensions
Fix editor needs restart after adding GDExtensions
2024-08-30 09:59:05 +02:00
Rémi Verschelde 4c6bac15a3
Merge pull request #92656 from fire/vsk-json-to-native-4.3
Ability to convert native engine types to JSON and back.
2024-08-30 09:58:57 +02:00
Chaosus 75055a8278 Write path instead of name at verbose output of leaked instances 2024-08-30 10:58:50 +03:00
Rémi Verschelde d5385491f6
Merge pull request #86183 from demolke/extras
Import/export GLTF extras to `node->meta` and back
2024-08-30 09:58:47 +02:00
MBCX 6b13236956 Make sure huf_decompress is only applied to 64-bit x86. 2024-08-29 17:12:09 -04:00
rune-scape 154049ce17 StringName Dictionary keys
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
K. S. Ernest (iFire) Lee 71bdbcdfb1 Ability to convert native engine types to JSON and back.
Implements support for all engine types in JSON encoding/decoding

Co-Authored-By: Juan <reduzio@gmail.com>
Co-Authored-By: Rémi Verschelde <rverschelde@gmail.com>
2024-08-29 10:57:15 -07:00
demolke c409e6d722 Import/export GLTF extras to node->meta
This is useful for custom tagging of objects with properties (for example in Blender) and having this available in the editor for scripting.

- Adds import logic to propagate the parsed GLTF extras all the way to the resulting Node->meta
- Adds export logic to save Godot Object meta into GLTF extras
- Supports `nodes`, `meshes` and `materials` (in GLTF sense of the words)
2024-08-29 19:17:04 +02:00
David Snopek 6d0a57c9fd Fix loading GDExtensions in exported games 2024-08-29 09:50:56 -05:00
A Thousand Ships e33fdb4296
Use `MutexLock` in more places 2024-08-29 14:12:59 +02:00
Hilderin ef6f873938 Fix editor needs restart after adding GDExtensions 2024-08-29 06:15:32 -04:00
Rémi Verschelde cb96fc95c3
Merge pull request #92316 from alula/msvc-clang
Add support for compiling with VS clang-cl toolset
2024-08-29 10:36:17 +02:00
Alula 346cbc7f1f
Add support for compiling with VS clang-cl toolset 2024-08-28 13:30:44 -05:00
Rémi Verschelde 622393c115
Merge pull request #95317 from esainane/when-i-am-64
binder_common: Fix uninitialized marshalling for `PtrToArg<char32_t>`
2024-08-28 17:15:05 +02:00
Rémi Verschelde e439154407
Merge pull request #96225 from RandomShaper/wtp_fix_yield
WorkerThreadPool: Fix end-of-yield logic potentially leading to deadlocks
2024-08-28 15:46:57 +02:00
Rémi Verschelde 9f05ca9fc5
Merge pull request #96218 from RandomShaper/res_loader_user_case
ResourceLoader: Handle another case of user tokens
2024-08-28 15:46:53 +02:00
Rémi Verschelde 8c5d1b42ab
Merge pull request #92530 from Naros/expose-resource-cache-get-ref
Expose `get_cached_ref` from `ResourceCache`
2024-08-28 15:46:35 +02:00
Pedro J. Estébanez 5dade0e08b WorkerThreadPool: Fix end-of-yield logic potentially leading to deadlocks 2024-08-28 15:26:08 +02:00
Pedro J. Estébanez 0441c67de6 ResourceLoader: Handle another case of user tokens 2024-08-28 13:53:39 +02:00
Rémi Verschelde de7d4b6f5b
Merge pull request #94920 from gongpha/bring-back-print-verbose-when-loading-resources
Fix ResourceLoader is not printing a resource path on loading when `verbose_stdout` is enabled
2024-08-28 00:12:38 +02:00
Rémi Verschelde 56ffcabae1
Merge pull request #94792 from akien-mga/core-remove-poolallocator
Core: Remove unused PoolAllocator
2024-08-28 00:12:20 +02:00
Rémi Verschelde 71accb9008
Merge pull request #94679 from rune-scape/remove-unused-initialize_ref
Remove unused `initialize_ref`
2024-08-28 00:12:16 +02:00
Rémi Verschelde 3e8d051a4a
Merge pull request #94068 from dalexeev/core-remove-is-gpl-reversed
Core: Remove unused method `_is_gpl_reversed()`
2024-08-28 00:11:58 +02:00
Rémi Verschelde 330fca1ffd
Merge pull request #93985 from alvinhochun/windows-gpu-pref
Respect integrated GPU preference in Windows Settings
2024-08-28 00:11:45 +02:00
Rémi Verschelde 2fadd095a7
Merge pull request #93893 from Togira123/fix-rand-weighted-return-value
Fix `rand_weighted` incorrectly returning -1
2024-08-28 00:11:35 +02:00
Rémi Verschelde 1e6b6eaf49
Merge pull request #92123 from timothyqiu/estimate-end
Change param name of AStar's `_estimate_cost` method
2024-08-28 00:10:47 +02:00
Rémi Verschelde 9c7cf5440c
Merge pull request #91868 from Chaosus/astargrid_get_point_positions_in_region
Add a method to retrieve all points within a region to `AStarGrid2D`
2024-08-28 00:10:42 +02:00
Kongfa Waroros bfb5570c03 Fix ResourceLoader is not verbosely printing a resource path on loading 2024-08-28 03:37:51 +07:00
Rémi Verschelde 012ccbc301
Merge pull request #95048 from KoBeWi/keep_the_party_going
Add `keep_screen_on` editor setting
2024-08-27 22:27:35 +02:00
Rémi Verschelde 8ae2c3a000
Merge pull request #93605 from RadiantUwU/thread-barriers
Add optional count argument to `Semaphore::post`
2024-08-27 22:27:21 +02:00
Rémi Verschelde 6e3320446a
Merge pull request #92799 from BlueCube3310/image-detech-signed
Image: Add a method for detecting signed values
2024-08-27 22:27:18 +02:00
Danil Alexeev be5068d44b
Core: Bind and document iterator API virtual methods 2024-08-27 21:57:22 +03:00
Rémi Verschelde 142d33211c
Merge pull request #96173 from Repiteo/core/fix-unreachable-code
Core: Fix unreachable code
2024-08-27 17:52:47 +02:00
Rémi Verschelde 431c5839fe
Merge pull request #96168 from CreatedBySeb/remove-user-prefix
Remove confusing USER prefix from script-logged errors
2024-08-27 17:52:40 +02:00
Thaddeus Crews 231f3323d3
Core: Fix unreachable code 2024-08-27 10:26:06 -05:00
Radiant 6311ee5bd5 Add optional count argument to Sempahore::post
Co-authored-by: RandomShaper <RandomShaper@users.noreply.github.com>
Co-authored-by: A Thousand Ships (she/her) <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Mickeon <Mickeon@users.noreply.github.com>
2024-08-27 18:18:01 +03:00
Rémi Verschelde 9dfc41568a
Merge pull request #95984 from timothyqiu/what-identifier
Add `String.is_valid_unicode_identifier()`
2024-08-27 16:55:06 +02:00
Sébastien Dunne Fulmer c3ed8a842c
Remove confusing USER prefix from script-logged errors 2024-08-27 15:00:48 +01:00
Danil Alexeev 2d8f6c1b1d
GDScript: Fix message when calling non-tool function in tool mode 2024-08-27 12:30:15 +03:00
BlueCube3310 76c8211653 Image: Add a method for detecting signed values 2024-08-27 09:23:17 +02:00
Haoyu Qiu 8bf4ecc026 Add `String.is_valid_unicode_identifier()`
- Adds `is_valid_unicode_identifier()`
- Adds `is_valid_ascii_identifier()`
- Deprecates `is_valid_identifier()`
- Renames `validate_identifier()` to `validate_ascii_identifier()`
2024-08-27 11:34:08 +08:00
Rémi Verschelde 2e825c7d9c
Merge pull request #93141 from RadiantUwU/add_static_classdb_calls
Implement `ClassDB::class_call_static_method`
2024-08-26 23:28:36 +02:00
Rémi Verschelde c7702b350a
Merge pull request #92548 from AThousandShips/string_cleaning
[Core] Optimize some `String` methods
2024-08-26 23:28:24 +02:00
Rémi Verschelde ac5a528620
Merge pull request #84944 from KoBeWi/legacy_of_ancient_godots
Fix some legacy code
2024-08-26 23:28:14 +02:00
Rémi Verschelde 8019cdb444
Merge pull request #94137 from Craig-Stoneham/master
Improve template class conditionals with constexpr (code style)
2024-08-26 22:45:17 +02:00
Rémi Verschelde ce44c91223
Merge pull request #93739 from AThousandShips/lock_unlock
[Core] Allow locking/unlocking of `MutexLock`
2024-08-26 22:45:13 +02:00
Rémi Verschelde 0f16336be0
Merge pull request #93526 from m4gr3d/add_apksigner_util
[Android Editor] Add support for exporting platform binaries
2024-08-26 22:45:09 +02:00
Rémi Verschelde b78da13e2a
Merge pull request #93064 from Hilderin/fix-fileSystem-dock-wont-show-any-file-folders
Fix FileSystem dock won't show any file folders (v2)
2024-08-26 22:45:04 +02:00
Rémi Verschelde 8dad1ba482
Merge pull request #92933 from TokageItLab/match-concatenating
Match the coding style for concatenating String
2024-08-26 22:44:59 +02:00
Fredia Huya-Kouadio 794ea99240 Update the storage access handler logic to support accessing / retrieving contents with the `assets:/` prefix 2024-08-26 11:16:37 -07:00
Pedro J. Estébanez 9cbc3f1419 Change warning muting so it affects all levels, but locally 2024-08-26 13:13:29 +02:00
A Thousand Ships 723f5500f4
[Core] Allow locking/unlocking of `MutexLock` 2024-08-26 12:38:03 +02:00
Rémi Verschelde 0ba0be27c7
Merge pull request #94169 from RandomShaper/wtp_rl_prize
Batch of fixes for `WorkerThreadPool` and `ResourceLoader`
2024-08-26 10:51:25 +02:00
Rémi Verschelde 04f6321ecc
Merge pull request #91166 from raulsntos/gdextension/loader
GDExtension: Implement `GDExtensionLoader` concept
2024-08-26 10:51:21 +02:00
Rémi Verschelde b4f268fae8
Merge pull request #91018 from Daylily-Zeleen/daylily-zeleen/optionally_postinitialization_for_extension_owner
Allow ClassDB to create a Object without postinitialization for GDExtension.
2024-08-26 10:51:17 +02:00
Craig-Stoneham 604df4fc83 Improve Template Class Conditionals (Code Style)
Refactored the following template classes by replacing runtime checks with compile-time checks using if constexpr for improved code clarity and maintainability:

- RID_Alloc
- SortArray
- PagedAllocator

Changes made:

- Updated conditional checks for THREAD_SAFE in the RID_Alloc class.
- Updated conditional checks for Validate in the SortArray class.
- Updated conditional checks for thread_safe in the PagedAllocator class.
2024-08-25 18:10:51 +01:00
Matias N. Goldberg 59d0422dcd Disable extra memory tracking by default
PR #90993 added several debugging utilities.

Among them, advanced memory tracking through the use of custom
allocators and VK_EXT_device_memory_report.

However as issue #95967 reveals, it is dangerous to leave it on by
default because drivers (or even the Vulkan loader) can too easily
accidentally break custom allocators by allocating memory through std
malloc but then request us to deallocate it (or viceversa).

This PR fixes the following problems:
 - Adds --extra-gpu-memory-tracking cmd line argument
 - Adds missing enum entries to
RenderingContextDriverVulkan::VkTrackedObjectType
 - Adds RenderingDevice::get_driver_and_device_memory_report
    - GDScript users can easily check via print(
RenderingServer.get_rendering_device().get_driver_and_device_memory_report()
)
- Uses get_driver_and_device_memory_report on device lost for appending
further info.

Fixes #95967
2024-08-24 20:52:39 -03:00
Radiant 02fc4bbc2a Implement `ClassDB::class_call_static_method` 2024-08-23 02:56:29 +03:00
Raul Santos 4dd6e8eca5
GDExtension: Implement `GDExtensionLoader` concept
- Implements the concept of GDExtension loaders that can be used to customize how GDExtensions are loaded and initialized.
- Moves the parsing of `.gdextension` config files to the new `GDExtensionLibraryLoader`.
- `GDExtensionManager` is now meant to be the main way to load/unload extensions and can optionally take a `GDExtensionLoader`.
- `EditorFileSystem` avoids unloading extensions if the file still exists, this should prevent unloading extensions that are outside the user project.
2024-08-22 05:29:11 +02:00
Rémi Verschelde 568589c9d8
Merge pull request #90993 from darksylinc/matias-TheForge
Add debug utilities for Vulkan
2024-08-22 00:38:22 +02:00
Rémi Verschelde 39b77ea04e
Merge pull request #95790 from aaronfranke/rect-aabb-support
Simplify Rect2/AABB `get_support` function
2024-08-22 00:10:39 +02:00