Commit graph

8054 commits

Author SHA1 Message Date
Rémi Verschelde
f6b9d445b5
Merge pull request #80285 from YeldhamDev/just_a_little_bit
Further separate icon from text of buttons in both editor and default themes
2023-08-09 15:20:25 +02:00
Markus Sauermann
59c13fea5d Fix nodes receiving mouse events in black bars of Window
Previously for InputEvents there was no distinction between
Window-area and Viewport-area.
This was problematic in cases where stretching was used and the Window
contained black bars at the sides of the Viewport.
This PR separates the area of Window and Viewport regarding InputEvents.
2023-08-09 12:34:22 +02:00
Hugo Locurcio
c751f190c9
Document RenderingServer.get_video_adapter_name() may report a fixed name
Firefox will always report the user's GPU as a GeForce GTX 980 in
an attempt to make fingerprinting more difficult.
This is not the case in Chromium-based browsers though.
2023-08-09 11:43:22 +02:00
Gio
15aa04314d
Consistency for NodePath doc code examples
Just makes a code example in NodePath.xml similar to the others
2023-08-09 17:20:30 +08:00
kobewi
c5ec847aa0 Add settings_changed signal to ProjectSettings 2023-08-08 23:57:31 +02:00
bruvzg
8aa6f29b56
[FileAccess] Add methods to get/set "hidden" and "read-only" attributes on macOS/BSD and Windows. 2023-08-08 21:51:32 +03:00
Rémi Verschelde
1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
Michael Alexsander
98bdb56815
Further separate icon from text of buttons in both editor and default themes 2023-08-07 13:22:39 -03:00
smix8
8686e84b44 Add multi-threaded NavMesh baking to NavigationServer
Adds multi-threaded NavMesh baking to NavigationServer.
2023-08-07 17:14:37 +02:00
Rémi Verschelde
01758ea4ce
Merge pull request #80264 from AttackButton/doc-current_scene
Clarify `SceneTree.current_scene` functionality
2023-08-07 14:52:46 +02:00
Rémi Verschelde
5146096869
Merge pull request #80254 from marcospb19/edit-description-of-node3d-basis
Clarify relationship between `basis` and `transform` properties of `Node3D`
2023-08-07 14:51:11 +02:00
Rémi Verschelde
75976a282a
Merge pull request #79933 from SamDevelopsCode/softbody3d-documentation-update
Document `linear_stiffness` in SoftBody3D
2023-08-07 14:49:34 +02:00
Rémi Verschelde
7eb047a5ed
Merge pull request #79643 from smix8/navgenerator_4.x
Move navigation mesh baking to NavigationServer
2023-08-07 14:48:15 +02:00
Rémi Verschelde
5fc0d71ecd
Merge pull request #78266 from Faolan-Rad/master
Move registration of `fallbacks` property in the base Font class
2023-08-07 14:44:09 +02:00
Rémi Verschelde
3fa5a15a2c
Merge pull request #72091 from MewPurPur/fix-nearest-po2
Improve documentation of `nearest_po2()`
2023-08-07 14:42:49 +02:00
AttackButton
b02d25605d Clarify SceneTree.current_scene functionality 2023-08-07 14:34:20 +02:00
Faolan
b3b791350b
Move registration of fallbacks property in the base Font class 2023-08-07 13:46:44 +02:00
Rémi Verschelde
faaf27f284
Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
João Marcos
9e6da4e00e
Clarify relationship between basis and transform properties of Node3D 2023-08-07 12:13:22 +02:00
clayjohn
57eb762bae Add option to enable HDR rendering in 2D
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance

Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
samdevelopscode
7ca6e94c36 Add description for SoftBody3D linear_stiffness property 2023-08-07 01:20:06 -05:00
Yuri Sizov
dc6ea03101
Merge pull request #35555 from Calinou/add-version-project-setting
Add a "version" project setting and use it in new export presets
2023-08-04 21:01:15 +02:00
Rémi Verschelde
bf299233bc
Merge pull request #80245 from timothyqiu/float-color-alpha
Fix wrong example output of `float*Color` in classref
2023-08-04 16:59:31 +02:00
Rémi Verschelde
8e0c898fc3
Merge pull request #80243 from timothyqiu/classref-typos
Fix various typos in classref
2023-08-04 16:59:27 +02:00
Rémi Verschelde
b8fa19cc19
Merge pull request #79495 from Chaosus/astargrid_all_solid
Add a `fill_region` method to the `AStarGrid2D`
2023-08-04 16:59:11 +02:00
Haoyu Qiu
54f26c66ab Fix wrong example output of float*Color in classref 2023-08-04 17:00:40 +08:00
Haoyu Qiu
097c849395 Fix various typos in classref 2023-08-04 16:29:55 +08:00
Hugo Locurcio
ad4480bf2e
Add a "version" project setting and use it in new export presets
This makes it easy to retrieve the project version at runtime
for display purposes, while simplifying the export preset configuration.
You can now leave the version empty unless you need to override it on a per-preset
basis.

