1
0
Fork 0
Commit Graph

11247 Commits

Author SHA1 Message Date
Anish Mishra b5dad5a0b2 Improve SplitContainer usability in the Android editor 2025-06-03 19:49:56 +05:30
Anish Mishra bccf36b27b Add option for a touch-friendly drag handle in `SplitContainer` 2025-06-03 19:49:56 +05:30
KOGA Mitsuhiro b5003f60c2 Update CameraServer document for Android 2025-06-03 23:13:35 +09:00
Michael Alexsander 454e4f817c
Make build profile project detection also set build options 2025-06-03 11:11:33 -03:00
LuoZhihao 713ed59a77 Remove unnecessary `_validate_property()` calling 2025-06-03 21:57:36 +08:00
Yobbolita bfbb63129a
Improve the PhysicsShapeQueryParameters3D's description
Made it clearer that this class is used in several of PhysicsDirectSpaceState3D's
methods and not just on `intersect_shape()`.
2025-06-03 15:18:47 +02:00
Haoyu Qiu e74ebaf18d Fix copy-paste error in Viewport classref 2025-06-03 20:47:06 +08:00
Mikael Hermansson e160040f0c Remove Jolt Physics project setting "Areas Detect Static Bodies" 2025-06-03 09:52:57 +02:00
Pāvels Nadtočajevs 6565c8e83f
[AccessKit] Update API to 0.16.0. 2025-06-03 10:49:04 +03:00
kobewi 706bfd810b Add thumbnail mode to FIleDialog 2025-06-03 02:06:14 +02:00
Thaddeus Crews 5935356962
Merge pull request #100984 from TokageItLab/bone-constraint
Implement `BoneConstraint3D` with `CopyTransform`/`ConvertTransform`/`Aim` Modifiers
2025-06-02 18:51:57 -05:00
Thaddeus Crews 9ee7d78274
Merge pull request #106859 from syntaxerror247/alias
Add support for `OS.get_version_alias()` on Android
2025-06-02 18:51:56 -05:00
Thaddeus Crews 1c0669bd23
Merge pull request #106970 from m4gr3d/update_documentation_javaclasswrapper_androidruntimeplugin
Update the documentation for `JavaClassWrapper` and `AndroidRuntimePlugin`
2025-06-02 18:51:50 -05:00
Thaddeus Crews fd600b32df
Merge pull request #105680 from KoBeWi/my_recent_favorites
Add favorites and recent directories to FileDialog
2025-06-02 18:51:47 -05:00
Thaddeus Crews a6be6d1cd1
Merge pull request #106959 from bruvzg/w10_cleanup
[Windows] Drop support for Windows 7/8/8.1.
2025-06-02 18:51:46 -05:00
Thaddeus Crews 12b97c250d
Merge pull request #104907 from bruvzg/scr_ids
Cleanup and unify `DisplayServer` screen methods and documentation.
2025-06-02 18:51:45 -05:00
Thaddeus Crews 2fc072585d
Merge pull request #106820 from OzelotVanilla/fix-editor-plugin-callback-path-param
Fix `EditorContextMenuPlugin` `CONTEXT_SLOT_FILESYSTEM_CREATE` does not receive path information for some menus
2025-06-02 18:51:43 -05:00
Thaddeus Crews 028a7d3776
Merge pull request #89530 from dalexeev/ed-allow-rename-theme-types
Editor: Add ability to rename theme types
2025-06-02 18:51:40 -05:00
Thaddeus Crews 67d5d4b790
Merge pull request #107062 from KoBeWi/ultimate_initial_clarification
Clarify `set_initial_value()`
2025-06-02 18:51:39 -05:00
Thaddeus Crews ec5a771d62
Merge pull request #104999 from RobProductions/patch-1
[Docs] Update RichTextLabel alignment documentation
2025-06-02 18:51:35 -05:00
Thaddeus Crews 79db51871c
Merge pull request #106917 from shiena/fix/camera-feed-document
Update CameraFeed document for Android
2025-06-02 18:51:32 -05:00
Thaddeus Crews 46a7fc317b
Merge pull request #103716 from aaronp64/script_dictionary_docs
Link `Script` method documentation to details about returned dictionaries
2025-06-02 18:51:30 -05:00
Thaddeus Crews a654f7b2b5
Merge pull request #105502 from tehKaiN/editor_interface_close_scene
Add `EditorInterface::close_scene()`
2025-06-02 18:51:29 -05:00
Thaddeus Crews e8a02152c4
Merge pull request #105757 from bruvzg/no_temp
[PCK] Move directory to the end of file, write exported/saved PCK in place.
2025-06-02 18:51:28 -05:00
Thaddeus Crews 4f64eaef0c
Merge pull request #69012 from KoBeWi/settings_of_editor_project
Allow to override editor settings per project
2025-06-02 18:51:26 -05:00
Thaddeus Crews 430bb6294c
Merge pull request #107022 from Calinou/doc-softbody3d-recommend-jolt
Recommend Jolt Physics in SoftBody3D class reference
2025-06-02 18:51:23 -05:00
Thaddeus Crews e41af67e29
Merge pull request #107020 from Aioshiro/typo-array-slice
Fix extra parenthesis in `Array.slice` description
2025-06-02 18:51:22 -05:00
Thaddeus Crews d7d6bc77ed
Merge pull request #106369 from Calinou/doc-array-get
Improve documentation for `Array.get()` and `Packed*Array.get()` methods
2025-06-02 18:51:20 -05:00
Hugo Locurcio aaa9c58b2c
Link demo project in AStar2D and AStarGrid2D documentation 2025-06-03 01:50:18 +02:00
syzygy f9c0789326 Clarify offest.y behavior for Sprite2D vs Sprite3D 2025-06-02 15:35:32 -06:00
Max Hilbrunner 7ef1cf3c2e Expose WorkerThreadPool.get_caller_task_id() 2025-06-02 22:00:24 +02:00
kobewi 55c139f9f5 Clarify set_initial_value() 2025-06-02 21:58:49 +02:00
kobewi b41d6ecf8c Allow to override editor settings per project 2025-06-02 17:51:26 +02:00
tomsterBG b3f633defa
Add description for `Skeleton3D.bone_list_changed` 2025-06-02 15:23:29 +02:00
Pāvels Nadtočajevs 8cb2817976
[PCK] Move directory to the end of file, write exported/saved PCK in place. 2025-06-02 12:54:09 +03:00
Ozelot Vanilla 94669955d8 fix: EditorContextMenuPlugin CONTEXT_SLOT_FILESYSTEM_CREATE does not receive path information for some menu
Also add explanation in `EditorContextMenuPlugin`'s doc for fixing path information passing

