Commit Graph

7603 Commits

Author SHA1 Message Date
Michael Alexsander 245d70bec0 Fix `ItemList` selection visual when the scrollbar visibility changes
(cherry picked from commit e298144a41)
2022-08-24 17:23:59 +02:00
Marcin Nowak 90762b9660 [3.x] Backport panning strength parameters from 4.0 2022-08-23 23:27:51 +02:00
Rémi Verschelde 39ac24e278
Merge pull request #64745 from bruvzg/fix_mixed_font_color3
[3.x] Fix color modulation of the grayscale glyphs in font with mixed color / grayscale data.
2022-08-23 07:46:51 +02:00
Rémi Verschelde 812caa5f44
Merge pull request #58601 from Calinou/material-triplanar-sharpness-clamp-3.x 2022-08-22 22:21:59 +02:00
bruvzg 4d0c0f3ffa
Fix color modulation of the grayscale glyphs in font with mixed color / grayscale data. 2022-08-22 20:39:29 +03:00
Michael Alexsander 73470e1b16 Expose `set/get_tab_button_icon()` to scripting 2022-08-22 11:08:38 -03:00
Olivier Bombardier c988deb3b1 Fix has_filter of AnimationNode not being called in scripts 2022-08-21 17:37:59 -04:00
Michael Alexsander 50506e19a6 Make `Menu/OptionButton` item auto-highlight behave better 2022-08-19 15:19:34 -03:00
Yuri Sizov 39f46613bb Backport fixes to documentation for paths, curves and navigation servers 2022-08-19 15:52:03 +03:00
Francois Belair d331e5c7ac Fix binary internal cache not being filled 2022-08-14 12:30:59 -04:00
smix8 47b39ce4c2 Fix NavigationObstacle nodes not registering to default navigation map
Fix NavigationObstacle nodes not registering to default navigation map.
2022-08-13 19:46:12 +02:00
Cory Petkovsek f7f112ab1f Fix free(RID) abuse by various classes 2022-08-11 02:31:00 +08:00
Francois Belair 420794b61d Force external resources to have their path set 2022-08-09 23:50:45 -04:00
Haoyu Qiu 4c47c6ab75 Tree: Don't draw selection background of individual cells in Row mode 2022-08-09 17:07:53 +08:00
kobewi 520d341836 Add root_subfolder to FileDialog 2022-08-08 19:50:41 +02:00
Rémi Verschelde f30a2c1292
Merge pull request #63113 from snailrhymer/3.x-folding-comment-fix 2022-08-08 15:54:57 +02:00
Rémi Verschelde 36fc99158d
Merge pull request #63971 from paddy-exe/spatial-shader-built-ins 2022-08-08 15:50:25 +02:00
Rémi Verschelde 4f1dc83b0d
Merge pull request #64044 from Calinou/add-torusmesh-3.x 2022-08-08 15:37:58 +02:00
Josh Jones 9d1a972b49 Fix typo when setting NavigationRegion travel_cost
(cherry picked from commit 8c324132d0)
2022-08-08 09:51:45 +02:00
Hugo Locurcio 659fa79479
Use interleaved gradient noise for distance fade
This provides better visuals and performance compared to the previous
ordered dither.
2022-08-07 15:23:43 +02:00
hoontee 53adb2a142
Add `TorusMesh` 2022-08-07 12:42:24 +02:00
smix8 30d4555c65 Fix TileMap error msg when optional navigation node is not set
Fixes TileMap error msg spam when bake_navigation=true but the optional and depr navigation node is not set.
2022-08-06 21:58:47 +02:00
Rémi Verschelde ab7e2564f3
Merge pull request #63659 from PrecisionRender/add-shape-cast-3d
[3.x] Add `ShapeCast` and `ShapeCast2D` nodes
2022-08-06 00:33:29 +02:00
Rémi Verschelde 14c9325b5d
Merge pull request #62408 from Razoric480/raz/fix-no-cache
[3.x] Fix nested resources being cached if no-cache argument used
2022-08-05 23:43:54 +02:00
Rémi Verschelde 91a6e08c12
Merge pull request #48157 from madmiraal/fix-46438-3.x
[3.x] Fix mouse_over not dropped when mouse leaves window
2022-08-05 22:37:17 +02:00
Rémi Verschelde 61b5e35de5
Merge pull request #61559 from kleonc/triangle_mesh_from_triangle_strip_or_fan_3x
[3.x] Make `Mesh::generate_triangle_mesh()` handle `PRIMITIVE_TRIANGLE_STRIP` and `PRIMITIVE_TRIANGLE_FAN`
2022-08-05 22:35:52 +02:00
Rémi Verschelde 906a693934
Merge pull request #53852 from Calinou/particles-allow-negative-scale
Allow negative scale in Particles and CPUParticles
2022-08-05 22:34:43 +02:00
Rémi Verschelde 5d3b6eb073
Merge pull request #48372 from Calinou/gradienttexture-add-hdr-property-3.x
Add an `use_hdr` property to GradientTexture to allow storing HDR colors (3.x)
2022-08-05 22:33:44 +02:00
Patrick Exner be3d331f26 Backport spatial shader built-ins
Backport of this PR: https://github.com/godotengine/godot/pull/63597
This adds these as new Built-Ins to Spatial Shaders
* Object's Position in World Space
* Camera Position in World Space
* Camera Direction in World Space
* Object's Position in View Space
2022-08-05 21:19:15 +02:00
Rémi Verschelde ef7502e1d4
Merge pull request #50540 from Calinou/material-hide-triplanar-subproperties-when-disabled-3.x 2022-08-05 19:39:19 +02:00
Rémi Verschelde 0e93600fe0
Merge pull request #62644 from Piralein/remove_redundant_checkbox_check 2022-08-05 19:37:47 +02:00
Rémi Verschelde 26762a71b6
Merge pull request #58537 from winterpixelgames/feature/virtual-keyboard-types-3.x 2022-08-05 19:37:13 +02:00
Rémi Verschelde 173a803c8a
Merge pull request #49495 from kleonc/sprite_frames_editor-updating-fixes-3x 2022-08-05 19:35:30 +02:00
Rémi Verschelde d2d77c93bc
Merge pull request #61588 from YuriSizov/control-fix-theme-owner-toplevel-3.x 2022-08-05 19:34:05 +02:00
Rémi Verschelde 25c87e99cf
Merge pull request #61578 from YuriSizov/core-fix-events-for-moved-nodes-3.x 2022-08-05 19:33:25 +02:00
Haoyu Qiu 9d923764c9 Fix crash when executing `AnimationTreePlayer.are_nodes_connected` 2022-08-01 23:36:12 +08:00
PrecisionRender 47a62e28ac [3.x] Add `ShapeCast` and `ShapeCast2D` nodes 2022-07-30 10:23:58 -05:00
Marcel Admiraal d000a5fa30 Ensure changes to Camera2D's limits don't affect smoothed_camera_pos 2022-07-28 15:30:34 +01:00
Marcel Admiraal a124d89f01 When Camera2D enters tree, ensure first update is not lost 2022-07-28 15:30:06 +01:00
Rémi Verschelde 818f1eed31 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 14:53:37 +02:00
Rémi Verschelde be5051422b Revert "Call update_scrollbars() in sort_children() so the max is set properly so you can set scroll_container.scroll_vertical instantly after adding children to a scroll container."
This reverts commit b73d2980b7.

