Pedro J. Estébanez
9653bcaa43
WorkerThreadPool: Polish yielding (fix corner case, remove misleading warning)
2024-04-17 18:32:14 +02:00
Rémi Verschelde
56dfed4efd
Merge pull request #90751 from dalexeev/core-marshalls-fix-objects-as-id-in-typed-arrays
...
Core: Fix binary serialization of objects in typed arrays
2024-04-17 10:59:01 +02:00
Chris Cranford
d0fa2c3cfa
Defer call to set_break_language
2024-04-16 20:01:53 -04:00
Danil Alexeev
27b94eb44c
Core: Fix binary serialization of objects in typed arrays
...
* Allow typed arrays to be encoded even if `p_full_objects` is `false`.
* Use `Array[EncodedObjectAsID]` instead of the encoded element type
when decoding an array if `p_allow_objects` is `false`.
2024-04-16 16:19:10 +03:00
Rémi Verschelde
0ae1dcc3d2
Merge pull request #90741 from yorickdewid/patch-1
...
Fix missing return in `StreamPeerTCP::poll` when connection is `STATUS_CONNECTED`
2024-04-16 13:31:03 +02:00
Rémi Verschelde
dc8e82b00a
Merge pull request #90730 from timothyqiu/root-auto-translate
...
Add project setting for root node auto translate mode
2024-04-16 13:31:00 +02:00
Rémi Verschelde
7210d6cb43
Merge pull request #90358 from KoBeWi/finding_errors_in_other_apps
...
Add `OS.get_process_exit_code()` method
2024-04-16 13:30:41 +02:00
Aaron Franke
e83807ef85
Fix incorrect name of Basis global scale getter
2024-04-16 04:26:52 -07:00
kobewi
dce4a3e4c2
Add get_process_exit_code() method
2024-04-16 12:46:15 +02:00
Yorick de Wid
61a2f5c534
FIX: Return if TCP is in STATUS_CONNECTED
...
If the `StreamPeerTCP` is polled and the TCP connection is `STATUS_CONNECTED` it should return after polling netsocket. Without `return` poll keeps calling `_sock->connect_to_host` and `connect()`.
2024-04-16 10:32:11 +02:00
Haoyu Qiu
8d1cb7e74c
Add project setting for root node auto translate mode
2024-04-16 11:02:04 +08:00
Per Melin
89d0934f71
Delaunay3D: Improve triangulation
2024-04-15 18:48:21 +02:00
Danil Alexeev
3c62f5fe5c
Core: Fix `RefCounted` handling in `marshalls.cpp`
2024-04-15 13:53:40 +03:00
Rémi Verschelde
c951421c99
Merge pull request #90268 from RandomShaper/wtp_servers
...
Use WorkerThreadPool for Server threads (enhanced)
2024-04-15 10:12:00 +02:00
Rémi Verschelde
50fd380359
Merge pull request #90562 from bruvzg/fix_links
...
[Unix / DirAccess] Fix removing directory symlinks with `remove`, ensure `erase_contents_recursive` is not following directory symlinks.
2024-04-15 10:00:22 +02:00
A Thousand Ships
80cb914e06
[Core] Fix incorrect comparison for `Array` const iterator
2024-04-13 17:32:33 +02:00
ajreckof
ca020ad8cd
Fix load subtask not being registered leading to false progress values.
2024-04-13 01:42:29 +02:00
bruvzg
88b3e68f93
[FileAccess] Implement `resize` method.
2024-04-12 19:20:49 +03:00
bruvzg
57fde36f31
[Unix / DirAccess] Fix removing directory symlinks with `remove`, ensure `erase_contents_recursive` is not following directory symlinks.
2024-04-12 10:06:49 +03:00
Thaddeus Crews
127025679b
Core: Use `<type_traits>` where applicable
2024-04-11 13:13:59 -05:00
Rémi Verschelde
58f8a227b9
Merge pull request #90482 from Faless/mbedtls/3.6.0-tls
...
mbedTLS: Update to new LTS v3.6.0
2024-04-11 11:02:46 +02:00
Rémi Verschelde
8ec0372f01
Merge pull request #90470 from RandomShaper/fix_cmd_queue_mt_reentrancy
...
CommandQueueMT: Fix flush re-entrancy
2024-04-11 11:02:42 +02:00
Rémi Verschelde
e73f40e260
Merge pull request #87117 from DmitriySalnikov/rename_pdb
...
Add renaming of PDB files to avoid blocking them
2024-04-11 11:02:31 +02:00
Lyuma
40fa684c18
mbedTLS: Update to new LTS v3.6.0
...
Keep module compatibility with mbedtls 2.x (old LTS branch).
A patch has been added to allow compiling after removing all the `psa_*`
files from the library folder (will look into upstreaming it).
Note: mbedTLS 3.6 finally enabled TLSv1.3 by default, but it requires
some module changes, and to enable PSA crypto (new "standard" API
specification), so it might be best done in a separate commit/PR.
2024-04-10 21:19:22 +02:00
Juan Linietsky
65686dedf9
Use WorkerThreadPool for Server threads
...
* Servers now use WorkerThreadPool for background computation.
* This helps keep the number of threads used fixed at all times.
* It also ensures everything works on HTML5 with threads.
* And makes it easier to support disabling threads for also HTML5.
CommandQueueMT now syncs with the servers via the WorkerThreadPool
yielding mechanism, which makes its classic main sync semaphore
superfluous.
Also, some warnings about calls that kill performance when using
threaded rendering are removed because there's a mechanism that
warns about that in a more general fashion.
Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2024-04-10 18:47:42 +02:00
Pedro J. Estébanez
1b104ffcd8
WorkerThreadPool: Support daemon-like tasks (via yield semantics)
2024-04-10 18:47:42 +02:00
Pedro J. Estébanez
71facbaa88
WorkerThreadPool: Fix data race
2024-04-10 18:47:41 +02:00
Rémi Verschelde
8764769ee8
Merge pull request #89186 from groud/save_byte_arrays_as_base64_encoded
...
Save PackedByteArrays as base64 encoded
2024-04-10 17:49:24 +02:00
A Thousand Ships
64146cb7f3
[Core] Add iteration support to `Array`
2024-04-10 14:49:34 +02:00
clayjohn
c0d0bdc160
Clarify bounce and reflect docs and update param names
2024-04-10 14:07:08 +02:00
Pedro J. Estébanez
114b14b0fa
CommandQueueMT: Fix flush re-entrancy
2024-04-10 10:02:30 +02:00
Rémi Verschelde
bff6955459
Merge pull request #85024 from Jordyfel/moving-scripts-of-types-of-exported-typed-arrays
...
When saving a resource with an exported typed array, check whether the type is an external resource
2024-04-09 22:25:00 +02:00
David Snopek
87aec2745d
Fix GDExtension hot reload for classes not created via `ClassDB::instantiate()`
2024-04-09 13:40:33 -05:00
Jordyfel
82de00a174
Type of exported typed array can be external resource
2024-04-09 15:28:42 +03:00
Rémi Verschelde
6772047e50
Sync controller mappings DB with SDL 2 community repo
...
Synced with mdqinc/SDL_GameControllerDB@4c9b8dace8
2024-04-08 22:22:30 +02:00
Rémi Verschelde
97b5c142f8
Merge pull request #90269 from KoBeWi/sir,_your_file_cannot_be_opened
...
Ignore `ERR_FILE_CANT_OPEN` error when loading
2024-04-08 11:38:15 +02:00
Rémi Verschelde
9738cc7ef2
Merge pull request #90335 from Faless/io/marshall_nil_script
...
[IO] Fix marshall decoding when script is NIL
2024-04-08 11:21:50 +02:00
Rémi Verschelde
7d96ec4f9d
Merge pull request #88329 from ManpreetXSingh/key-window-menu
...
Windows: Add support for enabling Alt+Space menu and fix borderless maximize
2024-04-08 11:20:05 +02:00
Fabio Alessandrelli
8addab785d
[IO] Fix marshall decoding when script is NIL
...
We changed how scripts are binary serialized, and added a check to
ensure the new format is enforced, but there is still a case where the
old format (plain "prop"-"value" combo) is used, and that is when the
script is NIL.
2024-04-07 09:55:15 +02:00
Rémi Verschelde
dd9aacd59f
Merge pull request #90273 from Pylgos/fix-gdextension-get-rid
...
Fix `Resource::get_rid override` not working in GDExtension
2024-04-06 13:06:50 +02:00
Rémi Verschelde
c1b2cfdced
Merge pull request #90271 from DarioSamo/pipeline_cache_setting
...
Add toggle for enabling or disabling RenderingDevice's pipeline cache.
2024-04-06 13:06:47 +02:00
Manpreet Singh
329d04d331
Windows: Add alt+space menu and fix window modes
2024-04-06 16:26:19 +05:30
Haoyu Qiu
9bcda8f94c
Prefer family name in fonts' names table
2024-04-06 16:08:59 +08:00
Pylgos
c2be2dfbde
Fix Resource::get_rid override not working in GDExtension
2024-04-06 01:27:16 +09:00
Dario
ecaafa6001
Add toggle for enabling or disabling RenderingDevice's pipeline cache.
2024-04-05 13:14:07 -03:00
kobewi
f0cbd388dc
Ignore ERR_FILE_CANT_OPEN error when loading scene
2024-04-05 17:51:27 +02:00
Rémi Verschelde
0ff056ea2e
Merge pull request #90218 from Repiteo/do-while-false-cleanup
...
Update lingering `do/while(0)` defines
2024-04-05 12:16:34 +02:00
Rémi Verschelde
d100888f0d
Merge pull request #90208 from Repiteo/scons/ninja-msvc
...
SCons: Fix Ninja compilation with MSVC
2024-04-05 12:16:22 +02:00
DmitriySalnikov
b73e740786
Add renaming of PDB files to avoid blocking them
2024-04-05 00:14:23 +03:00
Thaddeus Crews
bbb3eb3a1a
Update lingering `do/while(0)` defines
2024-04-04 14:17:22 -05:00
Thaddeus Crews
7918d50297
SCons: Fix Ninja compilation with MSVC
2024-04-04 10:16:33 -05:00
Thaddeus Crews
b0cda1f85f
Core: Use fixed-width integer types in Variant
2024-04-04 08:54:11 -05:00
Rémi Verschelde
c5ac5d2308
Merge pull request #90063 from aaronfranke/really-floaty
...
Fix some uses of `float` and `real_t` in `core/math`
2024-04-04 14:36:57 +02:00
Rémi Verschelde
c8088c100f
Merge pull request #90038 from AThousandShips/load_path
...
[Core] Fix `ResourceLoader.load` cache with relative paths
2024-04-04 14:36:51 +02:00
Rémi Verschelde
3fdc169751
Merge pull request #89889 from BoThompson/compute_image_metrics-fix
...
Remove a redundant `MAX` comparison within a loop in `compute_image_metrics`.
2024-04-04 14:35:17 +02:00
Rémi Verschelde
7fa97f37fb
Merge pull request #89452 from Riteo/name-a-better-duo
...
SCons: Enable the experimental Ninja backend and minimize timestamp changes to generated code
2024-04-04 14:31:24 +02:00
Rémi Verschelde
69a4ff8996
Merge pull request #88328 from Khasehemwy/reversed-z
...
Use Reverse Z for the depth buffer
2024-04-04 14:30:53 +02:00
Rémi Verschelde
a1ab287010
Merge pull request #88047 from theashtronaut/add_partial_return_astar
...
Add a partial path return option for astar
2024-04-04 14:30:49 +02:00
Rémi Verschelde
406d9426cb
Merge pull request #86121 from lawnjelly/occlusion_cull_jitter
...
Jitter raster occlusion camera to reduce false positives.
2024-04-04 14:30:42 +02:00
Rémi Verschelde
84b3d14c9a
Merge pull request #82852 from timothyqiu/property-context
...
Add context support for editor property name i18n
2024-04-04 14:30:29 +02:00
Rémi Verschelde
ec5cae37d6
Merge pull request #78219 from dalexeev/core-typed-arrays-bin-serialization
...
Core: Add typed array support for binary serialization
2024-04-04 14:30:22 +02:00
Khasehemwy
d950f5f838
Use Reverse Z for the depth buffer
2024-04-04 13:54:15 +02:00
ashley
aa1bbe1542
add partial path return option for astar
...
* AStar2D, AStar3D and AStarGrid2D now can return a partial path if the destination point isn't reachable but still in the map. This option is available for both get_point_path and get_id_path
2024-04-03 22:27:33 -07:00
lawnjelly
691854d589
Jitter raster occlusion camera to reduce false positives.
...
Due to the low resolution of the occlusion buffer, small gaps between occluders can be closed and incorrectly occlude instances which should show through the gaps. To ameliorate this problem, this PR jitters the occlusion buffer over time, making it more likely an instance will be seen through a gap. This is used in conjunction with an occlusion timer per instance, to prevent instances flickering on and off rapidly.
2024-04-03 12:18:45 +01:00
Haoyu Qiu
479b7afa8e
Add context support for editor property name i18n
2024-03-31 18:40:14 +08:00
A Thousand Ships
0274877def
[Core] Fix `ResourceLoader.load` cache with relative paths
...
Paths were not simplified meaning that `res://foo.bar` was treated
differently from `./foo.bar` and similar
2024-03-30 12:50:08 +01:00
Aaron Franke
158fcf107c
Fix some uses of float and real_t in core/math
2024-03-29 16:44:12 -07:00
Bo Thompson
75d65195ae
Remove a redundant `MAX` comparison within a loop in `compute_image_metrics`
2024-03-28 22:23:15 +01:00
Rémi Verschelde
237479ffe8
Merge pull request #89946 from wlsnmrk/action-press-strength-clamp
...
Fix `Input.action_press()` accepting out-of-bounds strength values
2024-03-28 10:47:31 +01:00
Mark Wilson
41e70db8b1
Fix action_press() by clamping strength to 0, 1
...
Changed Input.action_press() treatment of strength parameter to match
behavior of InputEventAction and documentation, by clamping between 0
and 1. Fixes Input.get_action_strength() returning values over 1 when
large values are passed to Input.action_press().
2024-03-27 11:17:40 -04:00
bruvzg
082b420c0a
Implement `OS.execute_with_pipe` method to run process with redirected stdio.
...
Implement `pipe://*` path handling for creation of named pipes.
2024-03-27 11:41:16 +02:00
Rémi Verschelde
f371913a32
Merge pull request #89679 from enetheru/patch-3
...
Properly skip printing version header with `--no-header`
2024-03-26 13:45:28 +01:00
Rémi Verschelde
23f55c06fb
Merge pull request #89677 from enetheru/patch-2
...
Print correct path when unable to find GDExtension library
2024-03-26 13:45:25 +01:00
Rémi Verschelde
9335b83a32
Merge pull request #87831 from Riteo/bitfield-xor
...
Core: Implement a XOR operator for BitField
2024-03-26 13:45:02 +01:00
Samuel Nicholas
93559db3a2
Properly skip printing version header with `--no-header`
...
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-03-26 11:41:13 +01:00
Samuel Nicholas
5f89b15098
Print correct path when unable to find GDExtension library
2024-03-26 00:13:56 +01:00
Rémi Verschelde
f371b7fb70
Merge pull request #87883 from TontonSancho/text-skip-occurence
...
Add 'Skip to next (text) occurrence' feature to text editor
2024-03-25 13:15:56 +01:00
Rémi Verschelde
c41da69ed7
Merge pull request #89863 from ppphp/resource_format_override
...
Add `override` mark to ResourceFormat class
2024-03-25 11:18:57 +01:00
Rémi Verschelde
89c70da7bd
Merge pull request #89858 from AThousandShips/utf_fix
...
[Buildsystem] Fix encoding when reading files
2024-03-25 11:18:54 +01:00
Christophe Andral
c988bec4b3
Add 'Skip to next (text) occurrence' feature to text editor
...
Adds `ui_text_skip_selection_for_next_occurrence` action and related implementation to text editor.
This action is bound `Ctrl+Alt+D` shorcut.
Used in conjonction with `ui_add_skip_selection_for_next_occurrence`, it gives the user the ability to select many occurrences of a selection
and avoid some of them.
Used without a previous selection, the action jumps to the next occurrence of the current word under the caret.
2024-03-25 11:12:28 +01:00
ppphp
d4e1a74efb
Add 'override' mark to ResourceFormat class
2024-03-25 04:06:34 +08:00
A Thousand Ships
4933fa8bf5
[Buildsystem] Fix encoding when reading files
2024-03-24 18:02:56 +01:00
A Thousand Ships
bb6305d1c4
[Core] Fix incorrect file sort method
2024-03-24 17:54:57 +01:00
Rémi Verschelde
8f9136963d
Merge pull request #89671 from alesliehughes/string_underrun
...
Stop possible underrun when processing a string
2024-03-24 01:21:12 +01:00
Rémi Verschelde
c258da378b
Merge pull request #89619 from AThousandShips/rand_fix
...
[Core] Fix `rand_weighted` not using the current state
2024-03-24 01:19:20 +01:00
Rémi Verschelde
5940fd5d07
Merge pull request #89526 from Calinou/inputevent-add-emulation-internal-constants
...
Expose `DEVICE_ID_EMULATION` constant in InputEvent
2024-03-24 01:16:34 +01:00
Rémi Verschelde
48cf825839
Merge pull request #89451 from AThousandShips/emit_fix
...
[Core] Disconnect one-shot signals before calling callbacks
2024-03-24 01:15:52 +01:00
Rémi Verschelde
d5f944ff10
Merge pull request #89261 from paulloz/core/fix-script-reloading-outside-script-editor
...
Fix how scripts reload outside of ScriptEditor
2024-03-24 01:15:23 +01:00
Rémi Verschelde
f49efbe0e5
Merge pull request #89229 from akien-mga/main-refactor-os-exit-code
...
Refactor OS exit code to be `EXIT_SUCCESS` by default
2024-03-24 01:15:06 +01:00
Rémi Verschelde
cd4e4c0fcc
Merge pull request #89111 from AThousandShips/vec_use
...
Use `Vector*` component-wise `min/max/clamp` functions where applicable
2024-03-24 01:14:51 +01:00
Rémi Verschelde
e92806c7e7
Merge pull request #88424 from rburing/fti_2d
...
Physics interpolation (2D)
2024-03-24 01:13:53 +01:00
Ricardo Buring
2ed2ccc2d8
Fixed Timestep Interpolation (2D)
...
Adds fixed timestep interpolation to the rendering server (2D only).
Switchable on and off with a project setting (default is off).
Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-03-23 12:28:36 +01:00
A Thousand Ships
db455e5bee
[Core] Disconnect one-shot signals before calling callbacks
...
This prevents infinite recursion with one-shot connections emitting
themselves
2024-03-20 20:24:44 +01:00
A Thousand Ships
79ba22a73f
Use `Vector*` component-wise `min/max/clamp` functions where applicable
2024-03-20 13:47:42 +01:00
A Thousand Ships
2cbf469912
Fix sorting of files/dirs in dialogs
...
Sorts leading `_` before other characters except `.`.
2024-03-20 13:45:47 +01:00
Danil Alexeev
c30bec7fca
Core: Add typed array support for binary serialization
2024-03-20 11:37:41 +03:00
Alistair Leslie-Hughes
87fe71f52f
Stop possible underrun when processing a string
...
Calling String::utf8("Unicode String", -1) assumes that the string will be NULL terminated.
However, the length parameter is always used to find the end of the string. So there is the
chance the character before th start of the string is read.
Making the pointer NULL in the case where it's out of range, still allows the following
to work as expected
while (ptrtmp != ptrtmp_limit && *ptrtmp)
....
2024-03-19 20:17:11 +11:00
Paul Joannon
63674648fb
Fix how scripts reload outside of ScriptEditor
2024-03-18 10:29:06 +01:00
A Thousand Ships
9c518d5f42
[Core] Fix `rand_weighted` not using the current state
...
The method incorrectly used `Math::randf` instead of `randf`
2024-03-17 19:21:16 +01:00
Hugo Locurcio
6818e50adc
Expose `DEVICE_ID_EMULATION` constant in InputEvent
...
This also improves the documentation related to emulated InputEvents.
2024-03-16 19:16:40 +01:00