(Accept PR #106820 suggestion by: Tomasz Chabora <kobewi4e@gmail.com>)
2025-06-02 15:37:12 +09:00
Pāvels Nadtočajevs 2d93e004b9
Cleanup and unify `DisplayServer` screen methods and documentation. 2025-06-02 08:03:48 +03:00
Silc Lizard (Tokage) Renew 4a2a95678b Implement BoneConstraint3D with Copy/ConvertTransfrom & TrackBone mods 2025-06-02 03:42:45 +09:00
Hugo Locurcio b89b2e9aa7 Recommend Jolt Physics in SoftBody3D class reference
Jolt Physics has greatly improved SoftBody3D usability in Godot
compared to what was previously available with GodotPhysics3D.
2025-06-01 17:16:04 +02:00
Aioshiro 8fc060b8b3 Fix extra parenthesis in `Array.slice` description 2025-06-01 17:05:30 +02:00
Capry 20c0a0b489 Add metadata tags to WAV and OGG audio streams 2025-05-31 11:43:01 +02:00
daniel080400 08343189dc Rework scene preview thumbnails 2025-05-31 16:57:51 +08:00
Fredia Huya-Kouadio 658d3736f4 Update the documentation for `JavaClassWrapper` and `AndroidRuntimePlugin`
Follow-up to https://github.com/godotengine/godot-docs/pull/10979
2025-05-30 09:39:53 -07:00
Pāvels Nadtočajevs 617e12a6b4
[Windows] Drop support for Windows 7/8/8.1. 2025-05-30 17:30:23 +03:00
Anish Mishra 458850b2d9 Add support for `OS.get_version_alias()` on Android 2025-05-30 19:57:15 +05:30
Danil Alexeev e6c9a832c1
Editor: Add ability to rename theme types 2025-05-29 21:57:48 +03:00
kobewi f75c564d58 Add favorites and recent directories to FileDialog 2025-05-29 15:50:29 +02:00
KOGA Mitsuhiro 7762f70f69 Update CameraFeed document for Android 2025-05-29 07:24:00 +09:00
KaiN 8cdb1768a4 Add EditorInterface::close_scene()
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2025-05-28 21:53:32 +02:00
Thaddeus Crews bb47f01481
Merge pull request #106390 from akien-mga/linux-drop-ppc32
Linux: Drop `ppc32` (32-bit PowerPC) architecture support
2025-05-28 09:47:34 -05:00
2750558108 c2eba05312 Add speed scale feature for VideoStreamPlayer node 2025-05-28 08:58:32 +08:00
Thaddeus Crews f619ca2519
Merge pull request #60143 from Rindbee/better-connection-dialog
Add a flag to make the connection automatically emit the source object.
2025-05-27 09:39:34 -05:00
Thaddeus Crews 91b3a26438
Merge pull request #106848 from Faless/mp/rpc_config_revert
Expose `get_rpc_config` and `get_node_rpc_config`
2025-05-27 09:39:32 -05:00
Thaddeus Crews 05ceab6b7b
Merge pull request #106321 from elzewyr/shrink-factor
SoftBody3D: Add a property for scaling rest lengths of edge constraints
2025-05-27 09:39:29 -05:00
Thaddeus Crews 63dff62948
Merge pull request #100673 from RandomShaper/res_duplicate
Overhaul resource duplication
2025-05-27 09:39:25 -05:00
Thaddeus Crews bdf03ac2b3
Merge pull request #106811 from OzelotVanilla/fix-editor-plugin-filesystem-create
Fix missing popup item defined in `EditorContextMenuPlugin` with slot `CONTEXT_SLOT_FILESYSTEM_CREATE`
2025-05-27 09:39:24 -05:00
Thaddeus Crews 15b4b6b3d2
Merge pull request #106807 from Calinou/doc-editorproperty-not-ready
Document EditorProperty behavior when the node isn't fully ready yet
2025-05-27 09:39:23 -05:00
Thaddeus Crews d4793d016f
Merge pull request #106157 from Calinou/doc-acceptdialog-close-on-escape
Clarify the input action that affects `AcceptDialog.dialog_close_on_escape`
2025-05-27 09:39:22 -05:00
Thaddeus Crews 482dacc300
Merge pull request #103583 from beicause/color-picker-add-intensity
ColorPicker: Add an intensity slider to all modes for HDR
2025-05-27 09:39:21 -05:00
Rindbee 5e2396e001
Add a flag to make the connection automatically emit the source object.
Mainly used to improve the connection dialog.

Not implemented in `emit_signalp()`, append the source object when a PackScene is instantiated.
2025-05-27 20:19:03 +08:00
Lorenzo Zimmmerer 8152ecabed Editing SceneTree.get_frame() documentaion
to reflect that it returns physics steps that have been processed,
not frames rendered.

fixes #90539

Add reference to physics_frame signal.

Add reference to Engine.get_process_frames

Update doc/classes/SceneTree.xml

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2025-05-27 12:48:38 +02:00
Ozelot Vanilla 14d9aa9672 fix: EditorContextMenuPlugin with slot CONTEXT_SLOT_FILESYSTEM_CREATE does not add popup item to all menu
As there are multiple menu containing creating new files, this commit add the popup menu item from the plugin to all those menu to keep consistency.
The fixing uses empty array to indicate different types of context menu.

Added to these menu:
* Right-click on empty space on the tree (`_tree_empty_click`).
* Right-click on empty space on the file panel (`_file_list_empty_clicked`)

Also add explanation in `EditorContextMenuPlugin::CONTEXT_SLOT_FILESYSTEM_CREATE`'s doc for previous fixing

(Accept PR #106811 code suggestion by: Tomasz Chabora <kobewi4e@gmail.com>)
2025-05-27 10:15:21 +09:00
Haoyu Qiu 8d93b6a54c Add translation preview in editor 2025-05-27 07:59:28 +08:00
Fabio Alessandrelli b73ec1fa9b Expose get_rpc_config and get_node_rpc_config 2025-05-27 00:43:21 +02:00
Hugo Locurcio 260af83647
Document EditorProperty behavior when the node isn't fully ready yet 2025-05-27 00:42:10 +02:00
Hugo Locurcio 3168fd4c56
Clarify the input action that affects `AcceptDialog.dialog_close_on_escape`
It uses `ui_cancel` behind the scenes, which allows users to add/modify
which keys or gamepad buttons are taken into account for this.
2025-05-27 00:38:58 +02:00
Thaddeus Crews de2cd663fd
Merge pull request #100463 from PiCode9560/softbody-apply-force-and-impulse
Add ability to apply forces and impulses to `SoftBody3D`
2025-05-26 11:24:45 -05:00
Thaddeus Crews c38b856f39
Merge pull request #106717 from KoBeWi/uid_in_path_factory
Expose helper methods for converting UIDs
2025-05-26 11:24:40 -05:00
Thaddeus Crews e89c4b0f9f
Merge pull request #102330 from RGDTAB/add_partial_smaa
Add SMAA 1x to screenspace AA options
2025-05-26 11:24:35 -05:00
Thaddeus Crews 506417fe43
Merge pull request #105623 from lodetrick/section-feature-hide
Allow Inspector Section Checkboxes to hide features, Add "On" text to checkboxes
2025-05-26 11:24:25 -05:00
Thaddeus Crews 6132792f05
Merge pull request #106386 from bruvzg/mac_fs_name
Implement `get_filesystem_type` on macOS and Linux.
2025-05-26 11:24:25 -05:00
Thaddeus Crews f984e15b39
Merge pull request #106244 from lawnjelly/fti_optimize_scene_tree4
FTI - Optimize `SceneTree` traversal
2025-05-26 11:24:21 -05:00
Pedro J. Estébanez 6841b45552 Add tests for resource duplication 2025-05-26 17:05:04 +02:00
Fabio Alessandrelli c28d5d0058 Revert "Expose get_rpc_config and get_node_rpc_config"
This reverts commit 8835f326b1.
2025-05-26 15:57:38 +02:00
Pedro J. Estébanez 342266cfd9 Overhaul `Variant::duplicate()` for resources
This in the scope of a duplication triggered via any type in the `Variant` realm. that is, the following: `Variant` itself, `Array` and `Dictionary`. That includes invoking `duplicate()` from scripts.

A `duplicate_deep(deep_subresources_mode)` method is added to `Variant`, `Array` and `Dictionary` (for compatibility reasons, simply adding an extra parameter was not possible). The default value for it is `RESOURCE_DEEP_DUPLICATE_NONE`, which is like calling `duplicate(true)`.

Remarks:
- The results of copying resources via those `Variant` types are exactly the same as if the copy were initiated from the `Resource` type at C++.
- In order to keep some separation between `Variant` and the higher-level animal which is `Resource`, `Variant` still contains the original code for that, so it's self-sufficient unless there's a `Resource` involved. Once the deep copy finds a `Resource` that has to be copied according to the duplication parameters, the algorithm invokes the `Resource` duplication machinery. When the stack is unwind back to a nesting level `Variant` can handle, `Variant` duplication logic keeps functioning.

While that is good from a responsibility separation standpoint, that would have a caveat: `Variant` would not be aware of the mapping between original and duplicate subresources and so wouldn't be able to keep preventing multiple duplicates.

To avoid that, this commit also introduces a wormwhole, a sharing mechanism by which `Variant` and `Resource` can collaborate in managing the lifetime of the original-to-duplicates map. The user-visible benefit is that the overduplicate prevention works as broadly as the whole `Variant` entity being copied, including all nesting levels, regardless how disconnected the data members containing resources may be across al the nesting levels. In other words, despite the aforementioned division of duties between `Variant` and `Resource` duplication logic, the duplicates map is shared among them. It's created when first finding a `Resource` and, however how deep the copy was working at that point, the map kept alive unitl the stack is unwind to the root user call, until the first step of the recursion.

Thanks to that common map of duplicates, this commit is able to fix the issue that `Resource::duplicate_for_local_scene()` used to ignore overridden duplicate logic.
2025-05-26 10:06:40 +02:00
Pedro J. Estébanez 2a03b459b9 Overhaul `Resource::duplicate()`
Thanks to a refactor, `Resource::duplicate_for_local_scene()` and `Resource::duplicate()` are now both users of the same, parametrized, implementation.

`Resource::duplicate()` now honors deepness in a more consistent and predictable fashion. `Resource::duplicate_deep()` is added (instead of just adding a parameter to the former, for compatibility needs).

The behavior after this change is as follows:
  - Deep (`deep=true`, formerly `subresources=true`):
    - Previously, only resources found as direct property values of the one to copy would be, recursively, duplicated.
    - Now, in addition, arrays and dictionaries are walked so the copy is truly deep, and only local subresources found across are copied.
    - Previously, subresources would be duplicated as many times as being referenced throughout the main resource.
    - Now, each subresource is only duplicated once and from that point, a referenced to that single copy is used. That's the enhanced behavior that `duplicate_for_local_scene()` already featured.
    - The behavior with respect to packed arrays is still duplication.
    - Formerly, arrays and dictionaries were recursive duplicated, with resources ignored.
    - Now, arrays and dictionaries are recursive duplicated, with resources duplicated.
    - When doing it through `duplicate_deep()`, there's a` deep_subresources_mode` parameter, with various possibilites to control if no resources are duplicated (so arrays, etc. are, but keeping referencing the originals), if only the internal ones are (resources with no non-local path, the default), or if all of them are. The default is to copy every subresource, just like `duplicate(true)`.
  - Not deep (`deep=false`, formerly `subresources=false`): <a name="resource-shallow"></a>
    - Previously, the first level of resources found as direct property values would be duplicated unconditionally. Packed arrays, arrays and dictionaries were non-recursively duplicated.
    - Now, no subresource found at any level in any form will be duplicated, but the original reference kept instead. Packed arrays, arrays and dictionaries are referenced, not duplicated at all.
    - Now, resources found as values of always-duplicate properties are duplicated, recursively or not matching what was requested for the root call.

This commit also changes what's the virtual method to override to customize the duplication (now it's the protected `_duplicate()` instead of the public `duplicate()`).
2025-05-26 10:05:25 +02:00
kobewi 9c37ca5383 Expose helper methods for converting UIDs 2025-05-25 00:26:16 +02:00
lawnjelly c7764ef26b FTI - Optimize `SceneTree` traversal 2025-05-24 17:38:33 +01:00
Pāvels Nadtočajevs d609cf62a0
Implement `get_filesystem_type` on macOS and Linux. 2025-05-23 23:05:06 +03:00
PiCode fe3aaa2ae3 Add functions to apply impulse and force to SoftBody on GodotPhysics and JoltPhysics 2025-05-23 22:04:52 +03:00
Thaddeus Crews 274ed34ac4
Merge pull request #93836 from aaronfranke/capsule-mid-height
Add mid height property to CapsuleShape2D/3D
2025-05-23 09:46:13 -05:00
LuoZhihao 8a9409257b ColorPicker: Add intensity slider
Add intensity slider to all color modes. Replace raw mode by linear mode, which uses linear color space.

When color is overbright, automatically switch hex text to script text. Allow executing expression in script text field to set color. Add the "script" icon to the default theme.
2025-05-23 12:45:29 +08:00
Thaddeus Crews ce400a93b5
Merge pull request #106613 from Calinou/doc-string-subsequence-contains
Clarify `String.is_subsequence_of()` working differently from `String.contains()`
2025-05-22 12:15:09 -05:00
Thaddeus Crews 5b2525673a
Merge pull request #102360 from berarma/theora_seek
Implement seek operation for Theora video files, improve multi-channel audio resampling.
2025-05-22 12:15:07 -05:00
Thaddeus Crews 8085fd3102
Merge pull request #93142 from clayjohn/z_clip_scale
Add new shader built ins: `Z_CLIP_SCALE` and `PERSPECTIVE_SCALE`
2025-05-22 12:15:06 -05:00
Thaddeus Crews 6258a3e224
Merge pull request #98750 from aaronfranke/grisu
Use Grisu2 algorithm in `String::num_scientific` to fix serializing
2025-05-22 12:15:02 -05:00
Aaron Franke 15de1d6c35
Use Grisu2 algorithm in String::num_scientific to fix serializing 2025-05-22 09:13:16 -07:00
Bernat Arlandis b9bebf7081 Full Theora video support in VideoStreamPlayer
- Implement `set_stream_position` and `get_stream_length`.
- Don't show blank frame when stopping the video (smooth loops).
- Fix audio for videos with up to 8 channels.
- Improve internal audio handling.
2025-05-22 14:00:57 +02:00
Hugo Locurcio f69d2eda80
Clarify `String.is_subsequence_of()` working differently from `String.contains()`
`is_subsequence_of()` has very different behavior from `contains()`.
2025-05-22 03:01:13 +02:00
Logan Detrick 1a427d3dec Add feature hint string and "On" text for checkable groups 2025-05-21 14:56:55 -07:00
Raymond DiDonato 6b99608950 Add SMAA 1x 2025-05-21 15:02:09 -04:00
Haoyu Qiu 7010d171b1 Relax the requirements for making EditorImportPlugin 2025-05-21 22:13:09 +08:00
clayjohn 9a1def8da1 Add new StandardMaterial properties to allow users to control FPS-style objects (hands, weapons, tools close to the camera)
Add new shader built in Z_CLIP_SCALE to easily adjust clipping distance to avoid clipping walls etc.

Add fov_override to StandardMaterial3D to easily have a custom FOV for FPS objects

Add IN_SHADOW_PASS built-in to shaders for tweaking materials without impacting shadow maps
2025-05-21 10:16:05 -03:00
Hugo Locurcio 59a75babf8
Improve documentation for `Array.get()` and `Packed*Array.get()` methods 2025-05-20 23:47:04 +02:00
Rémi Verschelde 25a3c27c41
Merge pull request #105628 from rsanchezsaez/apple/ios-visionos-4.5
Native visionOS platform support
2025-05-20 23:09:07 +02:00
Ricardo Sanchez-Saez 47971c0a27
Introduce 'visionos' platform derived from 'apple_embedded' 2025-05-19 15:47:01 -07:00
Ricardo Sanchez-Saez 457299449d
Introduce 'drivers/apple_embedded' abstract platform for code reuse 2025-05-19 15:37:13 -07:00
Thaddeus Crews 54a368b454
Merge pull request #106476 from timothyqiu/tooltip-scale
Improve description of `Control.scale`
2025-05-19 16:22:27 -05:00
Thaddeus Crews 0f21ccd4b8
Merge pull request #104560 from TokageItLab/bone-name-validation
Add bone name/idx matching validation and lacked virtual methods to `SkeletonModifier3D`
2025-05-19 08:01:40 -05:00
Thaddeus Crews 70fa7fba19
Merge pull request #101792 from TokageItLab/oneshot-scale
Change `NodeOneShot` fading to uses self delta instead of input delta
2025-05-19 08:01:30 -05:00