This caused a regression. Fixes #63417.
2022-07-25 11:29:33 +02:00
lawnjelly d4dc7c4b32 Portals - Allow more logging to be disabled
Some logging messages were still being issued when portals/debug/logging was false. This could be annoying in games that stream in parts of levels and repeatedly call `rooms_convert()`.

This PR allows all but essential logging to be disabled.
2022-07-24 13:44:59 +01:00
Jason Knight b73d2980b7 Call update_scrollbars() in sort_children() so the max is set properly so you can set scroll_container.scroll_vertical instantly after adding children to a scroll container. 2022-07-21 12:25:50 -06:00
kleonc 558b96f1b1 Fix `CanvasItem` not exiting its canvas group on canvas exit 2022-07-20 12:49:38 +02:00
Rémi Verschelde 33b5709d53
Merge pull request #61601 from Haydoggo/path-follow-fix-3.x 2022-07-18 09:36:22 +02:00
Rémi Verschelde 5aa22a21be
Merge pull request #63058 from AaronRecord/backport-global-position-rotation 2022-07-18 09:33:23 +02:00
Rémi Verschelde 090d9f6d25
Merge pull request #63084 from madmiraal/fix-56336-3.x 2022-07-18 09:31:58 +02:00
SnailRhymer efed5087ae Change code folding behavior to include terminal indented comments
Previously, when folding a block of code that finished with an indented comment (i.e. one indented as much as or more than the starting indent of the code), that comment would be left out of the fold. Change the behavior to include such comments, but still leave less-indented ones out.
2022-07-17 17:38:51 +01:00
Yuri Rubinsky 229bfc8f2d Fix invalid code generation when using `VisualShaderNodeUniformRef` 2022-07-17 12:41:24 +03:00
Marcel Admiraal 162cb5748a Update camera position when updating camera limit 2022-07-17 09:02:34 +01:00
Marcel Admiraal fb4e1d2d02 Set initial SceneTree processes times to 0.0 2022-07-17 09:02:20 +01:00
foxydevloper 5238740fef Add global_translation and global_rotation to Spatial 2022-07-15 21:39:35 -06:00
Hayden e05f969adb Fix crash on NaN offset in path_follower 2d and 3d 2022-07-14 14:30:24 +12:00
Francois Belair 2ceb93bbef Fix custom res caching sub-res even if no-cache
Fixes #59686, fixes #59752
2022-07-13 11:18:26 -04:00
Rémi Verschelde 66c4047a6c SpriteFrames: Sort animations alphabetically
Fixes #62143.
2022-07-13 15:48:55 +02:00
kleonc 8ae246f15e AnimatedSprite Fix updating inspector when SpriteFrames is modified 2022-07-13 15:48:11 +02:00
Brian Semrau ce24b48e50 Add support for multiple virtual keyboard types 2022-07-07 14:22:28 -04:00
Thakee Nathees da626d8922 Fix FileDialog file name autocompletion with filters
Fixes #38195.

