Commit Graph

6948 Commits

Author SHA1 Message Date
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
Rémi Verschelde 55c9cc21e9
Merge pull request #53397 from pycbouh/theme-improve-change-propagation-3.x
[3.x] Make `Theme` report property list changes less often, and other backports
2021-10-04 18:05:16 +02:00
Yuri Sizov 457d48a1f1 Make Theme report property list changes less often 2021-10-04 18:05:23 +03:00
Yuri Sizov 98cf645258 Expose API to retrieve Theme's default font 2021-10-04 17:44:53 +03:00
Yuri Sizov cd45a70f2d Reorganize Theme resource code for better maintainability 2021-10-04 17:09:32 +03:00
Florian Kothmeier 5185cd4f80
Fix AnimationNodeStateMachinePlayback start() on nonexistent node
(cherry picked from commit b6e7df56cb)
2021-10-04 15:22:16 +02:00
Rémi Verschelde 2b642d68c1
Merge pull request #52752 from Pineapple/fix-richtextlabel-character-offsets 2021-10-04 08:52:26 +02:00
kleonc e2e149f4df Fix rendering centered odd-size texture in AnimatedSprite/AnimatedSprite3D 2021-10-03 14:15:21 +02:00
Hugo Locurcio c6617e956c
Tweak the Viewport configuration warning to mention 2×2 size requirement 2021-10-01 16:43:33 +02:00
boruok 85dd970b81 [3.x] Fix AtlasTexture get_data crash 2021-09-30 22:22:10 +09:00
Metin Celik edcb7b8129 Add half frame to floor() 2021-09-29 20:03:07 +02:00
Duarte David a4fecbb0da
Fixes the normals of SphereMesh when the sphere/hemisphere is oblong
(cherry picked from commits f4ac08a182
and 7d53755ca7)
2021-09-29 10:55:51 +02:00
Rémi Verschelde 60bcc91dd5
Merge pull request #53190 from nekomatata/software-skinning-aabb-optimization 2021-09-29 10:34:55 +02:00
Haoyu Qiu eab1e228c8 Fix LineEdit undo crash
Make sure all related member variables are initialized before creating
the first undo state.
2021-09-29 13:52:40 +08:00
PouleyKetchoupp 304102f66f Optimize AABB calculation in software skinning
Using min/max instead of regular AABB for optimal processing.
2021-09-28 10:11:04 -07:00
Rémi Verschelde 72950684c8
Merge pull request #53157 from boruok/fix-atlas-texture-return-null 2021-09-28 18:53:53 +02:00
boruok 768cff7c02 fix atlas texture return null 2021-09-28 16:34:00 +09:00
Rémi Verschelde d4d4603827
Merge pull request #53144 from nekomatata/software-skinning-aabb
Update mesh AABB when software skinning is used
2021-09-28 07:27:23 +02:00
PouleyKetchoupp 941cff4157 Update mesh AABB when software skinning is used
Not updating the mesh properly can cause rendering issues in some cases,
like shadows not updating properly.
2021-09-27 11:56:58 -07:00
Rémi Verschelde ac01b1cb1c
Revert "Fixes the normals of SphereMesh when the sphere/hemisphere is oblong"
This reverts commit c4d0074aae.

It caused regression #52965.
2021-09-27 18:27:55 +02:00
Matthew Newall e01d609c02
Updated Tabs to not update excessively
(cherry picked from commit 082f924566)
2021-09-27 18:09:47 +02:00
Michael Alexsander b4d6afb7ad
Expose `TabContainer`'s tab hidding for scripts
(cherry picked from commit 7ce02b642e)
2021-09-27 18:06:36 +02:00
Yuri Sizov 020807dc0f Correctly calculate position of the folding arrow in Tree 2021-09-25 02:01:35 +03:00
Laurenz Reinthaler aad01cd0c6 Fix VisibilityEnabler2D throwing a signal error when process_parent or physics_process_parent are enabled 2021-09-24 19:03:10 +02:00
lawnjelly 279e6f65cd Portals - add reason string to unload message
To help users identify conditions that are causing room system invalidation, a reason message is passed to the unload function and logged.
2021-09-24 14:00:24 +01:00
Rémi Verschelde 044cafc31a
Merge pull request #52894 from laws65/3d-skeleton-bone-fix 2021-09-23 12:10:26 +02:00
Rémi Verschelde 08887fd391
Merge pull request #52955 from nekomatata/fix-kinematic-collision-reference-3.x 2021-09-23 10:26:17 +02:00
PouleyKetchoupp 8b562543df Don't override KinematicCollision reference when still in use in script
In case the reference is stored in script, create a new instance to
avoid overriding the previous values.
Otherwise, re-use the reference as before to avoid extra allocations.
2021-09-22 18:15:03 -07:00
Haoyu Qiu 45b4304f10 Fix crash in Tween.follow_property
Check `p_object` for null before using it.
2021-09-22 13:38:21 +08:00
Rémi Verschelde dd0ee48728
Merge pull request #52900 from akien-mga/3.x-cherrypicks 2021-09-21 21:40:47 +02:00
John Wigg d484e30247
Fix y billboard shear when rotating camera
Fixes shear effect with `BILLBOARD_FIXED_Y` when the camera is rotated around the z-axis by rotating the mesh correctly into view space.

