Commit Graph

7395 Commits

Author SHA1 Message Date
Haoyu Qiu e822145be2 Fix inversed ADD_GROUP parameters in AnimationNodeOneShot
(cherry picked from commit 6a3bf65657)
2022-03-22 08:56:57 +01:00
Jason Knight 09e4672f0d Bind NOTIFICATION_LOCAL_TRANFORM_CHANGED 2022-03-20 11:34:29 -06:00
Rémi Verschelde 6a524b2cc0
Merge pull request #57661 from lawnjelly/bind_mesh_merging 2022-03-17 19:54:31 +01:00
Haoyu Qiu d537a88299 Add item tooltip access to OptionButton
(cherry picked from commit a635ecf6d4)
2022-03-17 14:45:19 +01:00
taigi100 b33eed23ae Fix children visibility check
(cherry picked from commit 280956ddc3)
2022-03-17 14:45:19 +01:00
Haoyu Qiu 72837b8ecd Fix RichTextLabel underlining does not respect visible character 2022-03-16 17:54:07 +08:00
Haoyu Qiu c0bd05762e Revert "Fixed underlines and striketrough not respecting visible character"
This reverts commit 8bbcc624fd.
2022-03-16 17:40:14 +08:00
Haoyu Qiu fd968157a4 Revert "Fixed 0 width issue of rich text label"
This reverts commit a1155b86e4.
2022-03-16 17:40:09 +08:00
Rémi Verschelde 7a4f9dfb15
Merge pull request #59145 from Sauermann/fix-3x-internal-gui-state 2022-03-14 23:18:26 +01:00
Rémi Verschelde ee818e1631
Merge pull request #54026 from ConteZero/primary_clipboard_linux_3.x 2022-03-14 18:52:20 +01:00
Markus Sauermann 62fa80afd7 Cleanup internal GUI state, if event is accepted in _input. 2022-03-14 18:36:31 +01:00
ConteZero 2ff0735329 Added primary clipboard for Linux 2022-03-14 15:28:36 +01:00
Rémi Verschelde fdaf0de3f0
Merge pull request #59100 from RandomShaper/mouse_drop_on_disable_3.x 2022-03-14 11:25:12 +01:00
Pedro J. Estébanez 3d7821bf1f Drop mouse focus and over when gui input is globally disabled
Since some porjects may be relying on the former behavior, this is opt-in via a new project setting, disabled by default, but enabled for new projects, since it's the new standard behavior (and the only one in 4.0).
2022-03-14 11:06:26 +01:00
ConteZero 0ffacff998 [3.x] Add option to make selection unique 2022-03-14 09:48:09 +01:00
Rémi Verschelde 08c3e00b95
Merge pull request #55355 from ConteZero/drag_and_drop_3.x 2022-03-14 08:43:22 +01:00
ConteZero 4167e98088 Add drag and drop to TextEdit, LineEdit, RichTextLabel 2022-03-14 08:15:25 +01:00
Hugo Locurcio caf2c20655 Don't store and show current file/directory/path FileDialog properties
These properties are only useful at run-time, so they don't need
to be displayed in the editor and stored.

(cherry picked from commit 2ad6e11b78)
2022-03-13 15:46:01 +01:00
Rémi Verschelde fa08c0c858
Merge pull request #59054 from timothyqiu/rtl-shadow-color-3.x 2022-03-13 15:28:55 +01:00
Pedro J. Estébanez 0b650b3e41 Clear owners when pruning even out of the tree 2022-03-12 12:48:15 +01:00
Haoyu Qiu 7d219b6793 Fix RichTextLabel shadow color when text has transparency 2022-03-12 11:02:27 +08:00
miremrie 8a6b066ab7 Allow absolute file paths in file dialogs
(cherry picked from commit a5e30c0228)
2022-03-10 17:18:41 +01:00
Haoyu Qiu db9d426798 Remove extra separator when TextEdit is read only and unselectable
(cherry picked from commit 933211cb0c)
2022-03-10 16:19:30 +01:00
Wilson E. Alvarez c37be0f31b
Expose TextEdit get_visible_rows() and get_total_visible_rows() to GDScript 2022-03-08 22:32:22 -05:00
Rémi Verschelde 85b4848ca8
Merge pull request #54188 from Rubonnek/increase_var_arg_max_3x 2022-03-08 13:10:48 +01:00
Haoyu Qiu b76147ec16 Fix top level CanvasItem visibility
The editor gizmo fix from previously reverted
642591b6a9 is kept here.
2022-03-08 01:29:24 +08:00
Haoyu Qiu d0901d4d55 Revert backport of "Rework CanvasItem visibility propagation"
This reverts part of commit f49ffe4bb0
2022-03-08 01:17:52 +08:00
Haoyu Qiu ba0a17a458 Revert "Fix CanvasItem visibility propagation"
This reverts commit 642591b6a9.
2022-03-08 01:06:14 +08:00
Wilson E. Alvarez 424dbf70af
Increase VARIANT_ARG_MAX to 8 2022-03-07 10:03:49 -05:00
Rémi Verschelde eb3f0f50b9
Merge pull request #58651 from TokageItLab/fix-cubic-interpolate-3.x 2022-03-04 12:26:46 +01:00
Haoyu Qiu 7e07d4781a Fix AnimatedSprite infinite loop
(cherry picked from commit 3a439a9c03)
2022-03-02 11:00:26 +01:00
janglee a1155b86e4 Fixed 0 width issue of rich text label
Fixes #37746