(cherry picked from commit 446f1b7052)
2022-07-06 11:39:04 +02:00
Haoyu Qiu d86a2d57cf Fix LineEdit caret after using arrow key to deselect 2022-07-06 09:32:39 +08:00
bruvzg 7f562030be
Use custom key struct, instead of raw hashes for the Label3D cache to avoid potential hash collisions. 2022-07-04 09:46:38 +03:00
Marcel Admiraal 0992621200 Fix mouse_over not dropped when mouse leaves window 2022-07-03 09:49:56 +01:00
reduz 995281ca90 Fix editor-only visibility for lights
* Update visibility again for editor-only lights if owner changes.

Fixes #26399, supersedes #52327

(cherry picked from commit d69e3791bf)
2022-07-03 03:21:51 +02:00
Rémi Verschelde df70aa1772
Merge pull request #57566 from Calinou/viewport-shadow-atlas-clamp-sizes 2022-07-03 03:08:03 +02:00
Rémi Verschelde 3d19f21576
Merge pull request #49967 from Calinou/viewport-2d-hdr-print-warning 2022-07-03 02:41:26 +02:00
Rémi Verschelde 86229d0b03
Merge pull request #54239 from Calinou/editor-directionallight-3d-only-show-relevant-properties-3.x
Only show relevant properties in the DirectionalLight inspector (3.x)
2022-07-03 02:02:10 +02:00
saneery cb94797ce4 Add process_mode property to InterpolatedCamera 2022-07-03 01:47:10 +02:00
hilfazer fe21fb175c print_stray_nodes() also prints node's script 2022-07-03 01:00:58 +02:00
Hana 36ff8962cc
remove redundant check preventing checkbox theme style to apply hover_pressed 2022-07-02 20:53:02 +02:00
kobewi 14f69acaa4 Fix find_next_valid_focus() freeze
(cherry picked from commit 8d62b736b2)
2022-07-01 14:00:55 +02:00
kobewi f659869a45 Fix find_next_valid_focus() freeze
(cherry picked from commit d9ede52ded)
2022-06-30 19:23:01 +02:00
smix8 381e8dd278 Group NavigationAgent properties
Groups the ill-defined NavigationAgent properties between pathfinding and avoidance to make it more clear which property affects what.

(cherry picked from commit dde09be302)
2022-06-30 19:23:01 +02:00
ConteZero a13b3028a2 Add an option to drag'n'drop selected text in TextEdit
(cherry picked from commit 5d56efcaa4)
2022-06-30 19:23:01 +02:00
smix8 fcff804844 Implement NavigationMesh bake area
Adds two new properties to NavigationMesh resources to restrict the navmesh baking to an area enclosed by an AABB with volume.

(cherry picked from commit 0c4d99f4fd)
2022-06-23 16:17:43 +02:00
needleful eb99c7243e Apply baked ambient light settings when baking lights with scene environment 2022-06-21 12:12:47 -07:00
Rémi Verschelde 3c35617c50
Merge pull request #62187 from smix8/nav_nodes_depr_3.5 2022-06-20 18:36:17 +02:00
smix8 693aeaf799 [3.5] Mark Navigation/Navigation2D nodes as deprecated
Mark Navigation/Navigation2D nodes as deprecated. They already just redirect calls to the NavigationServer and have no longer a real purpose. In Godot 4.0 both nodes are already removed for good reasons.
2022-06-20 17:37:55 +02:00
smix8 88e42b2915 Add NavigationAgent desired path distance
Add NavigationAgent desired path distance

(cherry picked from commit 07740302f3)
2022-06-20 15:11:09 +02:00
Rémi Verschelde 0cb897421a Node: Rename `child_exited_tree` to `child_exiting_tree`
The name was confusing as this signal is emitted around the same time as
`tree_exiting` and `NOTIFICATION_EXIT_TREE`, i.e. while the child node is
still in tree.

Fixes #59210.

(cherry picked from commit 3e6de687b8)
2022-06-20 15:00:09 +02:00
Rémi Verschelde 4137578369 Fix typos with codespell
Using codespell 2.2-dev from current git.

