Commit graph

7223 commits

Author SHA1 Message Date
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
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