(cherry picked from commit 5e64c146bc)
2022-03-02 11:00:26 +01:00
janglee 8bbcc624fd Fixed underlines and striketrough not respecting visible character
(cherry picked from commit 9c2c2ab2b0)
2022-03-02 11:00:26 +01:00
Rémi Verschelde 195b7374b2
Merge pull request #58650 from lawnjelly/portals_fix_prefix_duplication
Portals - fix duplication of instanced scenes during conversion
2022-03-01 19:56:20 +01:00
Silc 'Tokage' Renew 7b9a912ff6 fix cubic interpolate when looping 3.x
Co-authored-by: robfram <robfram@gmail.com>
2022-03-01 19:15:25 +09:00
Rémi Verschelde 29d78f20de
Merge pull request #58642 from rburing/joints_fix_signals_3.x 2022-03-01 11:01:35 +01:00
lawnjelly 4ec4b5a60d Portals - fix duplication of instanced scenes during conversion
During room conversion, if a prefixed Spatial is converted to a Room / RoomGroup etc, when using instanced scenes the owner was incorrectly set, resulting in the instanced scene objects being duplicated.

This PR corrects this.
2022-03-01 09:44:40 +00:00
Ricardo Buring 322e3a9567 Joint2D and Joint: make set_exclude_nodes_from_collision respect signals 2022-02-28 22:51:40 +01:00
Ricardo Buring f197e5eebb Joint2D and Joint: update joint on NOTIFICATION_POST_ENTER_TREE
This allows reparenting, etc.
2022-02-28 22:48:48 +01:00
Rémi Verschelde 706d282cd5
Merge pull request #58381 from lawnjelly/fti_fix_double_ticks
Fix get_global_transform_interpolated() with multiple ticks per frame
2022-02-28 21:13:48 +01:00
lawnjelly 688dc534e5 Fix get_global_transform_interpolated() with multiple ticks per frame
The previous and current transforms in the interpolation data were not being correctly updated in cases where two or more physics ticks occurred on a frame. This PR introduces a simple mechanism to ensure updates on interpolated spatials.
2022-02-25 11:22:00 +00:00
jfons 0959ff2fe4 Add sanity checks to lightmap unwrap texel size
(cherry picked from commit d0fd5fd3c7)
2022-02-24 13:31:17 +01:00
lawnjelly cb108fb4f8 Portals - improve STATIC bounds on conversion
Introduces fallback path for geometry types that are not recognised.
Allows STATIC mode for CPUParticles (using expansion margin)
Allows STATIC mode for Particles (using "visibility_aabb")
2022-02-22 10:00:17 +00:00
Rémi Verschelde 4e44a15176
Merge pull request #58386 from KoBeWi/fix3bility 2022-02-21 12:33:28 +01:00
Rémi Verschelde c221539207
Merge pull request #58387 from lawnjelly/fti_jitter_fix 2022-02-21 12:18:26 +01:00
lawnjelly b90f1a3ec0 Disable jitter fix when physics interpolation is enabled. 2022-02-21 10:32:42 +00:00
Markus Sauermann 156d9d1643 simplify calculation of max in grayscale
(cherry picked from commit 79a75cd683)
2022-02-21 11:12:54 +01:00
kobewi 642591b6a9 Fix CanvasItem visibility propagation 2022-02-21 11:11:03 +01:00
Haoyu Qiu 85be83ebbb Fix typo in CanvasItem visibility propagation backport 2022-02-18 19:12:29 +08:00
Yuri Sizov df13466139 Add type variations to Theme 2022-02-17 15:24:10 +03:00
Hugo Locurcio ac0d37dcef
Add a property hint for the Line2D Round Precision property
This prevents choosing extremely high values which cause performance
issues for no visual benefit.

(cherry picked from commit 6b52aa67b8)
2022-02-17 09:59:28 +01:00
Wagner Scholl Lemos 2ed43f940b
Added show and hide methods and updated doc API.
(cherry picked from commit 160ee4ef8e)
2022-02-17 09:52:47 +01:00
Rémi Verschelde 2dd545b512
Merge pull request #58141 from lawnjelly/occluder_shared_resources 2022-02-16 13:29:55 +01:00
lawnjelly 3c2df49832 Fix Occluder to properly share resources
In order to properly support the resource sharing paradigm, Occluders are split into Instances and Resources in the VisualServer. Instances are owned by a Scenario, and Resources are global. OccluderShape resources can now correctly be shared by multiple OccluderInstances.
2022-02-16 09:55:11 +00:00
lawnjelly 522bce1159 Fixed Timestep Interpolation (3D)
Adds fixed timestep interpolation to the visual server.
Switchable on and off with project setting.

This version does not add new API for set_transform etc, when nodes have the interpolated flag set they will always use interpolation.
2022-02-16 09:41:23 +00:00
Rémi Verschelde 9343c66815
Merge pull request #58102 from JFonS/big_lightmap 2022-02-15 17:47:20 +01:00
JFonS 690f9716fa Add support for saving multiple Images in BakedLightmap
Instead of fitting all atlas slices into a single image, which meant there
was a hard limit on the size, BakedLightmap will now save as many images
as needed to fit all the slices generated by the lightmapper.
2022-02-15 16:13:00 +01:00
Hugo Locurcio 08128351a5
Clamp environment light sky contribution to the [0.0; 1.0] range
The value is already clamped in the editor, but it wasn't being
clamped when the value was set via code. Values outside the [0.0; 1.0]
range can result in broken rendering.
2022-02-14 17:15:06 +01:00
Hugo Locurcio 53b96095eb
Improve completion scroll bar visibility in the script editor (3.x)
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 14:54:35 +01:00
Rémi Verschelde 7a16bb2ee4
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.

(cherry picked from commit 1bdb82c64e)
2022-02-11 09:50:59 +01:00
reduz e4e3f7d157
Add a signal to notify when children nodes enter or exit tree
-Allows more fine grained notifications (hence better performance) than using the global scene tree signals (node added and removed).
-Required for #55950

(cherry picked from commit fbd9599b04)
2022-02-11 09:50:58 +01:00
Haoyu Qiu 8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Haoyu Qiu f49ffe4bb0 Backport CanvasLayer visibility 2022-02-11 01:00:35 +08:00
Rémi Verschelde 0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01:00
Nathan Franke c27b05febb
use exact match when checking focus next / previous 2022-02-09 10:18:58 -06:00
lawnjelly f0af29346b ProjectSettings add dirty flag and project_settings_changed signal
Most frames there will be no change in project settings, and it makes no sense to read settings every frame in case of changes, as a large number of string compares are involved.