Also removes shearing effects that occur when rotating the mesh by excluding the model rotation and scale from the billboard matrix.

(cherry picked from commit d3850a0954)
2021-09-21 20:33:11 +02:00
PouleyKetchoupp ad5e70cde4 Fix moving platforms with ray shapes
In the case of ray shapes, the body RID used to apply platform velocity
wasn't properly set.
2021-09-21 09:00:23 -07:00
Espeute Clement a259112d6e
Fixed Animation Playback Track not seeking properly
Fixes #38093.

(cherry picked from commit aa72af4f46)
2021-09-21 17:15:00 +02:00
skysphr f53294f874
Added increment_pressed and decrement_pressed icons to scrollbars
(cherry picked from commit e27ab2708f)
2021-09-21 17:14:59 +02:00
kobewi 44a56c9742
Add offset for TextureProgress progress texture
(cherry picked from commit e78ee616f7)
2021-09-21 17:14:59 +02:00
gyroninja 9f0d7b70fd
Fail at instantiating if the root node is instantiated
(cherry picked from commit f400c9239e)
2021-09-21 17:14:58 +02:00
Silc 'Tokage' Renew fa45aa22cb
Fixed seeking behavior of property track with discrete interpolation
(cherry picked from commit 6613d9cf67)
2021-09-21 17:14:57 +02:00
laws65 d1bacb53fd Prevent being able to set bone's parent as itself 2021-09-21 22:06:03 +09:30
Rémi Verschelde be6b7b4f9f
Merge pull request #52475 from tcoxon/fix_43733_3.x
Prevent shaders from generating code before the constructor finishes. [3.x]
2021-09-21 13:53:17 +02:00
Tom Coxon 9e9bac1549 Prevent shaders from generating code before the constructor finishes.
Fixes #43733: "creating SpatialMaterial in a separate thread creates invalid
shaders (temporarily)."

The bug occurred because various setters called in materials' constructors add
materials to queues that are processed on the main thread. This means that
when the materials are created in another thread, they can be processed on the
main thread before the constructor has finished.