Since export presets save the values of default values to the `export_presets.cfg`
file, this change only affects export presets created after this commit was merged.
2023-08-04 10:29:33 +02:00
Luke Hubmayer-Werner
9e844cc0c8 PulseAudio: Remove get_latency() caching 2023-08-04 15:35:13 +09:30
Yuri Sizov
1610fc2ae7 Merge pull request #78539 from EIREXE/input-info
Add the ability to get per-platform information for joypads
2023-08-03 22:37:45 +02:00
Yuri Sizov
a56e960150 Merge pull request #71233 from PrecisionRender/barycentric-coords
Add ability to get face index and barycentric coordinates from raycast
2023-08-03 22:37:30 +02:00
smix8
744fa87da2 Move navigation mesh baking to NavigationServer
Moves navigation mesh baking to NavigationServer.
2023-08-03 19:49:07 +02:00
Rémi Verschelde
df57d0b569
Merge pull request #80141 from Mickeon/doc-peeves-boolwing
Overhaul bool documentation
2023-08-03 18:33:53 +02:00
Rémi Verschelde
c97e4a31ac
Merge pull request #80217 from Mickeon/oops-rects
Revert incorrect `Rect2.expand` description.
2023-08-03 15:12:45 +02:00
Micky
f17d3a66fe Revert incorrect Rect2.expand description.
Also affects Rect2i of course.
2023-08-03 14:59:07 +02:00
Rémi Verschelde
f9d960c925
Merge pull request #80178 from YeldhamDev/override_all_the_things
Expose `Window`'s `_get_contents_minimum_size()` to scripting
2023-08-03 14:46:52 +02:00
Rémi Verschelde
ae8f1015e0
Merge pull request #79064 from MewPurPur/rename-button-pressed-THIS-IS-NOT-A-COMPAT-BREAK
Rename `button_pressed` default signal binding to avoid shadowing
2023-08-03 14:46:39 +02:00
Mounir Tohami
2cec27a3f1 Add shortcut handling to OptionButton 2023-08-03 08:38:20 +00:00
Álex Román Núñez
3aa340d081 Add the ability to get per-platform information for joypads.
This adds the ability for games to obtain platform-specific information about joypads such as their vendor/product ID, their XInput gamepad index or the real name of the device before it gets swapped out by the gamecontrollerdb's name.

This PR also includes a rebased version of #76045, this is because this PR is intended to be mainly to help people implementing Steam Input, as having the gamepad index is essential.
2023-08-02 22:30:30 +02:00
PrecisionRender
af7f787c6e Add ability to get barycentric coordinates from ray 2023-08-02 15:16:44 -05:00
Michael Alexsander
f270163ab0
Expose Window's _get_contents_minimum_size() to scripting 2023-08-02 14:40:38 -03:00
RedMser
84a2778e28 Simpler default values for AudioStreamRandomizer 2023-08-02 17:20:40 +02:00
Rémi Verschelde
f5b2d7d393
Merge pull request #79774 from aaronfranke/scene-import-root-type-name
Improve overriding the root type or root name in the scene importer
2023-08-02 12:19:34 +02:00
Rémi Verschelde
d8cbb6d645
Merge pull request #79563 from danny88881/drag-and-drop-text-setting
Add drag'n'drop text option for `LineEdit` and `RichTextLabel`
2023-08-02 12:17:56 +02:00
Rémi Verschelde
2a9aaae8a5
Merge pull request #79293 from ItsNL/add-accept-dialog-close-on-unfocused
Check `FLAG_POPUP` to close an AcceptDialog when parent is focused
2023-08-02 12:17:06 +02:00
Rémi Verschelde
df616c9a17
Merge pull request #69816 from Mickeon/doc-peeves-rect2m
Overhaul Rect2 & Rect2i Documentation
2023-08-02 12:14:53 +02:00
Micky
69146f6b30 Overlay bool documentation 2023-08-02 09:54:20 +02:00
Aaron Franke
aa187d8d69
Improve overriding the root type or root name in the scene importer 2023-08-01 13:30:57 -05:00
Micky
ce95c83622 Overhaul Rect2 & Rect2i Documentation 2023-08-01 20:08:43 +02:00
Yuri Sizov
f37d192860 Merge pull request #80109 from timothyqiu/not-markdown
Fix invalid use of markdown syntax in classref
2023-08-01 20:04:00 +02:00
Yuri Sizov
defaac6058 Merge pull request #67791 from Sauermann/fix-visual-mouse-notifications
Refactor mouse_entered and mouse_exited signals
2023-08-01 20:03:33 +02:00
Yuri Sizov
f4b6bc0913 Merge pull request #79962 from viksl/update-tween-docs
Update C# example of `tween_method` with a parameter to the lambda method
2023-08-01 17:25:48 +02:00
Yuri Sizov
cc1ee3e599 Merge pull request #79911 from BastiaanOlij/fix_barrier_breakage
Add exceptions for breakage introduced in RD barriers
2023-08-01 17:25:40 +02:00
Yuri Sizov
1c40263665 Merge pull request #79606 from clayjohn/ShaderRD-compilation-groups
Shader rd compilation groups
2023-08-01 17:25:16 +02:00
Haoyu Qiu
c4b5161ed1 Fix invalid use of markdown syntax in classref
Also:
* changed `[b]true[/b]` to `[code]true[/code]`
* use `[i]` for mathematical constant "e"
* use `[b]` for button text & menu item text
* improve markups about "tap1" and "tap2" in AudioEffectDelay
2023-08-01 22:44:31 +08:00
Markus Sauermann
1c3c17c608 Refactor mouse_entered and mouse_exited notifications
The previous implementation for signals mouse_entered and mouse_exited
had shortcomings that relate to focused windows and pressed mouse buttons.
For example a Control can be hovered by mouse, even if it is occluded by
an embedded window.