This PR adds a signal to ProjectSettings that can be subscribed to in order to keep local settings up to date with ProjectSettings.

In addition a function `ProjectSettings::has_changes()` is provided for objects outside the signal system (e.g. Rasterizers).
2022-02-09 11:20:25 +00:00
Haoyu Qiu a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Haoyu Qiu 74a4795fb1 Fix RayCast{,2D}.clear_exceptions clears parent 2022-02-08 16:22:10 +08:00
Raul Santos 1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
lawnjelly cf1b3fdd55 Bind mesh merging functionality in MeshInstance
The portal system introduced basic mesh merging functionality, this has wide ranging uses outside of the portal system.
For this reason, this PR binds the mesh merging functionality.
It also slightly modifies the calling from RoomManager to use a Vector of Node *, in order to allow binding of the function.
2022-02-05 13:18:17 +00:00
Rémi Verschelde 689f59dca0
Merge pull request #53463 from lawnjelly/vital_redraws
Add editor vital redraws only option
2022-02-04 21:42:49 +01:00
Michael Alexsander f63bea9ef2 Make popup menus focus items automatically when not using the mouse 2022-02-04 17:20:26 -03:00
Hugo Locurcio 92376633f3
Clamp Viewport shadow atlas sizes to improve usability
- Add a range hint to the Viewport `shadow_atlas_size` property.
- Add range steps to the shadow resolution project settings that
  match the lowest allowed values (since lower increments don't
  make sense).
2022-02-04 18:01:16 +01:00
lawnjelly 10eb9564ca Portals - Improve mesh merging
Some improvements to robustness to account for more properties.
Addition of an "allow merging" flag in the cull instance.
2022-02-04 08:40:46 +00:00
Rémi Verschelde 80306cc88a
EditorProperty: Fix range hint parsing with optional step
This could lead to have a step of 0 when parsing e.g. "1,10,is_greater".
2022-02-03 12:33:37 +01:00
Pawel Lampe 6c6e50bf0c Fix navigation merge errors, fixes #56786
- improved `detail/sample_max_error` default value
- improved floating point precision handling in cell key calculations
- improved `merge error` error message
- exposed `cell_height` of `nav_map` to the `Navigation`
- fixed cell key `y` calculation
2022-02-02 23:52:29 +01:00
Rémi Verschelde 78f230885b
Merge pull request #57475 from snailrhymer/look-at-update 2022-02-02 23:07:20 +01:00
Rémi Verschelde 821a1a1882
Merge pull request #57546 from lawnjelly/portals_fix_dynamic_particles 2022-02-02 14:57:21 +01:00
lawnjelly d86061d7ae Portals - fix DYNAMIC particle systems
A regression had occurred whereby particle systems in DYNAMIC mode weren't added to the room correctly.
This PR recognise the case and bypasses the function to retrieve geometry, as retrieving the geometry is not necessary for DYNAMIC objects as they should not affect the room bound. Their AABB will be retrieved during gameplay rather than once off at level conversion.
2022-02-02 12:54:35 +00:00
kobewi 621cf7d8d5 Update the minimum size of ViewportContainer 2022-02-02 13:21:03 +01:00
lawnjelly a0c6d16c90 Add editor vital redraws only option
When editor continuous redraws is switched off, the editor only redraws when a redraw_request was issued by an element in the scene. This works well in most situations, but when scenes have dynamic content they will continuously issue redraw_requests.

This can be fine on high power desktops but can be an annoyance on lower power machines.

This PR splits redraw requests into high and low priority requests, defaulting to high priority. Requests due to e.g. shaders using TIME are assigned low priority.

An extra editor setting is used to record the user preference and an extra option is added to the editor spinner menu, to allow the user to select between 3 modes:

* Continuous
* Update all changes
* Update vital changes
2022-02-02 11:26:45 +00:00
Rémi Verschelde b6dbff7621
Merge pull request #57361 from lawnjelly/occ_poly_only 2022-02-01 14:04:24 +01:00
lawnjelly 8ea20f5fdd Add OccluderShapePolygon
Add OccluderShapePolygon, glue to Occluder and gizmos etc.
2022-02-01 11:31:06 +00:00
kleonc 32d83053c4
TextureButton Fix logic for drawing only the focus texture
(cherry picked from commit 078b8c25ce)
2022-01-31 22:54:25 +01:00
Rémi Verschelde b5eef640e1
Merge pull request #57390 from Pineapple/scene-tree-get-window-size 2022-01-31 18:23:36 +01:00
SnailRhymer 83298da9b8 Backport improved look_at docs and errors
Take extra constraint info and function description from Node3D.look_at to improve Spatial.look_at docs.
Add an explicit error for up == 0
2022-01-31 11:52:15 +00:00
mashumafi a118837af4 Fix button icon_color_disabled alpha channel 2022-01-30 13:15:05 -05:00
Rémi Verschelde 9cdd110cc3
Merge pull request #56600 from Scony/fix-navigation-obstacle-errors-3.x 2022-01-28 23:18:57 +01:00
Bartłomiej T. Listwon 94ddd4168d Simplify usage of OS::get_window_size() in SceneTree methods 2022-01-28 23:02:48 +01:00
Fitch24 c6890c6d12 Fix "mass" and "weight" properties of the RigidBody (and RigidBody2D) in the Inspector view 2022-01-27 19:58:51 +07:00
Rémi Verschelde 6b68d2f177
Merge pull request #57183 from timothyqiu/shape-owner-3.x 2022-01-26 13:27:16 +01:00
Yuri Sizov 797bb1d97e Ensure that NavMesh baking updates the inspector 2022-01-26 01:16:50 +03:00
Manolis Papadeas 941879f601
Expose BitMap's `convert_to_image` and `resize` methods to GDScript
(cherry picked from commit 453912d48d)
2022-01-25 18:55:52 +01:00
rafallus 58191c4b7e
Make sure `MeshLibrary` shape array has correct number of elements
(cherry picked from commit 5f8b292ad3)
2022-01-25 18:55:52 +01:00
Wysocki Patryk 6340e4c83f
Expose AnimationNodeOneShot::mix_mode as a property
Fixes #23458.