Fix a couple incorrect uses of gendered pronouns.
2022-06-19 13:48:15 +02:00
kleonc e55ba60da1 Fix `CPUParticles2D.emission_shape` enum hint 2022-06-18 16:07:34 +02:00
smix8 c6f9627c74 [3.5] Add NavigationAgent2D/3D set_navigation_map() function
Add NavigationAgent2D/3D set_navigation_map() function. Also fixes some bugs from leftover code before the backport update.
2022-06-16 19:25:52 +02:00
Rémi Verschelde 4e7363cac7
Merge pull request #61996 from smix8/navigation_bp_update_3.x
[3.5] Update NavigationServer backport
2022-06-16 00:17:16 +02:00
Rémi Verschelde 0c5c5381d7
Merge pull request #61980 from KoBeWi/obliterate_scroll
Disable scroll when dragging at edges of TextEdit
2022-06-14 23:47:17 +02:00
kobewi 053fdb8872 Disable scroll when dragging at edges of TextEdit 2022-06-14 23:36:54 +02:00
smix8 8bd7c6188b [3.5] Update NavigationServer backport
Backports features and bugfixes from current Godot 4.0 to 3.5 and brings functions and codebase of both version largely in sync to make tutorials more compatible and future backports easier.
2022-06-14 05:55:14 +02:00
Rémi Verschelde 606ec57d2c
Merge pull request #61985 from bruvzg/win_net_share3
[Windows, 3.x] Add support for handling network share paths.
2022-06-13 09:16:13 +02:00
bruvzg 64a107508a
[3.x] Improve RTL table fill. 2022-06-13 09:57:35 +03:00
bruvzg 11a7997a67 [Windows, 3.x] Add support for handling network share paths. 2022-06-13 09:24:35 +03:00
Rémi Verschelde 0b048b6d73 SoftBody: Fix attachments property names after #61180
Fixes #61581.

(cherry picked from commit 5c3081dae2)
2022-06-10 14:42:05 +02:00
Rémi Verschelde 4987cd43bf
Merge pull request #61346 from AaronRecord/fix-scrollbars-initializing 2022-06-10 14:24:27 +02:00
Rémi Verschelde a9e966c319
Merge pull request #61544 from lawnjelly/vis_notifier_max_dist
VisibilityNotifier - add max_distance feature
2022-06-10 10:57:53 +02:00
Rémi Verschelde 5c4e95e6e5
Merge pull request #61844 from smix8/navigation_default_navmap_3.x 2022-06-10 09:48:47 +02:00
smix8 96d98d8c4e Backport default World navigation maps
Backports default navigation maps created with each World or World2D.
2022-06-09 14:05:39 +02:00
lawnjelly 0c5a424f65 VisibilityNotifier - add max_distance feature
Enables turning off objects by distance to the camera in addition to testing whether they are in the view frustum.
2022-06-09 11:37:42 +01:00
smix8 e629622598 Remove slash delimiter from NavigationMesh properties
Remove slash delimiter from NavigationMesh properties.

(cherry picked from commit 2c059dcfcb)
2022-06-09 10:31:57 +02:00
smix8 c111d6b621 Expose get_mesh() for NavigationPolygon Resources
Expose get_mesh() for NavigationPolygon Resources.

(cherry picked from commit 8bcce0ebb2)
2022-06-09 10:09:46 +02:00
smix8 106bf9b793 Add NavigationMesh debug when navmesh is added later through scripts
Add NavigationMesh debug when navmesh is added later through scripts

(cherry picked from commit b6eff47bac)
2022-06-09 10:08:55 +02:00
Rémi Verschelde e9ca65207e
Merge pull request #61822 from smix8/tilemap_texture_offset_fix_3.5 2022-06-08 22:46:04 +02:00
smix8 3aa05b7b67 [3.5] Fix TileMap texture offset for navigationmesh and collisionshapes
[3.5] Fix TileMap texture offset for navigationmesh and collisionshapes
2022-06-08 19:30:52 +02:00
bruvzg f5fa1ca944
Add readable export errors. Add RTL image vertical alignment support. 2022-06-08 17:56:28 +03:00
Rémi Verschelde 6ec7e2c230
Merge pull request #61729 from lawnjelly/faster_mesh_merging
Optimized Mesh Merging
2022-06-08 07:10:32 +02:00
kleonc 84898dfc22 Make `Mesh::generate_triangle_mesh()` handle `PRIMITIVE_TRIANGLE_STRIP` and `PRIMITIVE_TRIANGLE_FAN` 2022-06-07 22:04:14 +02:00
lawnjelly 1d870403b2 Optimized Mesh Merging
Changes from PoolVector to LocalVector and pre-reserving vectors rather than push_back.
2022-06-07 20:16:51 +01:00
Rémi Verschelde 70951b3a9c
Merge pull request #61728 from YeldhamDev/always_clear_backport
[3.x] Take into account the clear icon's size even when not visible in `LineEdit`s
2022-06-07 14:16:32 +02:00
lawnjelly ba74643594 Force unsigned behaviour for bitfield enums
Some compilers (notably MSVC) were using signed values for bitfield enums. This was causing problems where 2 bits were used to store 4 or less enum values, where they were being treated as negative numbers.