The fix adds a flag to affected materials that prevents them from being added
to the queue until their constructors have finished initialising all the
members.
2021-09-21 11:47:51 +01:00
Rémi Verschelde 22aab6be1c
Merge pull request #51796 from RandomShaper/dangling_obj_release_3.x
[3.x] Promote object validity checks to release builds
2021-09-21 11:48:11 +02:00
Pedro J. Estébanez 26edc6cd41 Promote object validity checks to release builds
Extra:
- Optimized the debug-only check about why the object is null to determine if it's because it has been deleted (the RC is enough; no need to check the ObjectDB).
- Because of the previous point. the debugger being attached is not required anymore for giving the "Object was deleted" error; from now, it only matters that it's a debug build.
- `is_instance_valid()` is now trustworthy. It will return `true` if, and only if, the last object assigned to a `Variant` is still alive (and not if a new object happened to be created at the same memory address of the old one).
- Replacements of `instance_validate()` are used where possible `Variant::is_invalid_object()` is introduced to help with that. (GDScript's `is_instance_valid()` is good.)
2021-09-21 10:39:04 +02:00
Rémi Verschelde b37776fa2f
Merge pull request #52591 from timothyqiu/error-macros
[3.x] Remove do{ } while(0) wrapper around error macros
2021-09-21 10:38:34 +02:00
Rémi Verschelde 1ceba6e1b0
Merge pull request #52585 from Calinou/screen-texture-improve-no-sampling-error 2021-09-20 16:25:16 +02:00
Silc 'Tokage' Renew a95b015968
fixed AnimationNodeTransition when xfade time is zero
(cherry picked from commit 02d8166427)
2021-09-20 13:19:41 +02:00
Hugo Locurcio 210ab11643
Write node groups one a single line when saving a `.tscn` file
This makes `.tscn` files more readable by ensuring sections are always
written on a single line.

(cherry picked from commit d33a7367b6)
2021-09-19 11:30:21 +02:00
Rémi Verschelde d92405de74
Merge pull request #52728 from jmb462/ninepatchrect_node_warning 2021-09-17 20:22:10 +02:00
Camille Mohr-Daurat bb885c5704
Merge pull request #52369 from bengtsts/3.x
Expose soft body pin methods to GDScript
2021-09-17 06:19:54 -07:00
Bengt Söderström 73b9b84995 Expose soft body pin methods to GDScript 2021-09-17 11:25:31 +02:00
jmb462 a9d0baa4f4 Add a node warning using NinePatchRect's Tile or Tile Fit modes in GLES2 2021-09-17 06:29:10 +02:00
Hugo Locurcio 7922c262f6
Display a editor gizmo icon for Listener
The icon was present in `editor/icons/`, but it was never implemented
in the editor gizmos code.

This also removes some unused gizmo drawing code (overridden methods
that are no longer called anywhere).
2021-09-16 23:37:12 +02:00
Bartłomiej T. Listwon 903765f94d Fix RichTextLabel character horizontal offset calculation 2021-09-16 21:44:17 +02:00
PouleyKetchoupp ab55c33c20 Fix TextEdit cursor update when adding or deleting text
Updating the viewport while setting the line index before the column is
set could wrongly cause the text to be scrolled down.
2021-09-16 09:14:22 -07:00
Rémi Verschelde c33ff6bf6b
Merge pull request #47235 from opl-/fix/25046-3.x 2021-09-16 15:24:09 +02:00
Rémi Verschelde 627577d615
Merge pull request #47346 from nekomatata/heightmap-draw-triangles-3.x 2021-09-16 15:23:06 +02:00
Ed Swartz c79898a7b8 Use left/right arrow to move cursor when unselecting in LineEdit
-- useful for rename dialog (the filename portion is selected by
default, and usually, want to change the end of the name, not the
beginning)
2021-09-14 20:26:10 -05:00
Rémi Verschelde 20f14e0a16
Merge pull request #52586 from JFonS/lm_bake_end
Fix editor getting stuck after baking lightmaps from a script
2021-09-14 22:40:48 +02:00
Haoyu Qiu 018f28bead
Make sure IK target is inside tree before using its transform
(cherry picked from commit 88e3ba83f0)
2021-09-14 13:41:30 +02:00
PouleyKetchoupp 389e67aa98
Fix loading packed scene with editable children at runtime
At runtime, packed scenes with nodes marked as editable instance where
saved with node type tags, which prevented the scene to be then loaded
as an instance, causing duplicated nodes in the tree.

This change ensures nodes marked as editable instances and their owned
children are properly set as instances.

That doesn't make a difference in the editor, since such nodes where
already set as instances based on their instance state, but it helps
at runtime where instance states are disabled.

Co-authored-by: latorril <latorril@gmail.com>
(cherry picked from commit fab88a810c)
2021-09-14 13:41:27 +02:00
Yuri Roubinsky b36b81cbdd
Better port handling connection for `GraphEdit`
(cherry picked from commit 61904d56ea)
2021-09-14 13:41:27 +02:00
Lewis Pollard 4e68f089e0
Fix is_playing() method in AnimatedSprite3D
(cherry picked from commit 2450173495)
2021-09-14 13:41:26 +02:00
Duarte David c4d0074aae
Fixes the normals of SphereMesh when the sphere/hemisphere is oblong
(cherry picked from commit f4ac08a182)
2021-09-14 13:41:26 +02:00
Haoyu Qiu 930a1ea746
Make RichTextLabel honour default cursor shape property
(cherry picked from commit d12cceadd2)
2021-09-14 13:41:26 +02:00
Vincent ea13ff860d
implement individual mesh transform for meshlibrary items
(cherry picked from commit 70108fd850)
2021-09-14 13:41:22 +02:00
Rémi Verschelde f85ad007c0
Merge pull request #52338 from lawnjelly/portals_fix_portal_import
Portals - fix import of portal normal + small bug fixes
2021-09-14 10:21:44 +02:00
Haoyu Qiu 70853fd669 Remove do{ } while(0) wrapper around error macros 2021-09-12 15:04:53 +08:00
JFonS 14eb739418 Fix editor getting stuck after baking lightmaps from a script 2021-09-12 01:01:29 +02:00
Hugo Locurcio 1c63e335b3
Improve the error message about `SCREEN_TEXTURE` being unavailable
This also tweaks the Viewport `usage` property hint to match the
project setting used for the root viewport.
2021-09-11 23:17:07 +02:00
opl- a8a52f576e Fix DynamicFont breaking mouse grab in inspector spinners
This was caused by DynamicFont not specifying which property was edited, resulting in the whole inspector property tree being recreated.
2021-09-11 20:12:44 +02:00
Endri Lauson 077083938e Add a new high quality tonemapper: ACES Fitted 2021-09-08 19:12:09 -03:00
Max Hilbrunner 76693aa364
Merge pull request #52182 from lawnjelly/portals_pvs_enum
Portals - Fix RoomManager PVS enum
2021-09-07 21:23:48 +02:00
Gilles Roudière cf48297ea2
Merge pull request #52047 from nobuyukinyuu/bind-get-tab-idx-at-point
[3.x] Bind TabContainer::get_tab_idx_at_point() to ClassDB
2021-09-07 11:10:27 +02:00
Camille Mohr-Daurat 8608ece42f
Merge pull request #50405 from nekomatata/clean-convex-hull-decomposition-3.x
[3.x] Clean convex hull decomposition code
2021-09-06 09:34:50 -07:00
Gilles Roudière ac89f9d7d7
Merge pull request #52361 from Calinou/minimap-add-hover-pressed-feedback-3.x
Add visual feedback when hovering or dragging the code minimap grabber (3.x)
2021-09-06 17:02:46 +02:00
Marcus Brummer d3866d78f2 Initialize n_warnings_dropped to 0 in ScriptDebuggerRemote 2021-09-05 12:20:49 +02:00
Hugo Locurcio 85ebe8e3f6
Add visual feedback when hovering or dragging the code minimap grabber
This makes it more obvious that the minimap grabber can be dragged
to scroll.
2021-09-04 02:25:44 +02:00
lawnjelly 116e2ce799 Portals - fix import of portal normal + small bug fixes
When converting portal meshes during import, indices were not being taken into account, which could lead to incorrect estimation of the portal direction. This PR now copes with either indexed or non-indexed portal meshes.

Added a bug fix to cope with portals pointing almost directly straight up or down, which could cause problems with the lookat transform.

Added the ability for named portals to link to short room names (in addition to postfix room names).
2021-09-02 10:39:47 +01:00
kleonc 8004678d57 TabContainer Fix drawing current tab when it's disabled 2021-09-01 04:01:07 +02:00
Aaron Franke ee69b57434
[3.x] Fix KinematicBody axis lock 2021-08-29 20:38:09 -05:00
nobuyuki_nyuu 522af5c614 Bind TabContainer::get_tab_idx_at_point() to ClassDB 2021-08-29 09:11:41 -05:00
lawnjelly 7ea35da462 Portals - Fix RoomManager PVS enum
The PVS mode enum had been declared using scope operator, which does not seem to work correctly from GDScript with the BIND_ENUM_CONSTANT macro.

This PR removes the scope operator in the declaration.
2021-08-28 07:27:50 +01:00
Max Hilbrunner 17e61fa0af
Merge pull request #52095 from kleonc/tree-item-drag-drop-drawing-3x
[3.x] Tree Fix line rendering when drag and dropping TreeItem
2021-08-27 20:55:58 +02:00
LeaoLuciano 9cecabb186 LinkButton's text now is automatically translated 2021-08-26 17:56:34 -03:00
Haoyu Qiu 5183c473f7 Backport new methods for KinematicBody and KinematicCollision
For both 2D and 3D, three methods are added:

- `get_floor_angle` on `KinematicBody` to get the floor angle.
- `get_angle` on `KinematicCollision` to get the collision angle.
- `get_last_slide_collision` to quickly get the latest collision of `move_and_slide`.
2021-08-26 12:16:40 +08:00
kleonc 92ea0f7dd9 Tree Fix line rendering when drag and dropping TreeItem 2021-08-25 12:03:05 +02:00
Hugo Locurcio f5e83e7305
Merge pull request #52052 from Calinou/dynamicfont-allow-woff
Allow using WOFF fonts in DynamicFont
2021-08-25 10:37:15 +02:00
Hugo Locurcio 1ab3ddf94a
Allow using WOFF fonts in DynamicFont
This is already supported by FreeType, but it wasn't exposed.

Adding support for WOFF2 would require linking a Brotli decompression
library in Godot, so only WOFF1 is exposed here.
2021-08-25 08:09:23 +02:00