(cherry picked from commit f16c483c9d)
2022-01-25 18:55:51 +01:00
Bartłomiej T. Listwon d3473b2a95
Rework Node::get_node to omit is_absolute() check in best case scenario
(cherry picked from commit e2792cc71c)
2022-01-25 18:13:42 +01:00
Haoyu Qiu fa96505418 Store ObjectID instead of raw pointer for Shape Owners 2022-01-25 17:16:02 +08:00
Mack 36c7110c1b Fixed accessing a null MeshInstance object in BakedLightmap instead of the GeometryInstance 2022-01-24 06:59:48 +00:00
Pawel Lampe 67cf622935 Improve `Navigation2D` default settings, fixes #56852
This commit reduces `cell_size` and `edge_connection_margin` default
values so that `Navigation2D` behaves more like in Godot <= `3.4` by default.
2022-01-23 14:07:31 +01:00
Rémi Verschelde 40a348bce2
Merge pull request #57013 from Killfrra/3.x
[3.x] Backport method `get_rid` for NavigationAgent
2022-01-21 18:35:19 +01:00
Mak Kma 1c3d3af6ef backported method get_rid for NavigationAgent 2022-01-21 00:15:16 +03:00
lawnjelly adf14bfdde Add nodiscard to core math classes to catch c++ errors.
A common source of errors is to call functions (such as round()) expecting them to work in place, but them actually being designed only to return the processed value. Not using the return value in this case in indicative of a bug, and can be flagged as a warning by using the [[nodiscard]] attribute.
2022-01-20 17:28:31 +00:00
bruvzg f8f83f05f2
Fix RichTextLabel uninitialized content height value. 2022-01-20 13:53:52 +02:00
Bartłomiej T. Listwon 58c460b3b7
Removed redundant ClassDB::is_class_enabled() and moved second dynamic_cast inside worst case if
(cherry picked from commit b6cfc55113)
2022-01-19 16:04:16 +01:00
Haoyu Qiu 08af6e0407
Replicate load-as-placeholder state on node duplication
(cherry picked from commit 6aecf91e4f)
2022-01-19 16:01:04 +01:00
Rémi Verschelde 3fcc31eea7
Merge pull request #56934 from timothyqiu/color-preset-overbright 2022-01-19 10:17:07 +01:00
Rémi Verschelde 99cebb30dd
Merge pull request #54827 from timothyqiu/watch-your-step
[3.x] Fix AnimationTree function call track loop
2022-01-19 08:15:16 +01:00
Haoyu Qiu 342035b635 Fix ColorPresetButton's overbright indicator in default theme 2022-01-19 14:31:10 +08:00
Rémi Verschelde c938104a88
Merge pull request #56630 from Pineapple/replace-find-last 2022-01-18 16:36:52 +01:00
Hendrik Brucker 365486543d Improve Colorpicker presets 2022-01-17 15:21:47 +01:00
Haoyu Qiu 64fcf7ee77 Fix LineEdit center and right alignment 2022-01-16 20:39:11 +08:00
Jason Knight 5bad0778b6 Dont set elapsed to 0 when a tween is finished. 2022-01-15 08:00:43 -06:00
kleonc 63fd172fce Fix AtlasTexture nesting 2022-01-15 00:11:02 +01:00
Michael Alexsander 9d2070ee19 Modify texture of selected tabs to better blend with the panel 2022-01-13 21:03:52 -03:00
Rémi Verschelde e00a6d2b71
Merge pull request #56748 from albinaask/Fix-for-#56324 2022-01-13 17:05:16 +01:00
Rémi Verschelde a627cdafc5
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-13 15:54:13 +01:00
Yuri Sizov 58319564fa Unify theme item lookup in Controls and respect default font 2022-01-13 15:21:55 +03:00
Albin 21ca1c9cd7 Fixed a number of ",or_greater" for the bug #56324
fix to #56324

Note: CPU_Particles_2d is missing ring emitter
2022-01-13 11:51:24 +01:00
Danil Alexeev 458f65171c
Add BBCode escape sequences
(cherry picked from commit 884f1acff8)
2022-01-12 17:40:15 +01:00
kobewi 9f7f7377dd
Set max value of inactive TextEdit scrolls to 0
(cherry picked from commit 892d93759c)
2022-01-12 17:36:41 +01:00
Anilforextra 3fad43acad
Path2D: Check points count before rendering.
(cherry picked from commit b770a4d0ac)
2022-01-12 17:34:21 +01:00
kobewi 8edc8a95b1
Improve FileDialog filters
(cherry picked from commit b403954e41)
2022-01-12 17:33:16 +01:00
LeaoLuciano 57cceb47d1
Fix memory leak in RichTextLabel.remove_line
(cherry picked from commit f21b5e4d2f)
2022-01-12 17:32:19 +01:00
Haoyu Qiu 4621b41bfc
Add drag start/end signals for Slider
(cherry picked from commit 753ae7403f)
2022-01-12 17:31:39 +01:00
Pedro J. Estébanez 0b6b2015f0
Fix too broad assumption of null property defaults
(cherry picked from commit 7a66af274a)
2022-01-12 17:30:34 +01:00
Pedro J. Estébanez 5d9117d4bd
Assume that non registered properties default to null
(cherry picked from commit 5f0fe3c6ae)
2022-01-12 17:30:12 +01:00
Arnav Vijaywargiya a51f3f2a58
Fixed incorrect property types
(cherry picked from commit 0c46f73b5e)
2022-01-12 17:28:07 +01:00
kobewi 99195cc163
Fix TextureButton focus texture logic
(cherry picked from commit 11111d997e)
2022-01-12 17:28:07 +01:00
David Cambré c2a9de23f5
Update default port_grab_distance_vertical
(cherry picked from commit 38ad72af44)
2022-01-12 17:28:07 +01:00
Rémi Verschelde 1b0ba42ea1
Merge pull request #55268 from Calinou/gpu-particles-macos-performance-warning 2022-01-12 16:51:31 +01:00
Rémi Verschelde aa6dde2cde
Merge pull request #56471 from jmb462/3.x 2022-01-12 16:46:44 +01:00
Rémi Verschelde e805ec8574
Merge pull request #54871 from timothyqiu/remove-theme-override
[3.x] Add methods to remove theme overrides
2022-01-11 20:16:05 +01:00
Rémi Verschelde 8472f87de1
Merge pull request #56679 from pfertyk/issue-56488-fail-when-image-and-texture3d-size-differs
Issue 56488 fail when image and texture size are different
2022-01-11 20:08:12 +01:00
Paweł Fertyk 5e57b850b6 Issue 56488 fail when image and texture size are different 2022-01-11 13:19:43 +01:00
Rémi Verschelde 7249e170f7
Merge pull request #56044 from timothyqiu/position-nodes
[3.x] Improve axis awareness and visibility for Position2D and Position3D
2022-01-11 08:54:52 +01:00
Haoyu Qiu 09397f10c5 Fix BBCode underline prevents strikethrough from rendering 2022-01-11 12:53:51 +08:00
Bartłomiej T. Listwon 22750b1c03 Replace String::find_last with rfind where possible (backward compatible with old API) 2022-01-08 22:40:44 +01:00
Andrii Doroshenko (Xrayez) 8c11c28a8a Fix `GradientTexture2D` not working with `Light2D`
`Light2D` expects valid texture resource to be available initially for it to be properly bound.