This PR explicitly requests these enums to be treated as unsigned values.
2022-06-06 16:58:21 +01:00
Haoyu Qiu d043f91b79 Fix `Viewport.own_world` documentation
Also fixed the naming of the setter's parameter and made an `if` block
straightforward.
2022-06-06 21:34:36 +08:00
Rémi Verschelde e80dfb7b12
Merge pull request #61687 from YeldhamDev/double_hover_fix
Fix hover being drawn twice inside `PopupMenu`s
2022-06-06 13:17:25 +02:00
Michael Alexsander 43b0e054be Take into account the clear icon's size even when not visible in `LineEdit`s 2022-06-05 16:22:01 -03:00
Michael Alexsander b4e4f88cd9 Fix specific bug related to submenus in `PopupMenu` 2022-06-04 13:26:12 -03:00
Michael Alexsander 78fdebf8cc Fix hover being drawn twice inside `PopupMenu`s 2022-06-04 02:51:22 -03:00
Rémi Verschelde a6b27b526f
Merge pull request #60822 from lawnjelly/fti_add_child_reset 2022-06-03 14:56:19 +02:00
FireForge ea46f32246 Fix get_data() for GradientTexture2D 2022-05-31 23:19:25 -05:00
Yuri Sizov 8ed297fc83 Fix theme propagation for children of top level controls 2022-06-01 03:56:51 +03:00
Yuri Sizov 6d53c60bf7 Mark node groups as dirty for every children if parent is moved 2022-05-31 21:23:16 +03:00
Rémi Verschelde b44928586b
Merge pull request #61483 from kleonc/popup-update-exclusive-when-shown
[3.x] Allow changing `exclusive` of already popped up `Popup`
2022-05-31 12:14:37 +02:00
Rémi Verschelde 51e52b5ed8
Merge pull request #61496 from timothyqiu/asymmetric-le-3.x
[3.x] Fix LineEdit clear button for asymmetric stylebox
2022-05-31 08:56:13 +02:00
bruvzg 553bdc6783
[3.x] Fix Label3D oversampling. 2022-05-30 09:05:41 +03:00
Haoyu Qiu 1e6747d185 Fix LineEdit clear button for asymmetric stylebox 2022-05-28 19:51:50 +08:00
kleonc 9ba598f94f Allow changing `exclusive` of already popped up Popup 2022-05-28 01:10:49 +02:00
kleonc 736b0c4e97 PopupMenu Fix hover stylebox overflowing horizontally 2022-05-27 23:35:17 +02:00
Hugo Locurcio 011ff93aa5
Tweak TextMesh decomposition error message to mention self-intersecting lines 2022-05-24 15:12:15 +02:00
Aaron Record ae9e523025 [3.x] Allow ScrollBar params of a ScrollContainer to be modified from _ready()
Cherrypicks b8610dbd31
2022-05-23 21:46:59 -06:00
Rémi Verschelde 88dba8e625 Fix typos with codespell
Using codespell 2.2-dev from current git.
2022-05-23 21:41:46 +02:00
bruvzg eb44e23ca3
[Label3D, 3.x] Monitor default theme font changes, to prevent use of invalid materials. 2022-05-23 18:16:17 +03:00
Rémi Verschelde b2cdc16a1d
Merge pull request #61281 from bruvzg/textmesh_3x
Backport TextMesh and expose dynamic font vector outlines
2022-05-23 16:16:40 +02:00
Rémi Verschelde f2e3d89562
Merge pull request #61309 from timothyqiu/label-3d-line-spacing
[3.x] Use float when calculating `Label3D` line height
2022-05-23 16:10:42 +02:00
Haoyu Qiu ff5e671c81 Use float when calculating Label3D line height 2022-05-23 17:58:51 +08:00
bruvzg 1ab459a951
Fix material shader key for SDF fonts. 2022-05-23 12:03:09 +03:00
bruvzg d502bd4847
Backport TextMesh and expose dynamic font vector outlines 2022-05-23 10:47:28 +03:00
bruvzg dc6d8d6098
Backport Label3D node implementation and Sprite*3D material render priority. 2022-05-23 09:14:41 +03:00
smix8 8df9fd076f Process NavigationAgent2D/3D avoidance on demand only
Changes NavigationAgent avoidance callback to a toggle that is disabled by default.
Also fixes a few missing descriptions / wrong warnings.

(cherry picked from commit 7f3688603c)
2022-05-22 19:43:56 +02:00
Hugo Locurcio 548c511f57 Tweak the disabled files text color in FileDialog for readability
Contrast rate is still fairly low, but the text needs to be easy enough
to distinguish from non-disabled items.

(cherry picked from commit 8962d2760d)
2022-05-22 19:43:56 +02:00
Haoyu Qiu 4a03bc8f75 Update last min size when Control becomes visible
(cherry picked from commit 4ac999cc3f)
2022-05-22 19:43:56 +02:00
Daniel Kariv 47ead8504a add check for selection when try to push a meta.
Add a check for when we select a text but end on a link. Before it would act as if we just click an link, but now it changes it so if we click-drag over a link, we could select it (and not move to other page).

