Commit graph

7035 commits

Author SHA1 Message Date
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
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
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
lawnjelly
ab76cd6ff2 Faster editor line drawing - Path2D and draw_line
Changes the Path2D drawing to use POLYLINE instead of thick lines.
Add a path to translate thick lines (that are not using anti-aliasing) to draw as polygons instead. This should be faster because polygons can be batched.
2021-10-29 12:40:24 +01:00
Rémi Verschelde
14ef65e49b
Merge pull request #54348 from akien-mga/3.x-clang-format-dont-align-operands 2021-10-28 15:43:15 +02:00
Rémi Verschelde
1b65550ec7
clang-format: Various fixes to comments alignment from clang-format 13
All reviewed manually and occasionally rewritten to avoid bad auto formatting.
2021-10-28 14:50:32 +02:00
Rémi Verschelde
42d385b312
clang-format: Disable alignment of operands, too unreliable
Sets `AlignOperands` to `DontAlign`.

`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
2021-10-28 13:23:38 +02:00
Lenny Critchley
3d1249a520
Add error condition for Control EXIT_TREE notif 2021-10-28 00:26:57 +01:00
Rémi Verschelde
187f293189
Merge pull request #54154 from bjauny/fix_areanotification 2021-10-27 20:38:55 +02:00
Bastien JAUNY
a6ca61797c Checking validity of world reference before using it. Fix #54094. 2021-10-27 19:32:44 +02:00
Yuri Sizov
b3fc278dcf Ignore property groups and categories in GDScript code completion 2021-10-26 20:01:49 +03:00
Yuri Sizov
7fe0dab69b Add focus font color to Button and derivatives 2021-10-26 17:40:51 +03:00
kobewi
cef504b955
Fix multiple definitions of Listener2D
(cherry picked from commit 6b68445e4d)
2021-10-26 13:34:33 +02:00
Rémi Verschelde
8ff437822a
Control: Rename Input group that confuses GDScript completion
Fixes #47926.
2021-10-25 22:07:20 +02:00
Zae
a1b282cc16
Fix unexpected crashes in notification
(cherry picked from commit 924c2078da)
2021-10-25 11:16:59 +02:00
Anton Christoffersson
35eeafdb0c Fixes crash in caused by calling ColorPickerButton.propagate_notification(33) 2021-10-25 08:47:44 +02:00
Rémi Verschelde
62f56af694
Merge pull request #54146 from akien-mga/3.x-cherrypicks 2021-10-23 18:34:23 +02:00
Rémi Verschelde
5a48cba649
Merge pull request #54152 from bjauny/fix_treenotification 2021-10-23 18:33:32 +02:00
Bastien JAUNY
e74db1de23 #54143 Fix potential null pointer dereference 2021-10-23 14:47:02 +02:00
Sean Kim
378ca68dc1
Fix potential nullptr dereference in CanvasLayer
* Changed another instance of ERR_FAIL_COND in the same file to
  ERR_FAIL_NULL_MSG instead.
* Checked for potential access of the viewport pointer elsewhere in same
  file.

Fixes #54098

(cherry picked from commit 497b00a937)
2021-10-23 11:57:52 +02:00
Kemikal1
fa2feb9bec
Change the unreacheable return value of shape_find_owner()
(cherry picked from commit 563d3dbf94)
2021-10-23 11:57:10 +02:00
kobewi
f0dabe4ac5
Fix MeshInstance2D rect
(cherry picked from commit 1a347e9cf3)
2021-10-23 11:54:55 +02:00
Robin Arys
0dcf1e3a45
Fix Tabs crash where it still tries to detect the clicked tab even if there are none
(cherry picked from commit 2203670ccc)
2021-10-23 11:53:58 +02:00
Haoyu Qiu
5366743454 Fix RichTextLabel meta link detection when used inside a fill tag 2021-10-22 16:20:56 +08:00
Rémi Verschelde
2c548d5005
Merge pull request #54049 from rxlecky/baked-lightmap-add-no-root-error-53774 2021-10-21 13:51:30 +02:00
SeleckyErik
98c0ffb749 Add BAKE_ERROR_NO_ROOT to BakedLightmap
Add new error type to BakeError to signalise that there is no root node to
start baking from.
Document the new error type, as well as BAKE_ERROR_NO_LIGHTMAPPER.
2021-10-21 13:32:03 +02:00
Rémi Verschelde
b7ded89fe9
Merge pull request #54057 from skimmedsquare/procedural-sky-thread-done-crash-53621 2021-10-21 12:00:07 +02:00
Sean Kim
8de5b78a97 Fix crash on null image ref in ProceduralSky 2021-10-20 22:55:08 -07:00
Haoyu Qiu
7e6e6c871b Make RichTextLabel honor content margin when drawing font shadow 2021-10-21 11:30:45 +08:00
PouleyKetchoupp
67635bfcc2 Fix SoftBody memory corruption when switching mesh at runtime
When switching the mesh at runtime, the physics server wasn't properly
updated with the new mesh. Now we keep track of the soft body mesh to
make sure everything is properly initialized on pre-draw.

Also cleaned a few things around private methods.
2021-10-20 10:52:38 -07:00
PouleyKetchoupp
b4b94ac8a0 Fix errors in mouse detection when removing collision object from tree
Now behaves the same way as ui elements, mouse exit is skipped when the
object is removed from the tree.
2021-10-20 09:01:26 -07:00
Haoyu Qiu
37ef6036d0 Add missing cache clear in RichTextLabel::_process_line 2021-10-20 23:46:57 +08:00
Hugo Locurcio
dc3b614a6a
Tweak AudioStreamPlayer3D property hints for usability
This also improves the documentation for the `max_distance` property.

(cherry picked from commit b383181851)
2021-10-18 11:24:42 +02:00
Rémi Verschelde
f6784e18d1
Merge pull request #53848 from MaxLap/backport_doc_shape_signals 2021-10-15 18:54:43 +02:00
Maxime Lapointe
f3002c62b7 Improve area/body_shape_entered/exited signals parameter names and doc
Fix some typoed names from the doc
Add _index to "index" parameters of *_shape_* signals, this is both in doc and in the template. This makes the code, signature and doc easier to understand
Add method to get Node from the _index params of those signals. This was not as easy to find as one would expect. Putting this information where it is needed will help.
2021-10-15 11:28:17 -04:00
floppyhammer
0b5724514d
Fix bilinear TextureProgressBar with nine patch enabled
(cherry picked from commit a238816f0b)
2021-10-15 12:51:42 +02:00
Red Headphone
066f214654
no limit of negative value for engine_force (VehicleBody class)
(cherry picked from commit fff70a6427)
2021-10-15 12:51:42 +02:00
Fabio Alessandrelli
6c4bb3fc4a Revert HTTPRequest gzip compression support.
Partial revert of commit c1135cf006.
2021-10-14 12:51:37 +02:00
Yuri Sizov
b02c61ddb1 Ignore OS specific values (constants, project settings, properties)
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2021-10-10 23:40:32 +03:00
Michael Alexsander
eeb6652436
Fix invisible tabs not being ignored in Tabs
(cherry picked from commit 3c5103ac1d)
2021-10-10 12:27:51 +02:00
Haoyu Qiu
52ebe5993e
Use loop instead of recursion when clearing proximity groups
(cherry picked from commit 6072f38bb1)
2021-10-10 12:27:51 +02:00
Hugo Locurcio
7dcefa7c1b
Add a warning for Timer nodes with very low wait times
Very low wait times behave in unpredictable ways depending on the
rendered frame rate. This is because the timeout signal is only emitted
once per rendered frame (or physics frame, depending on the timer's
process mode).
2021-10-09 11:36:03 +02:00
Rémi Verschelde
c00848ae03
Merge pull request #53572 from kleonc/scene-tree-free-objects-queued-during-destruction-3x 2021-10-08 18:10:45 +02:00
kleonc
ae96da28d8 Delete objects enqueued for deletion during SceneTree destruction 2021-10-08 16:38:38 +02:00
Rémi Verschelde
06fc2378de
Merge pull request #51491 from Calinou/glow-add-high-quality-mode-3.x
Add high quality glow mode (3.x)
2021-10-08 07:47:07 +02:00
Haoyu Qiu
ff27b994cd Re-prepare VisualServer if SoftBody mesh changed 2021-10-06 23:25:14 +08:00
Haoyu Qiu
52a840b9c9 Fix crash when tooltip_request_func object is freed 2021-10-06 15:33:31 +08:00
PouleyKetchoupp
00d4a30b05
Fix editable children errors when packing scene tree at runtime
When packing a scene node which is not the root, errors where caused
by internal checks in is_editable_instance method.

This check can be safely made outside instead.

(cherry picked from commit 2f6cf3b8a8)
2021-10-06 09:29:31 +02:00
Haoyu Qiu
0f18f225ee Fix crash when deleting Camera2D and Viewport assigned to it 2021-10-06 13:41:21 +08:00
Rémi Verschelde
77f52bdf99
Merge pull request #52137 from Ansraer/3.x-2d-scale-factor 2021-10-05 19:12:19 +02:00
Rémi Verschelde
d35fccb651
Merge pull request #52365 from jitspoe/3.x.viewport_error_fix
[3.x] Fix ViewportTexture error when viewport is used from a child scene
2021-10-05 18:51:51 +02:00
Rémi Verschelde
bd7bea2087
Merge pull request #53233 from metinc/fix-animated-sprite-precision-error 2021-10-05 15:23:51 +02:00
Ansraer
d44aa61735 implement better ui scaling 2021-10-05 14:30:38 +02:00
kobewi
f9720a9bf2 Add Listener2D 2021-10-05 13:29:59 +02:00
jitspoe
d2637ca950
Fix ViewportTexture error when viewport is used from a child scene
Fix invalid errors when a separate child scene file contains a viewport and
that viewport is used for a texture in the current scene.

Fixes #27790.
2021-10-05 12:17:42 +02:00
Rémi Verschelde
69437eb746
Merge pull request #53012 from lawnjelly/portals_unload_reason 2021-10-05 12:00:43 +02:00
Rémi Verschelde
58fe0bd2cb
Merge pull request #53052 from kleonc/animated-sprites-centered-rendering-3x 2021-10-05 11:22:26 +02:00
Michael Alexsander
a5214f437f
Fix Tabs offset overreaching when scrolling fast
(cherry picked from commit 0dd65fff3b)
2021-10-05 10:53:06 +02:00
Rémi Verschelde
72a922eb4e
Merge pull request #53300 from Calinou/viewport-tweak-configuration-warning-3.x 2021-10-04 20:31:05 +02:00