Changed texture allocation implementation to be consistent/same with `GradientTexture` (1D).
2022-01-08 19:10:12 +02:00
Pawel Lampe 6093d59b17 Fix NavigationObstacle errors
* Typo in error print leading to false-positive message
* `NavigationObstacle` premature radius estimation (before entering the tree)
* `NavigationObstacle2D` premature radius estimation (before entering the tree)
2022-01-07 20:04:19 +01:00
Rémi Verschelde aad12a2df5
Merge pull request #54824 from LightningAA/backport-gradient-texture-2d 2022-01-07 14:47:44 +01:00
Rémi Verschelde 02d9ac1071
i18n: Sync template with current 3.x codebase
Weblate will now track the state of `3.x` to prepare for the 3.5 release.
2022-01-07 13:30:21 +01:00
fabriceci 10e63b8dd6 backport moving_platform_apply_velocity_on_leave 2022-01-07 12:54:49 +01:00
Rémi Verschelde 89574a8258
Merge pull request #54296 from timothyqiu/rtl-fill-underline
[3.x] Fix `RichTextLabel` underline appearance when inside fill tag
2022-01-07 09:20:44 +01:00
Rémi Verschelde b197de6f5f
Fix typos with codespell
Using codespell 2.1.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
readded
seeked
statics
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2022-01-07 00:14:54 +01:00
Haoyu Qiu e97cae86b8 Add missing break in NavigationObstacle2D 2022-01-06 21:23:53 +08:00
Rémi Verschelde 8f17a4037b
Merge pull request #56466 from Chaosus/vs_uniform_hints_3.x 2022-01-06 09:39:27 +01:00
Wilson E. Alvarez 4106f95f30
Expose autotile_coord parameter in TileMap.set_cellv 2022-01-05 21:24:35 -05:00
Yuri Sizov 2f333d6059
Fix an incorrect exposed property type in Tree
(cherry picked from commit f1bc5c976a)
2022-01-06 00:36:12 +01:00
PucklaMotzer09 05eb33e701
Unfocus Control on NOTIFICATION_EXIT_TREE
(cherry picked from commit be2d59fa0a)
2022-01-06 00:29:21 +01:00
kobewi 347823c275
Fix TabContainer not setting layout immediately
(cherry picked from commit a7a41a3431)
2022-01-06 00:21:36 +01:00
Kodi b4be27a68b
add missing emit_changed() to set update mode function
(cherry picked from commit 51db86d789)
2022-01-06 00:21:36 +01:00
Nick Swoboda 4ec6513c42
Improve error messages related to failing to open files
(cherry picked from commit bf8f763524)
2022-01-06 00:21:32 +01:00
Hugo Locurcio 299d277c9c
Warn when using GPU-based particles on macOS due to low performance
On macOS, Particles rendering is much slower than CPUParticles
due to transform feedback being implemented on the CPU instead
of the GPU.
2022-01-06 00:10:32 +01:00
Rémi Verschelde 91c5a336e8
Merge pull request #55718 from bruvzg/oversampling_override 2022-01-06 00:07:48 +01:00
Jake Young 09bc9eb101
Backport NavigationServer with RVO2 to `3.x`
Change the entire navigation system.
Remove editor prefix from nav mesh generator class. It is now used for baking
at runtime as well.
Navigation supports obstacle avoidance now with the RVO2 library.
Nav system will also automatically link all nav meshes together to form one
overall complete nav map.
2022-01-05 16:00:56 +01:00
Pedro J. Estébanez 571e05d3d3
Clear only owners that are no longer in the same tree
(cherry picked from commit 2db9397fb9)
2022-01-05 15:51:18 +01:00
Rémi Verschelde e22f7ea3c0
Merge pull request #55514 from RandomShaper/better_node_delete_3.x 2022-01-05 10:25:33 +01:00
Rémi Verschelde da7663189a
Merge pull request #56414 from eazrael/3.x-tree-fix-selectionmode-row
Tree: Fix de-select when selection mode set to SELECT_ROW (3.x)
2022-01-05 09:26:20 +01:00
Rémi Verschelde 25369acff9
Merge pull request #51708 from Calinou/viewport-add-32bpc-color-depth 2022-01-04 14:30:24 +01:00
jmb462 4de860c6d5 Fix PopupMenu bad item offset with custom vseparation 2022-01-03 22:15:59 +01:00
Yuri Roubinsky 5b0fe7880e [3.x] Add hints and default values to the uniform nodes in visual shader 2022-01-03 22:59:10 +03:00
Christoph Nelles 72133365f4 Tree: Fix de-select when selection mode set to SELECT_ROW
It no longer de-selects an already selected row if the SELECT_MODE is
set to SELECT_ROW. Fixes #36047