(cherry picked from commit e6c909b489)
2022-05-22 19:26:45 +02:00
smix8 b03f6bc170 Remove arbitrary NavigationMesh bake property limits
Lowers or removes the slider limits and steps from NavigationMesh resources and changes some default values to better work with realistic unit sizes by default.

(cherry picked from commit cda93057f7)
2022-05-22 19:26:45 +02:00
bruvzg b5d5515a2b Fix incorrect encoding used in _error_handler functions
Co-authored-by: Haoyu Qiu <timothyqiu32@gmail.com>
2022-05-22 18:56:41 +08:00
Rémi Verschelde 67208ae80b
Merge pull request #60402 from Calinou/httprequest-timeout-float 2022-05-20 15:27:29 +02:00
Rémi Verschelde 2a1a2380e5
Merge pull request #61027 from timothyqiu/quit-prop-3.x
[3.x] Make `auto_accept_quit` and `quit_on_go_back` properties
2022-05-20 08:13:41 +02:00
smix8 88acb5b798 Make Navigation Agents and Obstacles respect parent process mode
Temporarily removes agent from navigation map when parent node cannot process due to SceneTree pause and process_mode property. Normal process_mode does not work as other agents would still avoid the paused agents because they were still active on the navigation map and the rvo world. Also fixes potential crash when region_get_map or agent_get_map is called while no map is set.

(cherry picked from commit 6b51ab66d8)
2022-05-19 15:34:56 +02:00
smix8 44915696d2 Add wrong surface warnings to NavigationMesh.create_from_mesh()
Adds warnings when at least one of the input mesh surfaces is of wrong primitive type or has an empty vertex / index array as those broken input meshes would fail as both navmesh as well as later when creating debug meshes.

(cherry picked from commit 4185fce0ef)
2022-05-19 15:25:43 +02:00
Rémi Verschelde 78a9d21da3
Merge pull request #61185 from okla/3.x 2022-05-19 12:02:14 +02:00
Sergey Pershenkov 46ab2512b8 Return -1 from get_selected_id() when not selected
Partial cherry pick from 3b146c5eaa
2022-05-19 12:42:54 +03:00
Rémi Verschelde b7523a953f Revert invalid PopupMenu breaking change from #61102
Fixes #61179.
2022-05-19 10:02:02 +02:00
Haoyu Qiu b657d0c76c Add dedicated macros for property name extraction
* Replace case-by-case extraction with PNAME & GNAME
* Fix group handling when group hint begins with property name
* Exclude properties that are PROPERTY_USAGE_NOEDITOR
2022-05-19 11:31:35 +08:00
Rémi Verschelde b0a2b34d48
Merge pull request #61150 from smix8/navigation_region2d_update_navpoly_3.x 2022-05-18 14:36:55 +02:00
smix8 37530b0871 Update NavigationPolygonInstance when polygons of NavigationPolygon change
Updates NavigationPolygonInstance polygons on the NavigationServer2D when the NavigationPolygon Resource emits its changed signal due to e.g. polygons altered by script.
2022-05-18 13:53:46 +02:00
Yuri Rubinsky 32b9818965 Add node list param to GraphEdit::delete_nodes_request signal 2022-05-18 12:36:00 +03:00
Rémi Verschelde 281c5c9a56
Merge pull request #61102 from okla/3.x
[3.x] Make various improvements to OptionButton
2022-05-16 23:51:55 +02:00
Sergey Pershenkov 431c032d8c Make various improvements to OptionButton
- Allow OptionButton selection to be set to -1 to signify no selection, both via API and in the editor.
- Reset OptionButton selection to -1 when the selected item has been removed.
- Fully convert PopupMenu to a zero-based ID system, which improves an inconsistency in generated IDs when making new items in the editor.

(cherry picked from commit 3b146c5eaa)
2022-05-16 22:47:46 +03:00
Haoyu Qiu 96b1b1991b Fix AnimatedSprite doesn't emit animation_finished when changing playback direction
(cherry picked from commit d5f5e96e11)
2022-05-16 21:12:21 +02:00
Markus Sauermann ff52becb47 Distribute remaining pixel to expanding childs of GridContainer
(cherry picked from commit 6b3207644b)
2022-05-16 21:12:21 +02:00
FireForge 67e6fc8e43 Fix Theme type group naming in the inspector
(cherry picked from commit 197be78bc5)
2022-05-16 21:12:21 +02:00
smix8 3e01d32b4c Clamp NavigationMesh sample_distance above zero
While default ReCast library has support for 0.0 'sample_distance' the Godot implementation does not an crashes.
Previously Godot would set all sample_distance values below 0.9 to 0 which causes the crashes.

This limits the sample_distance range selection to 0.1 - 16.0 and also clamps sample_distance that are below 0.1 before ReCast receives them.

(cherry picked from commit e33fa9d833)
2022-05-16 21:10:36 +02:00
smix8 c3b39ca1e9 Disable threaded NavigationMesh bake on unsupported OS
Automatically disables threaded NavigationMesh bake when OS does not support threads.

