Pedro J. Estébanez
9444d297ed
WorkerThreadPool: Overhaul scheduling and synchronization
...
This commits rewrites the sync logic in a way that the
`use_system_threads_for_low_priority_tasks` setting, which was added due to
the lack of a cross-platform wait-for-multiple-objects functionality, can be
removed (it's as if it was effectively hardcoded to `false`).
With the new implementation, we have the best of both worlds: threads don't
have to poll, plus no bespoke threads are used.
In addition, regarding deadlock prevention, since not every possible case of
wait-deadlock could be avoided, this commits removes the current best-effort
avoidance mechanisms and keeps only a simple, pessimistic way of detection.
It turns out that the only current user of deadlock prevention, ResourceLoader,
works fine with it and so every possible situation in resource loading is now
properly handled, with no possibilities of deadlocking. There's a comment in
the code with further details.
Lastly, a potential for load tasks never being awaited/disposed is cleared.
2024-01-08 12:45:42 +01:00
Yuri Sizov
b4fe310f7d
Merge pull request #86377 from timothyqiu/slider-drag
...
Emit slider's `drag_started` signal before the first value change
2023-12-22 17:20:05 +01:00
Yuri Sizov
84d4889fa0
Merge pull request #86345 from brno32/outline-size-docs
...
Add note that a large value for `Label.outline_size` is not recommended
2023-12-22 17:20:02 +01:00
Yuri Sizov
13d34d6a2b
Merge pull request #85923 from Calinou/editor-filesystem-dock-add-open-in-terminal
...
Add a editor FileSystem dock action to open a terminal in selected folder
2023-12-22 17:19:53 +01:00
Haoyu Qiu
58db3e5d7b
Emit slider's drag_started signal before the first value change
2023-12-21 11:23:35 +08:00
Yuri Sizov
3a8524dd92
Merge pull request #83452 from RandomShaper/rd_common
...
Split `RenderingDevice` into API-agnostic and `RenderingDeviceDriver` parts
2023-12-20 20:09:18 +01:00
Pedro J. Estébanez
12a519bae2
Split RenderingDevice into API-agnostic and RenderingDeviceDriver parts
...
Credit and thanks to @bruzvg for multiple build fixes, update of 3rd-party items and MinGW support.
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2023-12-20 19:18:08 +01:00
Alex Drozd
daa8942f41
Add note that a large value for outline_size is not recommended
2023-12-20 17:55:23 +01:00
Yuri Sizov
ed5a54d797
Merge pull request #86326 from MichaelMacha/patch-1
...
Remove pointer to deprecated class page from Skeleton3D
2023-12-20 15:08:14 +01:00
Yuri Sizov
e11e0a7f07
Merge pull request #84734 from Anutrix/node-doc-11112023
...
Add description to `AnimationNodeStateMachine.replace_node`
2023-12-20 15:07:36 +01:00
Yuri Sizov
bc6be82f5a
Merge pull request #81260 from KoBeWi/min_maxing_particle_editing
...
Improve editing of min/max particle properties
2023-12-20 15:07:25 +01:00
kobewi
ce9fec9b4d
Improve editing of min/max particle properties
2023-12-20 06:31:08 +01:00
Yuri Sizov
3ce73e5d41
Merge pull request #86331 from Calinou/doc-richtexteffect
...
Improve RichTextLabel `install_effect()` documentation
2023-12-19 20:33:13 +01:00
Yuri Sizov
dee2604d99
Merge pull request #84729 from nickyfoo/add-navigationserver-getters
...
Add missing getters to navigation servers
2023-12-19 20:32:46 +01:00
Yuri Sizov
179b8c7973
Merge pull request #84185 from bruvzg/lbl_char_rects
...
[Label] Add get_character_bounds method to get bounding rectangles of the characters.
2023-12-19 20:32:39 +01:00
Yuri Sizov
b9dff50282
Merge pull request #83785 from Geometror/graphedit-dotted-grid
...
Add dotted grid to GraphEdit
2023-12-19 20:32:35 +01:00
Nicholas Foo
e7ee672120
Add getters to navigation servers
...
Add virtual functions and bind to navigation servers
Implement getters
Add documentation
2023-12-19 19:51:49 +01:00
msreis
f1cc14d525
Fix missing time for some script functions in profiler
...
Fixes the issue by adding a mechanism by which the functions that were
previously disappearing can be profiled too. This is optional with
an editor setting, since collecting more information naturally slows the engine
further while profiling.
Fixes #23715 , #40251 , #29049
2023-12-19 19:42:21 +01:00
Hugo Locurcio
78fff7292c
Improve RichTextLabel install_effect()
documentation
2023-12-19 17:29:49 +01:00
Hugo Locurcio
0e97acff84
Add a editor FileSystem dock action to open a terminal in selected folder
...
This is useful to enter some commands without having to open a separate
terminal and `cd` to the project folder.
2023-12-19 15:04:02 +01:00
Yuri Sizov
02d4579fa2
Merge pull request #85000 from bruvzg/ed_ui_direction
...
[Editor] Add option to override editor UI layout direction.
2023-12-19 13:01:35 +01:00
Yuri Sizov
1ecba5d341
Merge pull request #84940 from Calinou/editor-textureprogressbar-inspector-hide-properties
...
Hide ineffective TextureProgressBar properties in the editor
2023-12-19 13:01:30 +01:00
Yuri Sizov
7aae85edfd
Merge pull request #84845 from DarkMessiah/tree-disabled-checkbox
...
Implement disabled state for Checkbox in Tree
2023-12-19 13:01:25 +01:00
Yuri Sizov
76fdc0adad
Merge pull request #84708 from bruvzg/winink_def
...
[Windows] Make Windows Ink tablet API default, add dummy driver to disable tablet input.
2023-12-19 13:01:14 +01:00
Yuri Sizov
714e27393a
Merge pull request #84652 from timothyqiu/enum-pun
...
Avoid punning enum names in documentation
2023-12-19 13:01:10 +01:00
bruvzg
e9c219cff2
[Label] Add get_character_bounds method to get bounding rectangles of the characters.
2023-12-19 13:53:21 +02:00
Michael Macha
0e52ffeb69
Remove pointer to deprecated class page, from Skeleton3D
...
SkeletonIK3D is now deprecated, but Skeleton3D is recommending looking into its use for complicated inverse kinematics. What's worse, the removed line is not perfectly clear for non-developers and people less experienced with the engine, and could still stand to be improved.
2023-12-19 04:46:34 -07:00
bruvzg
e01b22a69d
[Windows] Make Windows Ink tablet API default, add dummy driver to disable tablet input.
2023-12-18 22:36:54 +02:00
Yuri Sizov
a4d789370f
Merge pull request #85966 from Kimau/claire/expose_mouseover
...
Expose a method to get hovered Control in Viewport
2023-12-18 18:17:57 +01:00
Yuri Sizov
644e236e5c
Merge pull request #83987 from bruvzg/macos_window_and_help
...
[macOS] Add default Window and Help menus, allow special menu customization.
2023-12-18 18:17:41 +01:00
Yuri Sizov
80c3ed6845
Merge pull request #80487 from theraot/expose_set_global_name
...
Expose `Script.get_global_name()`
2023-12-18 18:17:30 +01:00
A Thousand Ships
0081a50e32
Prevent mapping areas with invalid IDs for Area2D/3D
...
This occurs when areas are created directly from the servers, and no
instance is linked.
2023-12-18 16:02:46 +01:00
Alfonso J. Ramos
e7e35e8366
Expose Script.get_global_name()
2023-12-18 15:13:09 +01:00
Claire Blackshaw
fe7725239e
Expose a method to get hovered Control in Viewport
2023-12-18 14:53:52 +01:00
Yuri Sizov
9c425c592f
Merge pull request #86161 from ZeferinoI/patch-1
...
Update the description of the method get_connection_list in GraphEdit
2023-12-16 17:50:01 +01:00
Yuri Sizov
1e86ce0b40
Merge pull request #85317 from miv391/fix-breaking-frame-index-in-sprites
...
Fix invalid `frame` index when Sprite2D's `hframes` or `vframes` has been changed
2023-12-16 17:49:38 +01:00
Yuri Sizov
4b258ccdd3
Merge pull request #82884 from KoBeWi/commit_message_cached,_please_refresh
...
Clarify some descriptions regarding resource cache
2023-12-16 17:49:20 +01:00
Yuri Sizov
d02b368fd6
Merge pull request #78095 from aaronfranke/dict-get-or-set-default
...
Add a `get_or_add` method to Dictionary
2023-12-16 17:49:10 +01:00
Mika Viskari
484c5b5aff
Fix invalid frame index when Sprite2D's hframes or vframes has been changed
2023-12-15 20:32:18 +02:00
Yuri Sizov
302e41c264
Merge pull request #82561 from ershn/fix_navigation_agents_is_target_reached_behavior
...
Make `target_desired_distance` affect the navigation of `NavigationAgent2D/3D`
2023-12-14 21:22:35 +01:00
Yuri Sizov
4cf6325aa1
Merge pull request #84660 from groud/better_tileset_polygons
...
Move tile transforms handling cache to TileData
2023-12-14 17:38:14 +01:00
Yuri Sizov
16d1d85a56
Merge pull request #78206 from alula/node-count-in-group
...
Add SceneTree.get_node_count_in_group()
2023-12-14 17:38:00 +01:00
ZeferinoI
53ab38a34e
Update the description of the method get_connection_line in GraphEdit.xml
...
The form should be like { from_port: 0, from_node: "GraphNode name 0", to_port: 1, to_node: "GraphNode name 1" }
2023-12-14 23:09:43 +08:00
bruvzg
0d44b50520
[macOS] Add default Window and Help menus, allow special menu customization.
2023-12-13 23:20:05 +02:00
Gilles Roudière
18fe0bd025
Move tile transforms handling cache to TileData
2023-12-13 17:44:59 +01:00
Rémi Verschelde
d3414d80bf
Merge pull request #86081 from KoTeYkA23/bindings-for-emulated-input-events
...
Add bindings for setting and getting emulation mouse from touch and touch from mouse in input
2023-12-13 10:33:36 +01:00
Rémi Verschelde
28220a3405
Merge pull request #86071 from Calinou/doc-time-scale-audioserver
...
Document `AudioServer.playback_speed_scale` in `Engine.time_scale`
2023-12-13 10:33:12 +01:00
CaTaTo
075a54bbcf
Add bindings for setting and getting emulation mouse from touch and touch from mouse in input
2023-12-13 08:07:36 +03:00
Rémi Verschelde
41365c6c8b
Merge pull request #70315 from RandomShaper/d3d12_mesa
...
Direct3D 12 Rendering Driver (Mesa NIR approach)
2023-12-12 21:58:57 +01:00
Pedro J. Estébanez
2f47c57385
Add Direct3D 12 RenderingDevice implementation
2023-12-12 19:10:04 +01:00