This patch changes the behavior, so that Control and Viewport send
their mouse-enter/exit-notifications based solely on mouse position,
visible area, and input restrictions and not on which window has
focus or which mouse buttons are pressed. This implicitly also
changes when the mouse_entered and mouse_exited signals are sent.

This functionality can not be implemented as a part of
Viewport::_gui_input_event, because of its interplay with Windows and
because Viewport::_gui_input_event is based on input and not on
visibility.
2023-08-01 13:28:49 +02:00
Marcin Nowak
34ab1c8a36 Implement loading DDS textures at run-time 2023-07-31 21:31:26 +02:00
Yuri Sizov
dcd187da95 Merge pull request #80066 from timothyqiu/no-pun-intended
Avoid punning `[param enabled]` in documentation
2023-07-31 21:01:50 +02:00
Yuri Sizov
3de7dd902c Merge pull request #79880 from dalexeev/gds-fix-id-shadowing-below
GDScript: Fix bug with identifier shadowed below in current scope
2023-07-31 21:01:36 +02:00
Yuri Sizov
79d3468246 Merge pull request #79696 from reduz/call-on-render-thread
Add ability to call code on rendering thread
2023-07-31 21:01:21 +02:00
Haoyu Qiu
f3dc1bc7c2 Avoid punning [param enabled] in documentation 2023-07-31 00:31:23 +08:00
viksl
45b757e5df Update C# example of tween_method in Tween class with a parameter to the lambda method 2023-07-28 13:46:33 +02:00
detomon
d275a7487d Initialize MSDF parameters in BaseMaterial3D with default 2023-07-28 13:24:44 +02:00
Bastiaan Olij
10f796dae3 Add exceptions for breakage introduced in RD barriers and prevent future breakage 2023-07-28 14:21:34 +10:00
Hugo Locurcio
4cab77094a
Add a --max-fps command-line argument to set a FPS limit
This allows limiting framerate on any project, which is useful to
reduce power usage and latency with certain setups (such as VRR displays).

This is particularly useful in projects that do not expose a setting to change
the FPS limit. While external FPS limiters can be used, they can be cumbersome
to set up and result in increased input lag compared to a built-in FPS limiter.
2023-07-28 02:51:27 +02:00
Yuri Sizov
da81ca62a5
Merge pull request #79405 from Calinou/doc-import-options
Fill in descriptions for import options in the class reference
2023-07-27 20:32:04 +02:00
Hugo Locurcio
bc58a8a34e Fill in descriptions for import options in the class reference 2023-07-27 19:18:27 +02:00
Yuri Sizov
6c11fcd01a
Merge pull request #74717 from KoBeWi/tilesetmap_handler_plugin
Add separate editor plugin for TileMap and TileSet
2023-07-27 19:11:37 +02:00
Yuri Sizov
7a9a0dc51f Merge pull request #79934 from Sauermann/fix-mousefilter-doc
Add note about mouse movement input events in `MouseFilter` constants
2023-07-27 15:22:50 +02:00
Yuri Sizov
1fe49e7271 Merge pull request #79142 from BastiaanOlij/register_render_buffers
Expose RenderSceneBuffers(RD) through ClassDB
2023-07-27 15:22:27 +02:00
Yuri Sizov
37c3e2e55b Merge pull request #68259 from konczg/openxr_extension_wrapper_gdextension
Add GDExtension support for OpenXR extension wrappers
2023-07-27 15:22:22 +02:00
Yuri Sizov
0c2399d6ec Merge pull request #63826 from deakcor/dev_clipboard
Add `clipboard_has/get_image` methods to DisplayServer
2023-07-27 15:22:16 +02:00
Yuri Sizov
41a7f6b380
Merge pull request #77537 from henriquelalves/feature/ei_save_all_scenes
Expose `save_all_scenes` method to EditorInterface
2023-07-26 23:43:08 +02:00
Markus Sauermann
3330f2cf2f Add note about mouse movement input events in MouseFilter constants 2023-07-26 19:33:40 +02:00
Yuri Sizov
e25a368133 Merge pull request #79401 from smix8/navagent_desc_4.x
Add detail to NavigationAgent signal descriptions
2023-07-26 18:40:10 +02:00
Yuri Sizov
d49ea2b7d8 Merge pull request #79288 from BastiaanOlij/custom_texture_api
Add custom texture create function
2023-07-26 18:40:01 +02:00
Yuri Sizov
67873d0d5d Merge pull request #79248 from Sauermann/fix-svc-focus-propagation
Make `SubViewportContainer` event propagation aware of focused Control
2023-07-26 18:39:57 +02:00
Yuri Sizov
6f6f7db911 Merge pull request #79129 from smix8/navbase_enabled_4.x
Add NavigationServer API to enable regions and links
2023-07-26 18:39:47 +02:00
Yuri Sizov
e8df8c5e2c Merge pull request #78988 from RandomShaper/fix_change_scene
Reimplement scene change
2023-07-26 18:39:43 +02:00
Yuri Sizov
c4e582262f Merge pull request #76582 from reduz/threaded-debugger
Support threads in the script debugger
2023-07-26 18:39:16 +02:00
Yuri Sizov
1ad95f27ab Merge pull request #72664 from paddy-exe/additional-vs-nodes
Add more useful Visual Shader nodes
2023-07-26 18:39:12 +02:00
Yuri Sizov
3bc842b1b1 Merge pull request #54524 from Calinou/animation-editor-add-bypass-confirmation
Skip keyframe creation dialog when holding Shift in the animation editor
2023-07-26 18:39:01 +02:00
kobewi
ec24d50469 Add separate editor plugin for TileMap and TileSet 2023-07-26 17:23:41 +02:00
Bastiaan Olij
4874b96033 Expose RenderingSceneBuffers through ClassDB 2023-07-26 23:48:30 +10:00
Bastiaan Olij
63d6e9c557 Add custom texture create function 2023-07-26 20:46:34 +10:00
Juan Linietsky
c7fb6cea3d Add ability to call code on rendering thread
As more users use compute in Godot 4, the way they do is most likely incompatible when running
on separate threads and will start erroring soon as we improve the thread safety of the render thread.