Update scene/gui/tree.cpp

Co-authored-by: Michael Alexsander <michaelalexsander@protonmail.com>
2022-01-02 00:31:46 +00:00
vitika9 e88f387958
Added check for SceneTree being null
(cherry picked from commit 51501dadcc)
2021-12-21 11:27:33 +01:00
Pedro J. Estébanez 4f38a9e4d6
Stop asuming a default value of NIL means there's no default
(cherry picked from commit 18663aa305)
2021-12-21 11:27:14 +01:00
Zae 23aaf78391 [3.x]Fix BaseButton's localization for tooltip text with shortcut 2021-12-21 03:44:16 +08:00
Haoyu Qiu 2bff705e13 Improve axis awareness and visibility for Position2D and Position3D
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-12-18 12:53:24 +08:00
Haoyu Qiu 1cada6bfa9 Add proxy support for `HTTPClient` and the editor
* Adds proxy related methods for `HTTPClient` and `HTTPRequest`
* Adds `network/http_proxy/{host,port}` editor settings
* Makes AssetLib and Export Template Manager proxy aware
2021-12-16 19:38:53 +08:00
Rémi Verschelde 4d709b71de
Merge pull request #55690 from akien-mga/3.x-scene-tree-doc-font-oversampling 2021-12-14 17:33:00 +01:00
Steve Szilágyi 285b816f1f
VehicleWheel can now return the surface it's colliding with.
Fixed PR issues.

Update vehicle_body_3d.cpp

Apply suggestions from code review

Co-authored-by: Camille Mohr-Daurat <pouleyKetchoup@gmail.com>
(cherry picked from commit 0c352407d8)
2021-12-10 19:01:06 +01:00
Anilforextra 9351bc4b1c
Fixed awkwardly named AnimatedSprite Setters.
(cherry picked from commit 0c06ed98fb)
2021-12-10 17:57:39 +01:00
Raffaele Picca 6dd593d579 Random initial color for all Particle Nodes 2021-12-10 16:35:25 +01:00
Rémi Verschelde e82091db51
Merge pull request #55782 from RPicster/3.x-gpu-particle-vis-rect 2021-12-10 13:50:45 +01:00
Raffaele Picca 995408b492 GPU Particles (2D + 3D) visibility rect / gizmo optimization for reduced visual clutter 2021-12-10 11:22:44 +01:00
Rémi Verschelde 76ab82526a
Merge pull request #54650 from tinmanjuggernaut/fix_rid 2021-12-09 22:00:24 +01:00
Raffaele Picca 28a6d32971 Fixed texture animation speed when using random lifetime 2021-12-09 19:59:24 +01:00
Cory Petkovsek 3d20218dae Clears RIDs wherever they are freed by VisualServer or PhysicsServer and possibly reused. Fixes #53374 2021-12-10 02:31:30 +08:00
bruvzg eb54676e0f
Add DynamicFontData oversampling override property. 2021-12-08 11:34:56 +02:00
Rémi Verschelde 35b79284cc
SceneTree: Document font oversampling, remove warnings 2021-12-07 14:15:09 +01:00
Rémi Verschelde 98e0ebfc4b
Merge pull request #55480 from univeous/fix-joystick-focus-3.x 2021-12-07 12:15:42 +01:00
Rémi Verschelde 7c82db2cd4
Merge pull request #55607 from RPicster/3.x-particle-double-seed-use-fix 2021-12-07 12:01:08 +01:00
kobewi 9776241ce6
Bind column_titles_visible as property
(cherry picked from commit 7f6ab0006d)
2021-12-06 16:52:00 +01:00
lawnjelly 3d981b8265 Add option to use handles to RID
Adds an option to compile an alternative implementation for RIDs, which allows checks for erroneous usage patterns as well as providing leak tests.
2021-12-06 14:43:34 +00:00
Raffaele Picca 20568b9768 Fix for double use of seed in random Particle shader variables. 2021-12-03 23:31:55 +01:00
Rémi Verschelde ade0e700f1
Merge pull request #55591 from RPicster/3.x-particlemat-ring-axis-fix
Fix Ring-Axis parameter being always visible
2021-12-03 21:38:16 +01:00
Raffaele Picca 2f69caaff3 Fix Ring-Axis parameter being always visible 2021-12-03 21:16:32 +01:00
Rémi Verschelde cd4a08ada3
Viewport: Fixup dragging code after a0fb66d
The check was removed by mistake while cherry-picking.
2021-12-03 13:19:59 +01:00
Haoyu Qiu a0fb66d802
Fix mouse cursor and notification for force dragging
(cherry picked from commit 86a47c6540)
2021-12-03 12:51:15 +01:00
Rémi Verschelde d5b22e614e
Merge pull request #55484 from pycbouh/theme-load-and-order-3.x 2021-12-02 17:20:31 +01:00
Rémi Verschelde 97bbdde9e5
Merge pull request #55364 from Calinou/reflectionprobe-tweak-property-hint-3.x 2021-12-02 10:09:01 +01:00
Pedro J. Estébanez b4998e7e1b Rationalize Node removals and deletions
- Regarding preservation of owner, `free()` and `remove_child()` now behave the same: owner is kept during `tree_exiting` signal and `null` during `tree_exited`.
- Superfluous code to handle cancelation of ownership is removed.
2021-12-01 14:43:36 +01:00
Univeous cf788ae684 Fix UI navigation with joysticks 2021-12-01 00:19:17 +08:00
Yuri Sizov 33fb44223f Make default/project theme wait for modules before initializing 2021-11-30 18:59:32 +03:00
Rémi Verschelde 3be0f85e91
Merge pull request #54377 from lawnjelly/faster_editor_lines 2021-11-30 13:30:02 +01:00
Rémi Verschelde 5e9853b038
Merge pull request #55453 from ator-dev/block-hidden-tab-close-3.x
Prevent hidden tab close buttons from intercepting input [3.x]
2021-11-30 00:15:55 +01:00
ator-dev a8977006fd Prevent hidden tab close buttons from intercepting input [3.x] 2021-11-29 20:26:19 +00:00
Rémi Verschelde 964c6ec4d9
Merge pull request #55447 from KoBeWi/show_tooltips_only_when_node_is_not_paused_and_when_it's_paused_don't_show_three_dot_x_edition 2021-11-29 17:01:41 +01:00
kobewi fe28e823c5 Don't show tooltips for paused controls 2021-11-29 16:44:32 +01:00
Red Headphone aa95a4a436
progress_offset now added to reference cross draw function
(cherry picked from commit 8a6c6d5329)
2021-11-29 16:43:25 +01:00
Eric 850ee9d4a2
Fix condition on 'jump to limits' logic
This is a fix for: #54856