(cherry picked from commit 49c603e127)
2022-05-16 17:52:07 +02:00
smix8 b11708c50d Expose NavigationObstacle2D/3D get_rid() and add config warning
Exposes get_rid() function for scripting.
Adds configuration warning when obstacle is used with not intended static body parent.

(cherry picked from commit 001d89223f)
2022-05-16 17:52:07 +02:00
smix8 847fab6272 Fix NavigationObstacle2D/3D get_global_transform() error
Fixes NavigationObstacle2D/3D reporting a 'get_global_transform: Condition "!is_inside_tree()" error when estimating the agent radius.

The collisionshapes that are lower in the SceneTree order than the obstacle node are not loaded in the SceneTree yet so the global_transform function fails.

Also adds warning message when this happens.

(cherry picked from commit cc707412e9)
2022-05-16 17:52:07 +02:00
Hendrik Brucker 7a4187495d Fix button icon expansion calculation with empty text
(cherry picked from commit c09a5e2774)
2022-05-16 17:14:43 +02:00
Rémi Verschelde 5e693b6d84 Fix warnings found by Emscripten 3.1.10
Fix `-Wunused-but-set-variable`, `-Wunqualified-std-cast-call`, and
`-Wliteral-range` warnings.

(cherry picked from commit d8935b27a9)
2022-05-16 16:38:26 +02:00
kobewi bdbbc78da4 Mention that Area2D doesn't support one_way_collision
(cherry picked from commit c836bdf5b1)
2022-05-16 16:27:51 +02:00
kobewi 5fa7ed7686 Rescue orphan nodes in inherited scenes
(cherry picked from commit 2b53826ee6)
2022-05-16 15:59:55 +02:00
kobewi 93482809e5 Fix error spam when tweened node leaves tree
(cherry picked from commit 45e4cb2bbf)
2022-05-16 15:57:41 +02:00
Haoyu Qiu 58650af062 Make auto_accept_quit and quit_on_go_back properties 2022-05-14 18:24:43 +08:00
FireForge f17c5fa7bd Add interpolation modes to Gradient
- Linear, Constant, and Cubic interpolation modes
- Partial backport of #53321
2022-05-12 14:24:04 -05:00
Hugo Locurcio 069c955af7
Use a floating-point number for the `timeout` property in HTTPRequest
This allows for greater precision when specifying a timeout in
HTTPRequest in `3.x`, similar to what is already possible in `master`.
2022-05-11 08:41:40 +02:00
lawnjelly a4c0e2ecce Physics Interpolation - add warnings to RESET_PHYSICS_INTERPOLATION
Adds warnings when NOTIFICATION_RESET_PHYSICS_INTERPOLATION is called and has no effect due to the node being hidden or not interpolated.
2022-05-10 11:17:58 +01:00
lawnjelly 328866ee6a Physics Interpolation - Reset on adding child to SceneTree
For convenience, branches added to the SceneTree now have physics interpolation reset after the first update of the transform to the VisualServer.
2022-05-10 11:09:20 +01:00
Rémi Verschelde 16abb7f471
Merge pull request #60858 from lawnjelly/fti_add_mode_property
Physics Interpolation - add interpolation mode property to node
2022-05-10 08:42:41 +02:00
Rémi Verschelde cf6dce2c1e
Merge pull request #60876 from timothyqiu/outline-size-hint
[3.x] Fix mismatched font outline size hint
2022-05-09 22:20:16 +02:00
Rémi Verschelde 20c72e8275
Merge pull request #60891 from YeldhamDev/pm_sep_font 2022-05-09 13:57:02 +02:00
Haoyu Qiu 20d3632268 Fix tree button icon not centered vertically 2022-05-09 10:53:02 +08:00
Michael Alexsander 2e4e76b2e3 Add `font_separator` to `PopupMenu` 2022-05-08 14:11:59 -03:00
Haoyu Qiu b277390267 Fix mismatched font outline size hint 2022-05-08 10:01:38 +08:00
Michael Alexsander 4f70201fbe Fix separator height influencing labeled variation in `PopupMenu` 2022-05-07 21:15:57 -03:00
lawnjelly 0ab077fcef Physics Interpolation - add interpolation mode property to node
Exposes the "interpolated" flag on nodes via a property, physics_interpolation_mode.

Mode can be INHERIT, OFF and ON. This makes it easy to turn off interpolation for nodes in the editor, versus via code.
2022-05-07 13:51:49 +01:00
Hugo Locurcio 8682874419
Rename profiler "Idle Time" to "Process Time"
References to "idle time" are progressively being replaced by
"process time" throughout the engine to avoid confusion.