To properly run code on the render thread, this function was added. Use like this:

```GDScript

func initialize_compute_code():
	....

func update_compute_code(custom_data):
	...

func _ready():
	RenderingServer.call_on_render_thread( initialize_compute_code )

func _process():
	RenderingServer.call_on_render_thread( update_compute_code.bind(with_data) )

```
2023-07-26 12:28:00 +02:00
Juan Linietsky
5e512b705e Support threads in the script debugger
* This implementation adds threads on the side of the client (script debugger).
* Some functions of the debugger are optimized.
* The profile is also now thread safe using atomics.
* The editor can switch between multiple threads when debugging.

This PR adds threaded support for the script language debugger. Every thread has its own thread local data and it will connect to the debugger using multiple thread IDs.
This means that, now, the editor can receive multiple threads entering debug mode at the same time.
2023-07-26 12:06:45 +02:00
Gabor Koncz
d600e6eb1b Add GDExtension support for OpenXR extension wrappers
This commit adds the classes OpenXRExtensionWrapperExtension and OpenXRAPIExtension
that can be used in GDExtensions to define OpenXR extension wrappers.
It modifies extension wrapper registration so that they can be registered
before OpenXRAPI instantiation (e.g. in core level initialization of GDExtensions).

Developed by Migeran (https://migeran.com)
2023-07-26 10:27:14 +02:00
Danil Alexeev
d53fc92b4c
GDScript: Fix bug with identifier shadowed below in current scope 2023-07-26 11:26:57 +03:00
smix8
69fad39cf5 Add NavigationServer API to enable regions and links
Adds NavigationServer API to enable regions and links.
2023-07-26 01:20:15 +02:00
Patrick
65b0989f68 Additional Visual Shader Nodes
* RotationByAxis Visual Shader Node added
* WorldPositionFromDepth Visual Shader Node added
* ScreenNormalWorldSpace Visual Shader Node added
2023-07-26 00:39:12 +02:00
smix8
99e70ab6ef Add detail to NavigationAgent signal descriptions
Adds detail to NavigationAgent signal descriptions.
2023-07-25 23:35:03 +02:00
Yuri Sizov
a581bf0a24 Merge pull request #79879 from KoBeWi/the_tweenld
Improve and clarify paused Tweens
2023-07-25 21:51:35 +02:00
Yuri Sizov
9d118c28b4 Merge pull request #79794 from DarthKitten2130/master
Update outdated C# code sample in `AStarGrid2D` documentation
2023-07-25 21:26:20 +02:00
Yuri Sizov
ee1be950a1 Merge pull request #79786 from smix8/navmesh_max_edge_len_4.x
Disable NavigationMesh `edge_max_length` property by default
2023-07-25 21:26:16 +02:00
Yuri Sizov
8ba8b9581a Merge pull request #79764 from kulkalkul/fix_docs_set_multiplayer_authority_propagate
Clarify `set_multiplayer_authority` documentation regarding propagation
2023-07-25 21:26:13 +02:00
Yuri Sizov
d60f42a64e Merge pull request #79720 from clayjohn/Particles-emitting-docs
Add detail to emitting docs for particles
2023-07-25 21:26:06 +02:00
Yuri Sizov
4b0d1026af Merge pull request #78365 from smix8/ps_navmap_default_up_4.x
Add ProjectSettings navigation map default up
2023-07-25 21:25:50 +02:00
kobewi
dbecf8bd1a Improve and clarify paused Tweens 2023-07-25 13:29:30 +02:00
Yuri Sizov
bec47cdbbc Merge pull request #79846 from Faless/web/no_body_length
[Web] Always return -1 as body length in HTTPClientWeb
2023-07-24 19:33:48 +02:00
Yuri Sizov
3ca4943fdc Merge pull request #79781 from AThousandShips/doc_dim_fix
Fix some mixups between 2D/3D in documentation
2023-07-24 19:33:31 +02:00
Yuri Sizov
9199649c40 Merge pull request #79656 from josefalanga/master
Clarify when the `changed` signal is emitted for `Resource` and `Material`
2023-07-24 19:33:01 +02:00
Yuri Sizov
2f4c962929 Merge pull request #79434 from Calinou/2d-editor-allow-float-bone-size
Allow using floating-point bone sizes and outline widths in the 2D editor
2023-07-24 19:32:42 +02:00
Yuri Sizov
fb2c3ae8f7 Merge pull request #79308 from Geometror/refactor-graphedit
Clean up/refactor GraphEdit
2023-07-24 19:32:33 +02:00
Yuri Sizov
52078dc994 Merge pull request #79157 from smix8/navmesh_clear_4.x
Add `clear` function to NavigationMesh / NavigationPolygon
2023-07-24 19:32:24 +02:00
Yuri Sizov
c3727c35d1 Merge pull request #74382 from RedMser/feature-profile-api
Allow changing feature profile via `EditorInterface`
2023-07-24 19:32:16 +02:00
Yuri Sizov
2bd904e3db Merge pull request #73196 from Vilcrow/fix-lookup-symbol
Fix jumping to function definition using `Ctrl+LMB` or the "Lookup Symbol" button
2023-07-24 19:32:12 +02:00
RedMser
8e0e81ced3 Allow changing feature profile via EditorInterface 2023-07-24 18:46:36 +02:00
Hendrik Brucker
a38fd09669 Clean up/refactor GraphEdit 2023-07-24 18:37:23 +02:00
Yuri Sizov
91258e52be
Merge pull request #79307 from Geometror/remove-graph-node-comment
Remove GraphNode's comment property and related functionality
2023-07-24 16:56:41 +02:00
Jose Falanga
bf62fb059c Clarify when the changed signal is emitted for Resource and ShaderMaterial 2023-07-24 10:31:57 -03:00
Fabio Alessandrelli
f4713d235a [Web] Always return -1 as body length in HTTPClientWeb.
Body length cannot be reliably retrieved from the web.
Reading the "content-length" value will return a meaningless value when
the response is compressed, as reading will return uncompressed chunks
in any case, resulting in a mismatch between the detected body size and
the actual size returned by repeatedly calling read_response_body_chunk.

Additionally, while "content-length" is considered a safe CORS header,
"content-encoding" is not, so using the "content-encoding" to decide if
"content-length" is meaningful is not an option either.

We simply must accept the fact that browsers are awful when it comes to
networking APIs.
2023-07-24 08:57:02 +02:00
Ninni Pipping
7512d88e22 Fix some mixups between 2D/3D in documentation 2023-07-23 09:02:52 +02:00
Sathvik Mulukutla
5b3f14cc82
Updated Deprecated Method in C# Example Size to Region 2023-07-22 22:04:38 +05:30
smix8
c63125c317 Disable NavigationMesh edge_max_length property by default
Disables NavigationMesh edge_max_length property by default.
2023-07-22 14:09:15 +02:00
Bora
7280d1d4f0 Fix docs set_multiplayer_authority on propagation 2023-07-22 00:24:40 +03:00
Yuri Sizov
6588a4a29a Merge pull request #79661 from sepTN/fix-typo-batch
Fix many typos in documentation
2023-07-21 17:55:06 +02:00
Yuri Sizov
818d90f1e5 Merge pull request #79353 from sepTN/fix-docs-for-consistency
Fix documentation for consistency
2023-07-21 17:54:26 +02:00
Yuri Sizov
ac0204b201 Merge pull request #78328 from groud/tilemap_layers_as_another_class
Move TileMap layers to their own class
2023-07-21 17:15:18 +02:00
clayjohn
e970f5249c Add Shader compile groups to RD Shader system
This allows us to specify a subset of variants to compile at load time and conditionally other variants later.

This works seamlessly with shader caching.

Needed to ensure that users only pay the cost for variants they use
2023-07-21 16:42:30 +02:00
clayjohn
e52e46036e Add detail to emitting docs for particles
Highlight when emitting will and won't restart emission
2023-07-21 11:43:03 +02:00
Gilles Roudière
d6379e9a93 Move TileMap layers to their own class 2023-07-20 17:23:38 +02:00
Yuri Roubinski
01101134f4 Make the dragging connections more user-friendly in visual shaders 2023-07-20 15:00:19 +03:00
unknown
cfe98c57b9 Add drag and drop option for line edit and rich text label 2023-07-19 22:18:34 -04:00
Henrique Alves
8ef2e3d76c Add save_all_scenes method to Editor Interface
Update documentation

(squash) fix docs

(squash) Improve docs
2023-07-19 18:05:15 +03:00
NL
a77d8b3eb5 Check FLAG_POPUP to close an AcceptDialog when parent is focused 2023-07-19 16:06:02 +02:00
Septian
2857b91385 Fix many typos in documentation 2023-07-19 19:56:06 +07:00
Yuri Sizov
8f175a8649
Merge pull request #78958 from m4gr3d/refactor_android_plugin_packaging_main
Re-architect how Android plugins are packaged and handled at export time
2023-07-18 20:47:41 +02:00
Fredia Huya-Kouadio
d17811c814 Re-architect how Android plugins are packaged and handled at export time
The previous packaging format for Godot Android plugins consisted of the plugin's `gdap` config file accompanied by binaries defined in the `gdap` file.
This format is now deprecated (starting with Godot 4.2), and instead Godot Android plugins are now packaged as `EditorExportPlugin` plugins.

The `EditorExportPlugin` class has been updated with the following methods to provide the necessary set of functionality:
- `_supports_platform`: returns true if the plugin supports the given platform
- `_get_android_dependencies`: retrieve the set of android dependencies (e.g: `org.godot.example:my-plugin:0.0.0`) provided by the plugin
- `_get_android_dependencies_maven_repos`: retrieve the urls of the maven repos for the provided android dependencies
- `_get_android_libraries`: retrieve the local paths of the android libraries (AAR files) provided by the plugin
- `_get_android_manifest_activity_element_contents`: update the contents of the `<activity>` element in the generated Android manifest
- `_get_android_manifest_application_element_contents`: update the contents of the `<application>` element in the generated Android manifest
- `_get_android_manifest_element_contents`: update the contents of the `<manifest>` element in the generated Android manifest
2023-07-18 19:14:53 +02:00
Yuri Sizov
e8aa8c17d2
Merge pull request #79574 from bruvzg/win_nat_d
[Windows] Implement native file selection dialog support.
2023-07-18 19:04:40 +02:00
bruvzg
d3ca91ad6a [Windows] Implement native file selection dialog support. 2023-07-18 17:23:58 +03:00
kobewi
b883f32188 Check for unsaved changes when closing a scene 2023-07-18 14:27:56 +02:00
kobewi
6dc5dc3479 Add _get_unsaved_status() method to EditorPlugin 2023-07-18 14:18:36 +02:00
Yuri Sizov
d70488892c Merge pull request #79483 from smix8/nav2d_pj_props_4.x
Change 2D navigation ProjectSettings from integers to floats
2023-07-18 13:15:23 +02:00
Vincent D
c13e3a9fb0 add clipboard get image methods for windows and macos
Co-Authored-By: RedworkDE <10944644+RedworkDE@users.noreply.github.com>
Co-Authored-By: bruvzg <7645683+bruvzg@users.noreply.github.com>
2023-07-17 23:47:27 +02:00
Markus Sauermann
e6386bc843 Make SubViewportContainer event propagation aware of focused Control
Propagate `InputEvents` without position either
- during the Input-stage, when it has focus or
- during the Unhandled-Input-stage, otherwise

This makes sure that Gui-Input happens in the correct order.

Move "Unhandled key Input" handling before "Unhandled Input" handling,
so that Unicode input with Alt / Ctrl modifiers are sent to the nodes
in the correct order.

Change the default focus mode of `SubViewportContainer` from
`FOCUS_NONE` to `FOCUS_CLICK`, to automatically remove focus from
other `Control`-nodes, when clicking inside a `SubViewport`.
2023-07-17 22:38:35 +02:00
kobewi
de4a3fa151 Unify and streamline connecting to Resource changes 2023-07-17 19:35:57 +02:00
Yuri Sizov
3d04a22d7c
Merge pull request #79103 from AThousandShips/array_slice_range
Fix range error for `Array.slice`
2023-07-17 16:48:48 +02:00
Hugo Locurcio
a39190a18f
Allow using floating-point bone sizes and outline widths in the 2D editor
This is useful when animating pixel art sprites in the 2D editor,
as a value of `1` is often too large when zoomed in.
2023-07-17 12:44:09 +02:00
Hugo Locurcio
5e117ee7bf
Skip keyframe creation dialog when holding Shift in the animation editor
The editor setting to always bypass the confirmation dialog was removed,
since the new shortcut effectively supersedes it in a more granular way.
2023-07-17 12:09:32 +02:00
Yuri Roubinski
5f56aa88f8 Add the fill region methods to the AStarGrid2D 2023-07-15 16:52:29 +03:00
Bastiaan Olij
a22f495a3c Split raster barrier into vertex and fragment barrier 2023-07-15 12:30:32 +10:00
smix8
2852fb43f7 Change 2D navigation ProjectSettings from integers to floats
Changes 2D navigation ProjectSettings from integers to floats.
2023-07-14 22:36:06 +02:00
Yuri Sizov
5f23b8b916 Merge pull request #78451 from alula/integer-zoom
Add option to swap default Alt+scroll zooming behavior in 2D editor
2023-07-14 21:27:54 +02:00
Yuri Sizov
0f7625ab46 Merge pull request #76859 from HolonProduction/emission-finished-gpu
Add `finished` signal to GPUParticles
2023-07-14 18:50:56 +02:00
Yuri Sizov
a91f0e6bca Merge pull request #76853 from HolonProduction/emission_finished
Add `finished` signal to CPUParticles
2023-07-14 18:50:51 +02:00
Yuri Sizov
d8c0d63f07 Merge pull request #79393 from Sauermann/fix-window-focux-indicator
Add a default theme for unfocused Windows
2023-07-14 18:50:01 +02:00
Yuri Sizov
892bc5f966 Merge pull request #79330 from mihe/ray-cast-back-faces
Add `hit_back_faces` property to `RayCast3D`
2023-07-14 18:49:49 +02:00
Yuri Sizov
5c56206e6c Merge pull request #79011 from bruvzg/pop_all
[RTL] Add `pop_all`, `push_context` and `pop_context` methods, and use it for `print_rich` to avoid unclosed tags.
2023-07-14 18:49:21 +02:00
Markus Sauermann
576980f960 Add a default theme for unfocused Windows
At the moment it is impossible to distinguish between focused and
unfocused embedded Windows.
Add a new `theme_item` that is used for coloring the border of
unfocused Windows.
2023-07-12 22:35:03 +02:00
bruvzg
4790da7900
[macOS] Implement optional native file selection dialog support for sandboxed apps. 2023-07-12 22:36:24 +03:00
Yuri Sizov
ff689003a5 Merge pull request #77993 from bruvzg/key_lbl_from_p
Implement DisplayServer.keyboard_get_label_from_physical method.
2023-07-12 21:02:37 +02:00
Yuri Sizov
a927b22f65 Merge pull request #77257 from rakkarage/tile_animation_sync
Add `TileSetAtlasSource::TileAnimationMode` options and allow to shuffle tile animations
2023-07-12 21:02:31 +02:00
Yuri Sizov
0fa808ba5e Merge pull request #77085 from BastiaanOlij/visualise_direction_shadowmap_frustum
Draw frustum splices ontop of direction shadow atlas for debug purposes
2023-07-12 21:02:25 +02:00
S.V.I. Vilcrow
56e2fad319 Fixed the jumping to function definition using 'Ctrl+LMB' and the 'Lookup Symbol' button. 2023-07-12 21:30:35 +03:00
Yuri Sizov
287f3aa4e9 Fix documentation validation after 8352122e70 2023-07-12 17:30:34 +02:00
Yuri Sizov
55b74c7cdf Merge pull request #76045 from Eoin-ONeill-Yokai/steaminput-fix
Prevent double input events on gamepad when running through steam input
2023-07-12 17:16:36 +02:00
Yuri Sizov
d13369eee1 Merge pull request #68140 from quinnyo/auto-complete-option
Add editor setting to toggle automatic code completion
2023-07-12 17:15:51 +02:00
Yuri Sizov
f25233cbc9 Merge pull request #49524 from Calinou/document-editor-import-options
Document editor import options in the class reference
2023-07-12 17:15:19 +02:00
Yuri Sizov
4e66c4cdd9 Merge pull request #77191 from smix8/navigationregion_map_change_4.x
Add NavigationRegion function to change navigation map
2023-07-12 17:15:13 +02:00
Yuri Sizov
1978b7c717 Merge pull request #77858 from kinami-imai/expose_videostreamplayer_video_length
Expose VideoStreamPlayer video length
2023-07-12 17:14:44 +02:00
Yuri Sizov
216aa450a6 Merge pull request #77857 from kinami-imai/add_loop_property_to_videostreamplayer
Add `loop` property to VideoStreamPlayer
2023-07-12 17:14:38 +02:00
Yuri Sizov
d676246647 Merge pull request #79137 from smix8/region_bake_depr_4.x
Mark NavigationServer3D.region_bake_navigation_mesh() as deprecated
2023-07-12 15:09:50 +02:00
Yuri Sizov
5167bed9f0 Merge pull request #79053 from Daylily-Zeleen/daylily-zeleen/rich_text_label_missing_default_method_value
Bind missing default value for `RichTextLabel` methods.
2023-07-12 15:09:41 +02:00
Yuri Sizov
b54d6cf466 Merge pull request #78393 from AThousandShips/tree_tooltip
Add ability to set the tooltip text of a `TreeItem` button
2023-07-12 15:09:09 +02:00
Yuri Sizov
6960a1d0e8 Merge pull request #78248 from felaugmar/load-svg-adjustable-scale
Added `Image::load_svg_from_(buffer|string)`
2023-07-12 15:09:03 +02:00
Yuri Sizov
b4a11294e6 Merge pull request #75460 from joao-pedro-braz/add_new_item_stylebox_to_the_tree_control
Add a new "inner_item_margin" Theme constant to the Tree control
2023-07-12 15:08:36 +02:00
HolonProduction
a1c0d206e8 Add finished signal to CPUParticles 2023-07-12 13:45:02 +02:00
HolonProduction
5322e255ad Add finished signal to GPUParticles 2023-07-12 13:29:47 +02:00
Yuri Sizov
aa353df8cb
Merge pull request #79306 from KoBeWi/broken_as_intended
Clarify return value of `get_dependencies()`
2023-07-12 13:03:07 +02:00
Septian
377cbaba43 Fix documentation for consistency 2023-07-12 05:33:49 +07:00
kobewi
f567af413a Clarify return value of get_dependencies() 2023-07-11 13:28:34 +02:00
Mikael Hermansson
273f7e1c57 Add hit_back_faces property to RayCast3D 2023-07-11 13:02:13 +02:00
Rémi Verschelde
f438fdb752
Merge pull request #79310 from timothyqiu/remap
Clarify `EditorExportPlugin::add_file` only remaps in `_export_file`
2023-07-11 11:31:08 +02:00
Rémi Verschelde
6cb1162aa0
Merge pull request #79000 from AThousandShips/owner_error
Improve error message for `Node.set_owner`
2023-07-11 11:29:30 +02:00
Daylily-Zeleen
4029a05fae Add missing default value for RichTextLabel method 2023-07-11 11:17:45 +08:00
Haoyu Qiu
df1d354d36 Clarify EditorExportPlugin::add_file only remaps in _export_file 2023-07-11 09:27:21 +08:00
Hendrik Brucker
662d8c76b3 Remove GraphNode's comment property and related functionality
(this functionality will be reintroduced in a new and more flexible way)
2023-07-11 02:05:25 +02:00
Eoin O'Neill
8de98dbf21 Prevent double input events on gamepad when running through steam input
During GDC and general testing on Steam Deck units, we found that single
gamepads would often register inputs twice under certain circumstances.
This was caused by SteamInput creating a new virtual device, which Godot
registers as a second gamepad. This resulted in two gamepad devices
reporting the same button presses, often leading to buggy input response
on games with no multi-device logic and other-wise could cause intended
Steam rebindings to not work as intended (for example, swapping o and x
on a playstation pad if that feature isn't supported by the game.)

SDL gets around this by taking in a list of devices that are to be
ignored. When valve sees a controller that wants to be rebound via
SteamInput, they push a new VID/PID entry onto the environment
variable `SDL_GAMECONTROLLER_IGNORE_DEVICES` for the original gamepad
so that all game inputs can be read from the virtual gamepad instead.

This leverages the same logic as we are already using SDL gamepad
related HID mappings.
2023-07-10 15:26:33 -07:00
Rémi Verschelde
74f14884cd
Merge pull request #79250 from cbscribe/rb_doc_fix
Fix rigid body `contact_monitor` property description
2023-07-10 10:37:20 +02:00
smix8
976f5338c5 Add performance note for parsing source geometry
Adds performance note for parsing source geometry.
2023-07-09 21:19:22 +02:00
Chris Bradfield
6d85481670 Fix rigid body property description 2023-07-09 11:21:24 -07:00
bruvzg
5216a08617
[RTL] Add pop_all, push_context and pop_context methods, and use it for print_rich to avoid unclosed tags. 2023-07-09 19:53:15 +03:00
Septian
486609eccf Fix various typos in documentation 2023-07-09 04:41:18 +07:00
Rémi Verschelde
8eeb7c9061
Merge pull request #79174 from aaronfranke/eng-get-arch-doc
Fix incorrect documentation for `Engine.get_architecture_name()`
2023-07-08 18:23:29 +02:00
Rémi Verschelde
ce32fe974e
Merge pull request #79048 from sepTN/its-platform-not-plafrom
Fix a typo in the TLSOptions documentation
2023-07-08 18:21:28 +02:00
Septian
b88b6b4f48 fix typo on TLSOptions.xml and library_godot_display.js 2023-07-08 13:34:50 +07:00
Ninni Pipping
7752a0d8d1 Fix range error for Array.slice 2023-07-07 23:19:42 +02:00
Aaron Franke
ebc6ec1692
Fix incorrect documentation for Engine.get_architecture_name() 2023-07-07 14:51:51 -05:00
smix8
d253cd7864 Add clear() function to NavigationMesh / NavigationPolygon
Adds clear() function to NavigationMesh / NavigationPolygon.
2023-07-07 16:27:39 +02:00
Rémi Verschelde
e00dc3c719
Merge pull request #75806 from bcmpinc/issue-61174
Fix Camera3D `project_*` methods not accounting for frustum offset
2023-07-07 16:01:47 +02:00
Rémi Verschelde
69dbbcc313
Merge pull request #79092 from akien-mga/doctool-remove-version-attribute
Doctool: Remove version attribute from XML header
2023-07-07 08:34:55 +02:00
Rémi Verschelde
8a84a3914e
Merge pull request #79087 from Daylily-Zeleen/daylily-zeleen/fix_shell_show_in_file_manager
Fix the fallback logic of `OS::shell_show_in_file_manager`.
2023-07-07 08:34:31 +02:00
smix8
f7ebce2626 Mark NavigationServer3D.region_bake_navigation_mesh() as deprecated
Marks NavigationServer3D.region_bake_navigation_mesh() as deprecated.
2023-07-07 02:30:14 +02:00
Amir-Rasteg
9744657bb8
Fix a typo in the String.to_float description 2023-07-06 17:27:58 +02:00
Rémi Verschelde
81064cc239
Doctool: Remove version attribute from XML header
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).
2023-07-06 10:08:21 +02:00
Daylily-Zeleen
9dd9818c88 Fixed the fallback logic of OS::shell_show_in_file_manager 2023-07-06 13:16:04 +08:00
Rémi Verschelde
346f1ab86b
Bump version to 4.2-dev
Keep on waitin'
2023-07-05 22:07:03 +02:00
MewPurPur
3d128f67a4 Rename button_pressed bindings to avoid shadowing 2023-07-05 18:38:18 +02:00
Yuri Sizov
c16afc1c2d
Merge pull request #79050 from capnm/fix_teststr_what
Fix import hints that are followed by dot.number
2023-07-05 15:59:44 +02:00