(cherry picked from commit 7257bb6ad0)
2021-11-29 16:14:04 +01:00
floppyhammer 689312267a
Fix nine patch of circular TextureProgressBar
(cherry picked from commit f9b1ce0922)
2021-11-29 16:11:21 +01:00
Rémi Verschelde df38da84b4
Merge pull request #55440 from bruvzg/fix_cell_width 2021-11-29 15:04:22 +01:00
Rémi Verschelde eb5c2e1067
Merge pull request #55439 from KoBeWi/random_programming_ftw 2021-11-29 14:55:45 +01:00
bruvzg 33b26e5cdc
Fix RTL min/max line width calculation. 2021-11-29 15:36:42 +02:00
kobewi 820f7c9d15 Fix right alignment in RichTextLabel 2021-11-29 14:33:12 +01:00
Yuri Sizov ba747e2a26 Add methods to get position from column and line in TextEdit 2021-11-29 00:06:16 +03:00
Hugo Locurcio 19de92636d
Tweak ReflectionProbe update mode property hint to mention performance
This is similar to the property hint used in `master`.
2021-11-26 19:20:26 +01:00
Rémi Verschelde c3606a87fe
Merge pull request #55224 from KoBeWi/ΔV_even_when_paused 2021-11-22 14:09:56 +01:00
Rémi Verschelde dc5cee74bd
Merge pull request #55197 from timothyqiu/bookmark-gutter 2021-11-22 13:00:42 +01:00
kobewi 5b55599211 Show tooltips even when paused or time_scale is 0 2021-11-22 12:54:05 +01:00
Rémi Verschelde 86fd7da7a3
Merge pull request #54899 from clayjohn/MultiMesh-update 2021-11-22 08:30:49 +01:00
clayjohn b54d4a93be Update CanvasItem when MultiMesh instance transform changes 2021-11-21 12:27:22 -08:00
Haoyu Qiu eb6f74855f Allow toggle TextEdit bookmark gutter 2021-11-21 21:34:30 +08:00
Marcel Admiraal 4d3690eba5 Remove unimplemented methods 2021-11-18 12:47:36 +00:00
Anton Christoffersson 62db47a7fb
Fixed crash in `ScrollContainer` _notification
(cherry picked from commit ee81979f90)
2021-11-18 12:22:26 +01:00
BrunoSXS 8fd0fe3d20
Fixes a game crash caused by instantiating Camera2D and sending a notification from it before adding it to the tree.
(cherry picked from commit eb2deabffe)
2021-11-18 12:21:28 +01:00
Pedro J. Estébanez 0ebbc5b07c
Fix crash when loading scene instance after node vanished from parent
(cherry picked from commit 78ffc2a987)
2021-11-17 15:55:36 +01:00
Rémi Verschelde c3a6b0f418
Merge pull request #51433 from Calinou/spatialmaterial-improve-simple-parallax 2021-11-16 14:43:49 +01:00
Rémi Verschelde 4103b0b7d8
Merge pull request #50823 from fbcosentino/3d-material-overlay 2021-11-16 08:21:18 +01:00
Fernando Cosentino cc8846bef6 Added material_overlay property to MeshInstance
Applying overlay materials into multi-surface meshes currently
requires adding a next pass material to all the surfaces, which
might be cumbersome when the material is to be applied to a range
of different geometries. This also makes it not trivial to use
AnimationPlayer to control the material in case of visual effects.
The material_override property is not an option as it works
replacing the active material for the surfaces, not adding a new pass.

This commit adds the material_overlay property to GeometryInstance
(and therefore MeshInstance), having the same reach as
material_override (that is, all surfaces) but adding a new material
pass on top of the active materials, instead of replacing them.

Implemented in rasterizer of both GLES2 and GLES3.
2021-11-15 23:50:34 +00:00
Rémi Verschelde 86e0a0674a
Merge pull request #54330 from LennyPhoenix/lennyphoenix-patch-1 2021-11-15 23:36:12 +01:00
Rémi Verschelde 6c0afa470e
Merge pull request #54435 from robfram/hidden-tile-map-light-occlusion 2021-11-15 23:29:04 +01:00
Rémi Verschelde 89792e5c49
Merge pull request #54921 from lawnjelly/portals_roaming_margin 2021-11-15 22:45:46 +01:00
vdyotte 30f359ee3c
fix hardcoded raycast distance with viewport object picking
having the raycast distance hardcoded to `10000` caused input events
to not be registered in very large 3D scenes.

This resolves the issue by using the cameras far distance instead.
Creating the more predictable behavior of if an object is visible,
it will be picked by the viewport.

resolves: #49735
(cherry picked from commit 02b6bbc5df)
2021-11-15 16:31:25 +01:00
Lightning_A 086db0bf9f
Scrollwheel (w/o ctrl) to zoom, mouse warping when panning
Now uses Ctrl + Scrollwheel for vertical scrolling
Ctrl + Shift Scrollwheel for horizontal scrolling
Also converts some macros to constants