This also changes some debug prints to be printed only when verbose
mode is enabled (like in `master`).
2022-05-06 19:31:31 +02:00
kobewi 72e1088df6 Fix tscn not listed as Resource extension
(cherry picked from commit e3511dd9d7)
2022-05-05 13:47:48 +02:00
kobewi ce36f2f699 Improve Tween infinite loop detection
(cherry picked from commit f473aab00d)
2022-05-05 13:47:23 +02:00
ScottVMariotte 25ef0aaf3e Replaced loops_current with end_loop
(cherry picked from commit c526ee6683)
2022-05-05 13:42:54 +02:00
Rémi Verschelde 13bb7c6c35
Merge pull request #60763 from lawnjelly/fti_physics_flush 2022-05-05 11:59:15 +02:00
Haoyu Qiu 0f7f3d08ba Add autocompletion for AnimatedSprite.play() 2022-05-05 09:04:40 +08:00
Pawel Lampe 505ace250d Add ability to `bake_navigation_mesh` off thread.
This feature makes it possible to workaround problems such as:
 - long baking time due to heavy synchronization when parsing geometry
   from mesh instances
 - crash when freeing `NavigationMeshInstance` while baking
 - errors when actively baking node tree is being detached from the
   scene tree
2022-05-04 22:41:38 +02:00
lawnjelly df7fab51a3 Physics Interpolation - Flush transforms after physics tick
Leftover transforms from the physics tick were being flushed during idle, which was causing problems for physics interpolation.

This PR flushes the transforms at the end of the physics tick when physics interpolation is active.
2022-05-04 20:30:46 +01:00
Rémi Verschelde 815f7fe636
Merge pull request #49952 from Calinou/spatialmaterial-depth-triplanar-print-warning
Print warning in SpatialMaterial when depth and triplanar are active
2022-05-02 23:59:52 +02:00
Rémi Verschelde 4b6e5f5da6
Merge pull request #60530 from timothyqiu/theme-validation-3.x 2022-05-02 10:49:27 +02:00
Rémi Verschelde 6ee64331db
Merge pull request #60527 from KoBeWi/unique_names_demastered 2022-05-02 10:48:27 +02:00
Rémi Verschelde 8835654578 Merge pull request #60656 from akien-mga/tilemap-methods-const-ref-vector2 2022-05-02 09:51:51 +02:00
Rémi Verschelde e61c4dd787
Merge pull request #60282 from YeldhamDev/backwards_relationships_are_even_harder 2022-05-02 09:49:09 +02:00
smix8 ebcbbec563 Add get_region_rid() to NavigationPolygonInstance and NavigationMeshInstance
Add get_region_rid() to NavigationPolygonInstance and NavigationMeshInstance
2022-04-30 15:54:12 +02:00
Rémi Verschelde 2834332591 TileMap: Use const ref for all Vector2 parameters 2022-04-30 14:05:57 +02:00
Haoyu Qiu 153dc4d57e Backport the new Tween system as SceneTreeTween
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2022-04-29 20:01:12 +08:00
bruvzg ff381f6e84
Fixed implementation of RTL remove_line()
Co-authored-by: Eric M <itsjusteza@gmail.com>
2022-04-29 10:59:31 +03:00
Rémi Verschelde 73e6b7c145
Merge pull request #60592 from Calinou/styleboxflat-add-skew-3.x 2022-04-28 22:29:56 +02:00
Hugo Locurcio 4b399b2285
Add a Skew property to StyleBoxFlat
This makes it possible to create more aesthetically pleasing
styleboxes for GUI theming, especially in games that have
a futuristic appearance (where skewed buttons and progress bars
are common).
2022-04-28 20:40:01 +02:00
Rémi Verschelde 841d6e7fad
Merge pull request #59439 from fabriceci/3x-fix-move-and-collide-reported-collisions 2022-04-28 18:47:28 +02:00
lawnjelly 49eaa7bd65 Physics interpolation - fix streaking when unhiding nodes
The data flow to the VisualServer of current and previous transforms is essential for allowing correct interpolation. An optimization was present that disabled sending transforms when nodes were hidden, however this meant that when unhidden, nodes would interpolate incorrectly from the last transform received when hiding, rather than the up to date previous transform.

This PR disables the optimization and sends always sends transforms when a node is interpolated.
2022-04-28 12:15:14 +01:00
Silc 'Tokage' Renew cb5f13649b fixed rotated RootMotionView grid glitch
(cherry picked from commit df89969865)
2022-04-27 12:42:43 +02:00
Rémi Verschelde 510ed791f9
Merge pull request #60554 from timothyqiu/editor-settings-cleanup 2022-04-27 11:51:03 +02:00
Rémi Verschelde 3b2ed9bdd6
Merge pull request #60330 from Calinou/aspectratiocontainer-add-property-hint-3.x 2022-04-27 10:17:04 +02:00
Haoyu Qiu d088128b43 Remove duplicate editor settings definitions 2022-04-27 15:26:46 +08:00
Rémi Verschelde ad76e071fa
Merge pull request #60389 from timothyqiu/raycast2d-shape
[3.x] Improve RayCast2D debug shape
2022-04-27 08:07:42 +02:00