(cherry picked from commit 13ba788b63)
2021-11-15 16:10:00 +01:00
lawnjelly 788f075b44 Portals - Allow user to set roaming expansion margin
Previously a crude metric was used to decide on the roaming expansion margin, but it created unexpected results in some scenarios. Instead this setting is exposed to the user via the RoomManager, allowing them to tailor it to the world size, room sizes, roaming objects sizes and the speeds of movement.
2021-11-12 15:46:04 +00:00
Rémi Verschelde 5752457854
Merge pull request #54911 from akien-mga/3.x-modules-check-enabled 2021-11-12 14:49:39 +01:00
Rémi Verschelde 6f4858f184
Modules: Make sure to include `modules_enabled.gen.h` where needed
Fixes #51677.

Co-authored-by: Arkadiusz Marcin Kołek <aksoftware91@gmail.com>
2021-11-12 13:45:33 +01:00
Haoyu Qiu 936832d59c Add methods to remove theme overrides 2021-11-11 18:23:37 +08:00
Hendrik Brucker 97074dcf95 Add GradientTexture2D
Co-authored-by: Mariano Javier Suligoy <marianognu.easyrpg@gmail.com>
Co-authored-by: Andrii Doroshenko <xrayez@gmail.com>
2021-11-10 19:00:40 -07:00
PouleyKetchoupp 1560c8b5aa Fix test_move reporting collision when touching another body
Reporting rest collision information is needed for move_and_collide and
move_and_slide so floor detection can be done properly, but in the case
of just testing the motion for collision, it makes sense to return false
if the body is able to move all along the path without being stopped.

Updated the logic in test_move and clarified the documentation for
test_move and move_and_collide.
2021-11-10 11:07:32 -07:00
Haoyu Qiu 74e8d5c7bd Fix AnimationTree function call track loop 2021-11-10 14:28:27 +08:00
PouleyKetchoupp b93aeec4a2 Fix errors in KinematicBody when floor is destroyed or removed
In all physics servers, body_get_direct_state() now silently returns
nullptr when the body has been already freed or is removed from space,
so the client code can detect this state and invalidate the body rid.

In 2D, there is no change in behavior (just no more errors).

In 3D, the Bullet server returned a valid direct body state when the
body was removed from the physics space, but in this case it didn't
make sense to use the information from the body state.
2021-11-09 15:15:40 -07:00
Pedro J. Estébanez a02bb2b598 Fix detection of non-default and overridden property values in scenes 2021-11-09 15:08:22 +01:00
Rémi Verschelde 1f8497d281
Merge pull request #53411 from RandomShaper/ubershaders_3.x 2021-11-09 13:12:44 +01:00
Pedro J. Estébanez 4c710780d4 Implement async shader compilation plus caching for GL ES 3
Async. compilation via ubershader is currently available in the scene and particles shaders only.

Bonus:
- Use `#if defined()` syntax for not true conditionals, so they don't unnecessarily take a bit in the version flagset.
- Remove unused `ENABLE_CLIP_ALPHA` from scene shader.
- Remove unused `PARTICLES_COPY` from the particles shader.
- Remove unused uniform related code.
- Shader language/compiler: use ordered hash maps for deterministic code generation (needed for caching).
2021-11-09 12:19:12 +01:00
Rémi Verschelde f9174d1c28
Merge pull request #54625 from bruvzg/surrogates 2021-11-09 00:08:28 +01:00
Rémi Verschelde 8923e2d449
Merge pull request #54038 from nekomatata/fix-soft-body-memory-corruption-3.x 2021-11-09 00:01:00 +01:00
Rémi Verschelde bee67513fb
Merge pull request #54033 from nekomatata/fix-collision-mouse-exit-error-3.x 2021-11-09 00:00:47 +01:00
Rémi Verschelde 4b4e92b3d4
Merge pull request #52944 from RandomShaper/property_pin_control_natural_3.x 2021-11-08 18:53:25 +01:00
Pedro J. Estébanez 4dba25b3ff Add property value pinning 2021-11-08 17:42:27 +01:00
Rémi Verschelde 5f87d5ebea
Merge pull request #54385 from Calinou/colorpicker-overbright-indicator-tweak-icon-3.x 2021-11-08 13:15:35 +01:00
Pedro J. Estébanez 76b7d23a10 Unify determination of default property values 2021-11-08 11:17:49 +01:00
Hugo Locurcio cc2b6acbd2
Improve the appearance of simple parallax in SpatialMaterial
This uses offset limiting to avoid distortion in the distance,
and makes simple (non-deep) parallax more usable overall.
2021-11-07 00:58:04 +01:00
Josh Jones 7df8bd6b85 Fix request headers being included in response. 2021-11-06 12:56:25 -07:00
bruvzg 262ec9033a Implement limited surrogate pairs support for platforms with 16-bit wchar_t. 2021-11-06 11:55:06 +02:00
PouleyKetchoupp ec0dc93083
Fix errors with invalid bone node path in Polygon2D
NodePath properties are designed to be relative to the given node, so
validity checks are failing in the editor for Polygon2D nodes, which are
relative to the Skeleton2D node rather than the Polygon2D node.

Fixed by saving bone paths as String properties instead of NodePath.

Shouldn't cause a difference for performance since NodePath properties
are technically saved as String anyway.

(cherry picked from commit 8d9619ad46)
2021-11-03 17:31:10 +01:00
Yuri Sizov ec15227be8 Prevent MeshDataTool from crashing due to invalid bones/weights arrays 2021-11-02 16:52:36 +03:00
Michael Alexsander d5adb9e4b4
Fix uninteractable singular tab in `TabBar`
(cherry picked from commit 96fdb030ec)
2021-10-31 23:10:47 +01:00
robfram cf9220b7d5 Only visible TileMaps should add light occluders 2021-10-30 23:15:07 +02:00
Hugo Locurcio cb441dd9eb
Tweak overbright indicator icon to be more visible on white background
An outline is now present on all sides to ensure it's more visible
when the "new" color (on the right of a ColorPicker) is overbright.
2021-10-29 16:20:40 +02:00