Commit Graph

6742 Commits

Author SHA1 Message Date
Rémi Verschelde 6ec2caf12c
Merge pull request #48763 from QbieShay/plane-offset
[3.x] Added a center_offset property to both plane primitive and quad primitive
2021-07-12 10:32:19 +02:00
PouleyKetchoupp 240c33708c Options to clean/simplify convex hull generated from mesh
Clean: remove duplicate and interior vertices (uses Bullet algorithm)
Simplify: modify the geometry for further simplification (uses VHACD
algorithm)

In the editor, single convex hull now uses the clean option.
Added a new editor entry to create a simplified convex hull, can be
useful for creating convex hull from highly tessellated triangle meshes.

Specific change for 3.x:
Add support for Vector<Vector3> and PoolVector<Vector3> in the convex hull generator.
2021-07-09 17:45:59 -07:00
Rémi Verschelde 7f971089fb
FileDialog: Fix capitalization for overwrite prompt
Sorry I can't take it anymore, I wince every time I see it.
Already fixed in master :)
2021-07-08 01:05:45 +02:00
Francois Belair a4a2ab3ee0 Add cache to color picker for presets
This prevents loading from the project metadata more than once,
significantly saving performance with nodes that have color pickers.
2021-07-07 18:06:31 -04:00
kobewi ff7cae4c4c Allow to create a node at specific position 2021-07-07 13:19:59 +02:00
kleonc 23ad87cc92 Add AcceptDialog::remove_button method 2021-07-06 18:27:03 +02:00
Michael Alexsander d453b59cba
Make invisible `SplitContainer` nodes correctly calculate the minimal size of its children
(cherry picked from commit e4d56e4c62)
2021-07-06 11:10:46 +02:00
Eric 09b231e15f
Enable Camera2D smoothing on limit change
(cherry picked from commit 525ad7c37e)
2021-07-06 11:10:35 +02:00
JFonS a2ba7910ba Add soft shadows to the CPU lightmapper
Adds the "light_size" property to Lights. It's only considered in baked
lightmaps for soft shadowing purposes.
2021-07-05 19:02:35 +02:00
lawnjelly 21a24eb959 Most recently added current Camera2D takes precedence
The situation when multiple current Camera2Ds were in the scene was not dealt with. This could leave several cameras with their current bool set, and each competing to update the viewport scroll, in a random / accidental fashion.

This PR standardises the rule that the most recent current Camera2D added to the scene tree takes over the current status, and sets all other current cameras in the scene tree to non-current. This makes the bools correct, and also prevents the competition over viewport scroll.
2021-07-03 08:58:20 +01:00
Rémi Verschelde ef3c346df2
Merge pull request #49835 from nekomatata/soft-body-disable-physics-3.x
[3.x] Support for disabling physics on SoftBody
2021-07-01 10:01:33 +02:00
trollodel 814e25d2d8
Fix GraphNode port position when the control has the Expand flag
(cherry picked from commit 07c3b40aa2)
2021-06-29 14:02:23 +02:00
Hugo Locurcio e7d6f8b8b8
Allow a top and bottom radius equal to 0 in CylinderMesh
The CylinderMesh generation code handles this special case and
avoids generating the top and bottom faces if their radius is equal
to 0. This improves performance by reducing the number of vertices
to draw.

If both values are set to 0, nothing will be visible but the mesh
generation will still succeed.

This also improves the CylinderMesh class documentation.

(cherry picked from commit b4ed84ba2b)
2021-06-29 14:02:22 +02:00
Pedro J. Estébanez cd96e30fee
Remove side effects of scene save
(cherry picked from commit 598fd51277)
2021-06-29 13:13:06 +02:00
PouleyKetchoupp cad2ba013a
Fix export var override in PackedScene at runtime
Regression fix: update_exports is tool only and should be used only in
the editor, otherwise it can cause export variable overrides from
instances to be discarded in favor of the parent's value.

(cherry picked from commit f1587c8a7d)
2021-06-29 13:12:52 +02:00
floppyhammer fa77e501f7
Improve nine patch behavior of TextureProgressBar
(cherry picked from commit b08dc1ea35)
2021-06-29 12:59:23 +02:00
Rémi Verschelde c550033420
Merge pull request #49955 from Calinou/prevent-setting-big-small-collision-mask-layer-3.x
Prevent setting too big or too small Collision Mask and Layer (3.x)
2021-06-28 14:08:54 +02:00
Rafał Mikrut cb5faca39a
Prevent setting too big or too small Collision Mask and Layer 2021-06-27 17:40:07 +02:00
Hugo Locurcio 11033be5c6
Fix flipped binormal in SpatialMaterial triplanar mapping
This made normal maps on triplanar materials use an inverted Y direction
compared to non-triplanar materials.
2021-06-27 16:32:03 +02:00
PouleyKetchoupp 4694b2b3e4 Support for disabling physics on SoftBody
New property physics_enabled, can be useful for optimization purpose.
2021-06-22 11:38:17 -07:00
Yuri Sizov b91e3237c6 Make relationship lines draw on top of TreeItems 2021-06-21 16:54:59 +03:00
Hugo Locurcio a9c0c5484f
Add support for contrast-adaptive sharpening in 3D (GLES3 only)
This is an older, easier to implement variant of CAS as a pure
fragment shader. It doesn't support upscaling, but we won't make
use of it (at least for now).

The sharpening intensity can be adjusted on a per-Viewport basis.
For the root viewport, it can be adjusted in the Project Settings.

Since `textureLodOffset()` isn't available in GLES2, there is no
way to support contrast-adaptive sharpening in GLES2.
2021-06-21 15:37:31 +02:00
Yuri Sizov 7120be9ff5 Overhaul the theme editor and improve user experience
Backport of #49388, #49772.
2021-06-21 01:37:54 +03:00
Yuri Sizov 014cb0c33a Refactor Theme item management in the theme editor
Backport of #46593, #46808, #49227
2021-06-20 20:34:37 +03:00
Rémi Verschelde 03f275e66f
Merge pull request #49167 from amoriqbal/3.3-inspector-patch
Fixed inspector not updating anchor
2021-06-20 12:42:21 +02:00
Rémi Verschelde 6fecaddbec
Merge pull request #49731 from Calinou/cylindermesh-allow-zero-rings-3.x
Tweak CylinderMesh `rings` property hint to allow a value of 0
2021-06-20 00:44:08 +02:00
Hugo Locurcio 3143f5fcc5
Use double-sided material for RayCast
This makes RayCasts visible if the camera is fully inside one
(e.g. a RayCast parented to the current Camera).
2021-06-19 09:16:42 +02:00
Hugo Locurcio a82c90ca55
Tweak CylinderMesh `rings` property hint to allow a value of 0
A value of 0 rings is valid and results in a non-subdivided cylinder.

Compared to the previous lowest allowed value (1), a value of 0 halves
the triangle count in any cylinder.
2021-06-19 08:52:24 +02:00
Hugo Locurcio a6a6ad5c08
Add custom debug shape thickness and color options to RayCast
This backports the improved RayCast debug drawing functionality
from the `master` branch.

`ArrayMesh.clear_surfaces()` was also backported from the `master`
branch and exposed because the new debug drawing code requires it.
2021-06-19 06:01:25 +02:00
Marcel Admiraal 7e03bd1671 Remove duplicate WARN_PRINTS macro 2021-06-18 12:57:59 +01:00
Rémi Verschelde fc95c4d84c
Merge pull request #49476 from nekomatata/kinematic-collision-rid-3.x
[3.x] Expose collider RID in 2D/3D kinematic collision
2021-06-18 12:32:42 +02:00
Rémi Verschelde c7f27f1d9d
Merge pull request #48651 from tavurth/3.x
Port HTTPRequest gzip compression to 3.4
2021-06-18 02:01:11 +02:00
kleonc ce763fe402
TextureButton Update min size on any texture change
(cherry picked from commit 6c3c269f24)
2021-06-17 12:47:54 +02:00
Hugo Locurcio 28aacbfe85
Allow higher and lower maximum zoom values in GraphEdit
Low zoom values result in unreadable text, but it can still be
useful for previewing purposes.

Eventually, characters could be replaced by rectangles at very low
zoom levels to improve the visual appearance.

(cherry picked from commit 74c584472c)
2021-06-17 12:47:54 +02:00
Jason Knight 7510e1c24b
Emit button_up signal after setting pressed to false.
(cherry picked from commit 4c6ad8abcd)
2021-06-17 12:47:53 +02:00
PouleyKetchoupp c957035320 Fix external resource cache regression 2021-06-16 16:07:04 -07:00
Rémi Verschelde 465ab36ddf
Merge pull request #49653 from madmiraal/remove-err_prints-3.x
[3.x] Remove duplicate ERR_PRINTS macro
2021-06-16 17:33:22 +02:00
Marcel Admiraal 5a58516231 Remove duplicate ERR_PRINTS macro 2021-06-16 11:56:25 +01:00
Hugo Locurcio f36c90b82f
Add a soft line length guideline to the script editor
The default value is 80. The hard line length guideline's default column
has been moved to 100 to account for the new soft line length guideline.

It can be disabled by setting its value to the same column as the
hard line length guideline.
2021-06-16 06:00:02 +02:00
Rémi Verschelde de04394c73
Merge pull request #49625 from nekomatata/fix-sub-resource-cache-3.x
[3.x] Fix sub-resource storing the wrong index in cache
2021-06-15 20:39:28 +02:00
PouleyKetchoupp f9abd1ec0e Fix sub-resource storing the wrong index in cache
1. Backport sub-resource cache fixes from master.
Uses a cache by index to keep sub resource indices consistent.

2. The subindex within Resource wasn't synchronized with the path stored in cache when saving a packed scene. It could cause
sub-resources to be swapped when loading the same packed scene in
the same session.

Now the subindex in Resource reflects the sub-resource path in cache,
making saving and loading sub-resources consistent.

Co-authored-by: latorril <latorril@gmail.com>
2021-06-15 09:54:58 -07:00
Rémi Verschelde 87532d2711
Merge pull request #49606 from azagaya/3.x
[3.x] Fix vertical slider `grabber_area` height calculation
2021-06-15 00:12:23 +02:00
azagaya 3b84c32b52 Fix vertical slider grabber_area height calculation 2021-06-14 15:46:09 -03:00
Rémi Verschelde c45ce768b1
Merge pull request #47854 from mortarroad/3.x-lossless-webp
[3.x] Implement lossless WebP encoding
2021-06-11 19:35:47 +02:00
Morris Tabor 5de08ef1d6 Implement lossless WebP encoding 2021-06-11 18:48:04 +02:00
Rémi Verschelde a9f56d80f0
Merge pull request #49341 from lawnjelly/vis_notifier_fix 2021-06-11 14:43:53 +02:00
Rémi Verschelde e6a6293146
Merge pull request #49487 from pycbouh/theme-utility-methods-3.x 2021-06-11 13:40:21 +02:00
Marcel Admiraal 88b8f28acc Move default values from definition to declaration in GraphEdit 2021-06-10 17:17:18 +01:00
Yuri Sizov fddd09de17 Fix typo in Control's theme icon look-up method
Backported from #47544 where it was originally identified
2021-06-10 16:44:24 +03:00
Yuri Sizov de1ba1f260 Add utility methods to Theme, improve error messages and documentation
Backport of relevant parts of #47251, #49308
2021-06-10 16:44:24 +03:00
Yuri Sizov 83012d6927 Expose missing Theme methods
Backport of relevant, non-breaking parts of #37759
2021-06-10 15:31:23 +03:00
PouleyKetchoupp a146e79758 Expose collider RID in 2D/3D kinematic collision
Can be useful to access the colliding body information for bodies
created with the physics server directly.
2021-06-09 18:26:16 -07:00
Rémi Verschelde d84d5a9665
Merge pull request #49332 from megalobyte/doc-prev-search
[3.x] Fix previous search for built-in-docs
2021-06-09 11:11:15 +02:00
Rémi Verschelde 0d68db1b85
Merge pull request #49280 from timothyqiu/rtl-break
[3.x] Fix RichTextLabel auto-wrapping on CJK texts
2021-06-09 10:53:11 +02:00
megalobyte 7408b33895 Fix previous search for built-in-docs 2021-06-08 23:11:42 -07:00
PouleyKetchoupp 8a095b2b15 Support for 3D sync to physics
Same implementation as in 2D, specific to 3.x branch.
2021-06-08 16:28:58 -07:00
Hugo Locurcio 2e6a4aea99
Allow more items in automatic width calculation for TextEdit completion
Calculating the width for 100 items takes a millisecond in
a debug build on an i7-6700K. It's likely that the editor can remain
smooth even with 1,000 items, especially in a release build.
2021-06-08 16:21:39 +02:00
Haoyu Qiu 3a591aaeeb Fix RichTextLabel auto-wrapping on CJK 2021-06-08 21:04:20 +08:00
lawnjelly 0c6617887e Fix VisibilityEnabler to work with AnimationTree
Although the visibility enabler worked to turn on and off AnimationPlayer as it enters and exits the view frustum, this was of little use as bones animation and especially software skinning still take place driven by the AnimationTree node.

This PR adds the ability to turn on and off AnimationTree, and AnimationTreePlayer nodes as they enter or exit the view frustum, which achieves the intention of switching off expensive animation processing.
2021-06-08 07:13:25 +01:00
Rémi Verschelde 5d8fe70de5
Merge pull request #49377 from Calinou/readd-dynamicfont-kerning
Readd support for kerning in DynamicFont (3.x)
2021-06-07 14:30:44 +02:00
Rémi Verschelde 80e1585a6e
Style: Cleanup uses of double spaces between words
Or after punctuation. Tried to leave third-party stuff alone, unless it has
been heavily modified for Godot.

(cherry picked from commit c1c76850cb)
2021-06-07 12:06:59 +02:00
Marcel Admiraal fd982ecd15 Rename CollisionObject3D input_event signal position and normal parameters 2021-06-07 09:50:47 +01:00
Hugo Locurcio c5ed95a526
Readd support for kerning in DynamicFont
DynamicFont kerning was removed in
a9b7843dca.

This readds kerning support and fixes it at the same time.

Co-authored-by: follower <follower@rancidbacon.com>
2021-06-07 02:36:10 +02:00
Rémi Verschelde ed28ce53bf
Merge pull request #47142 from jmb462/fix-tween-is_active-always-true-after-stop-and-start
[3.x] Fix Tween.is_active() always true after stop() and then start() (Fix #39760 & #39801)
2021-06-03 11:16:08 +02:00
Hugo Locurcio e0facdaf61
Uncap the range for gravity and change the slider hints
There's not really a reason to cap the gravity amount, and we can also
give better hints for the range (for 3D, ±32 is much more sensible
than ±1024).
2021-06-03 02:08:57 +02:00
Rémi Verschelde 4fe8941f8c
Merge pull request #48957 from phil-shenk/iss48936-control_set_scale
added _change_notify in Control::set_scale to fix iss48936
2021-06-01 23:00:44 +02:00
Rémi Verschelde e0fb05ad30
Merge pull request #49237 from akien-mga/3.x-cherrypicks 2021-06-01 13:35:56 +02:00
Rémi Verschelde fb294606b5
Merge pull request #48771 from LightningAA/scrollcontainer-ensure-item-visible-3.x
[3.x] ScrollContainer: Expose `_ensure_focused_visible` to the scripting API and rename it to `ensure_control_visible`
2021-06-01 12:58:56 +02:00
Fabio Alessandrelli b6a5f8422a
[Net] Fix HTTPRquest store_buffer error.
HTTPRquest no longer call store_buffer/append_array when the chunk size
is 0.

(cherry picked from commit 507a9beca1)
2021-06-01 12:53:31 +02:00
Haoyu Qiu 14969a5945
Check cache_parent_physical_bone when rebuilding parent cache
(cherry picked from commit 96fe795bdb)
2021-06-01 12:53:31 +02:00
Hugo Locurcio 93d157d213
Tweak Camera2D editor line colors for better visibility
The new color for screen drawing was chosen to be easier to distinguish
from the 2D viewport limits.

This also makes lines less opaque when the Camera2D has the Current
property enabled. The increased line width is enough to spot the
camera easily, and the increased opacity on top of that felt obnoxious.

(cherry picked from commit 8e2a7fff1d)
2021-06-01 12:53:30 +02:00
Leonardo Christino 21eea9cd6c
Make GraphNode handle children with EXPAND flag
(cherry picked from commit 5d574d980d)
2021-06-01 12:52:18 +02:00
PouleyKetchoupp 87ed7d32de
Added flip_h and flip_v properties in TextureButton
(cherry picked from commit 5f1d94bb7d)
2021-06-01 12:52:14 +02:00
Lightning_A 6f58e6ce2c ScrollContainer: Expose `_ensure_focused_visible` to the API
Was renamed to `ensure_control_visible`
2021-05-31 19:05:30 -10:00
Lynx 1b7c2a1428 Fix not updating fonts when parent theme changes
Reparsing the bbcode content when we receieve a theme changed
notification just like we already do in ENTER_TREE.

Resolves #49089
2021-05-28 20:44:00 +02:00
amor dacc726faf Fixed inspector not updating anchor 2021-05-28 18:20:13 +05:30
Rémi Verschelde 00abdaf333
Merge pull request #49075 from nekomatata/tilemap-collision-debug-fix-3.x
Fix logic for showing tilemap debug collision
2021-05-25 21:12:48 +02:00
PouleyKetchoupp 114da550ec Fix logic for showing tilemap debug collision
In editor: only when show_collision property is enabled
In game: only when 'Visible collision shapes' is enabled
2021-05-25 11:49:47 -07:00
Hugo Locurcio a38b447413
Highlight control flow keywords with a different color
This makes them easier to distinguish from other keywords.
2021-05-25 00:31:39 +02:00
TwistedTwigleg ec7b72e81d SkeletonIK: Fixed issue where bones become detached if multiple SkeletonIK nodes are used 2021-05-24 11:30:16 -04:00
Rémi Verschelde ac3417005d
Merge pull request #48533 from mortarroad/3.x-convex-hull-ported
[3.x] Port Bullet's convex hull computer to replace of QuickHull
2021-05-22 23:23:15 +02:00
Rémi Verschelde 1d06a7edac
Merge pull request #48974 from trollodel/debug_shapes_update_crash_3.x
Fix crash on debug shapes update if CollisionObject is not in tree
2021-05-22 18:29:31 +02:00
trollodel 7043d6d1c6 Fix crash on debug shapes update if CollisionObject is not in tree
Also fix ConcavePolygonShape not emitting the changed signal
2021-05-22 17:33:51 +02:00
Morris Tabor ba396caefc Replace QuickHull with Bullet's convex hull computer.
The code is based on the current version of thirdparty/vhacd and modified to use Godot's types and code style.

Additional changes:
- backported and extended PagedAllocator to allow leaked objects
- applied patch from https://github.com/bulletphysics/bullet3/pull/3037
2021-05-22 08:16:43 +02:00
phil-shenk 04729d9c65 added _change_notify in Control::set_scale to fix iss48936 2021-05-22 01:12:53 -04:00
Haoyu Qiu bec1dcb6f6 Fix crash when using get_available_chars with invalid DynamicFontData 2021-05-21 10:22:20 +08:00
Hugo Locurcio 8d9cef3726
Remove high radiance sizes from the editor due to issues on specific GPUs
These values can still be set by code, but are no longer presented in
the editor.
2021-05-20 23:54:12 +02:00
Rémi Verschelde eb78f80f03
Fix typos with codespell
Using codespell 2.0.0.

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

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2021-05-20 12:56:56 +02:00
Haoyu Qiu f75ace5ac5
Fix ragdoll simulation when parent was readded to scene
(cherry picked from commit a701927d89)
2021-05-19 19:48:36 +02:00
Marcel Admiraal 09456c2a01 Return RID instead of Object id in area-body_shape_entered-exited signals. 2021-05-19 10:51:59 +01:00
Hugo Locurcio 333dfb96da
Scroll faster when holding Alt in TextEdit (and script editor)
This feature is inspired by a similar feature found in
Visual Studio Code.

(cherry picked from commit cf1cf6c6eb)
2021-05-18 11:58:09 +02:00
kleonc 57fdddecff
BitMask::create Don't request more memory than needed when size is a multiply of 8
(cherry picked from commit 8963be2ef4)
2021-05-18 11:58:09 +02:00
Rémi Verschelde 0053b31592
Merge pull request #47801 from QbieShay/ring-emitter-3.x 2021-05-18 10:54:15 +02:00
QbieShay 1ec46cb1eb added offset for plane mesh and quad mesh 2021-05-17 22:07:16 +02:00
Sonoracpp 0b723358bb Disable GIProbe emission when disabled on a material
Fixes https://github.com/godotengine/godot/issues/48230
2021-05-17 20:24:33 +04:00
kleonc 7eccdbe693
Fix accessing scene tree without checking: MeshInstance3D::create_debug_tangents, GIProbe::bake
(cherry picked from commit ef589a7cd3)
2021-05-17 13:08:46 +02:00
John Wigg c3c3497c17
Fix normals of PrismMesh
(cherry picked from commit c8e402324e)
2021-05-17 13:07:58 +02:00
Haoyu Qiu 1866a605e1
Fix Tree::get_column_at_position crash
(cherry picked from commit c8efcf81d2)
2021-05-17 13:07:39 +02:00
Pedro J. Estébanez 817ffc01e1
Make all file access 64-bit (`uint64_t`)
This changes the types of a big number of variables.

General rules:
- Using `uint64_t` in general. We also considered `int64_t` but eventually
  settled on keeping it unsigned, which is also closer to what one would expect
  with `size_t`/`off_t`.
- We only keep `int64_t` for `seek_end` (takes a negative offset from the end)
  and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means
  we only need to guard against passing negative values in `core_bind.cpp`.
- Using `uint32_t` integers for concepts not needing such a huge range, like
  pages, blocks, etc.

In addition:
- Improve usage of integer types in some related places; namely, `DirAccess`,
  core binds.

Note:
- On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with
  version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for
  big files on 32-bit Windows builds made with that toolchain. We might add a
  workaround.

Fixes #44363.
Fixes godotengine/godot-proposals#400.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-05-16 17:52:31 +02:00
Brennen Green fac2e5dc67
Manually unpacked normal mapping to fix issue with refraction being offset rather than distorted.
(cherry picked from commit 31f2d946ad)
2021-05-14 11:35:27 +02:00
Will Whitty c1135cf006 Work on porting HTTPRequest compression to 3.3
Fix doc issues

Use memcpy

Bind RESULT_BODY_DECOMPRESS_FAILED

Docs update
2021-05-14 12:20:31 +03:00
Rémi Verschelde 9d1770d4fb
Merge pull request #44657 from timothyqiu/inspect-dynamic-3.2
[3.x] Fix display of programmatically created value in remote inspector
2021-05-14 10:23:27 +02:00
Eoin O'Neill 0e7c2ea331
Attempt to fix rich text label effects processing even when
the node is invisible.

ISSUE:47687
(cherry picked from commit c4f976b38b)
2021-05-14 10:17:17 +02:00
Rémi Verschelde 39826d3a94
Merge pull request #47310 from mortarroad/3.x-fix-particles-material-spread
[3.x] Fix ParticlesMaterial spread.
2021-05-11 09:10:31 +02:00
Hugo Locurcio d990035ebb
Implement reverting to the old color when clicking it in ColorPicker 2021-05-10 22:43:04 +02:00
Hugo Locurcio 6d03fe5194
Display the old color in ColorPicker for easier comparison
This only affects ColorPickerButton nodes that spawn a ColorPicker,
not standalone ColorPickers.
2021-05-10 17:36:03 +02:00
Rémi Verschelde 18277679a7
Merge pull request #48588 from trollodel/collisionobject3d-no-mi-3.x
[3.x] Create CollisionObject debug shapes using VS
2021-05-09 18:55:25 +02:00
trollodel 60ee8c9639 Create CollisionObject debug shapes using VS 2021-05-09 18:30:27 +02:00
Hugo Locurcio 0c424abe3c
Fix Tree's background focus outline displaying behind section headings
(cherry picked from commit 63897f16b1)
2021-05-09 17:51:36 +02:00
kobewi cb5870dd4a
Display arrow cursor if text is not editable
(cherry picked from commit c3967c80ab)
2021-05-09 17:50:06 +02:00
Tokage 0454848f4d
fix unintentional object rotation by animation tree
(cherry picked from commit ddac0e95dc)
2021-05-09 17:48:45 +02:00
besh81 c1e887edb8
Fixed bug in tab_container with hidden tabs
Fix a bug that occour when there are hidden tabs in tab_container.
The visualization isn't correct due to missing values in tab_widths array.

(cherry picked from commit e7e7aa7d12)
2021-05-09 17:47:38 +02:00
Gilles Roudière 472f7e9756
Adds a pressed signal to ButtonGroup
(cherry picked from commit 323f176915)
2021-05-09 17:47:37 +02:00
kleonc 1184013fcf
TileMap::world_to_map Ensure half offset is added according to the returned value
Decide whether half offset should be added based on the value used for calculating the return value of this method.

(cherry picked from commit f1420c7cbf)
2021-05-09 17:15:44 +02:00
Rémi Verschelde ee86dc3011
TileSet: Improve error message for invalid IDs
Supersedes #47321.
Fixes #47313.
2021-05-09 16:56:52 +02:00
QbieShay 3af20b9bdf Added ring emitter for 3D particles
This commits adds a new emitter type for particles material
and 3D CPU particles. The new emitter is called "ring"
and it can emit either in a ring or cylinder fashion.
This adds the following properties for the emitter:
1. ring_emitter_axis: the axis along which the ring/cylinder
    will be constructed
2. ring_emitter_radius: outer radius of the ring/cylinder
3. ring_emitter_inner_radius: inner radius of the cylinder.
    when set to zero, particles will emit in the full volume.
4. ring_emitter_height: height of the ring/cylinder emitter.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-05-09 13:18:05 +02:00
Pedro J. Estébanez 4da9a501f6 Add animation reset track feature
As a bonus, to have consistency between use Beziers and create insert tracks, use Beziers also gets a default via editor settings that is used when the confirmation dialog is disabled, instead of just falling back to creating non-Bezier tracks.
2021-05-09 09:40:16 +02:00
rafallus 0ad0f71ba0
Check input mesh is valid in SurfaceTool methods 2021-05-09 00:38:17 +02:00
Marcel Admiraal 8766769fd4 Move collision layer and mask into CollisionObject. 2021-05-08 11:40:57 +01:00
Rémi Verschelde 84061ab03d
Merge pull request #48251 from TwistedTwigleg/skeletonik_changes_and_bug_fixes_regressionfix3_Godot3
[3.x] Fixed issue in SkeletonIK leading to some root bones being twisted incorrectly
2021-05-08 10:40:38 +02:00
TwistedTwigleg c1bc87ed0d Fixes the SkeletonIK twisting issue by using the skeleton global pose without overrides 2021-05-06 20:11:21 -04:00
Rémi Verschelde 64403ddcab
Merge pull request #42543 from clayjohn/vertex-lighting-bug
Force vertex shading in SpatialMaterial when used
2021-05-07 00:48:32 +02:00
clayjohn 3dd2e5d870 Only set base in Sprite3D when needed 2021-05-05 22:35:21 -07:00
clayjohn 0445531ced Force vertex shading in SpatialMaterial when used 2021-05-05 19:49:18 -07:00
Rémi Verschelde 2a1fb62e96
Merge pull request #48316 from nekomatata/expose-physics-debug-shape-3.x
[3.x] Expose get_debug_mesh in Shape to scripting API
2021-05-05 15:17:48 +02:00
Rémi Verschelde 140350d767
Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
Rémi Verschelde 0c8b5b5c4d
Style: Remove redundant void argument lists
Using clang-tidy's `modernize-redundant-void-arg`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-redundant-void-arg.html
2021-05-04 16:40:33 +02:00
Rémi Verschelde b4af1eba0a
Style: Enforce use of bool literals instead of integers
Using clang-tidy's `modernize-use-bool-literals`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2021-05-04 16:39:13 +02:00
Rémi Verschelde a828398655
Style: Replaces uses of 0/NULL by nullptr (C++11)
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
Rémi Verschelde b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
Rémi Verschelde 64a63e0861
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde 3d15f04668
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde 6e600cb3f0
Style: Set clang-format Standard to c++14 2021-05-04 14:45:15 +02:00
Rémi Verschelde 7e61be3cb0
Style: Remove executable bit from non-runnable files 2021-05-04 14:45:07 +02:00
Koala d08666f999
Fix indent left line selection
(cherry picked from commit 2c64008718)
2021-05-04 12:47:36 +02:00
PouleyKetchoupp cc83557716
Allow values > 1 for friction and bounce in PhysicsMaterial
(cherry picked from commit 67987be644)
2021-05-04 12:46:35 +02:00
Rémi Verschelde 9052d56c92
Merge pull request #48217 from nekomatata/fix-mesh-instance-skinning-init
Fix skinning initialization in MeshInstance when loaded from thread
2021-05-04 12:28:04 +02:00
Fabio Alessandrelli 77e3514315
[Net] Implement String::parse_url for parsing URLs.
Splits the URL into (scheme, host, port, path).
Supports both literal IPv4 and IPv6.
Strip credentials when present (e.g. http://user:pass@example.com/).

Use that function in both HTTPRequest and WebSocketClient.

(cherry picked from commit 3bb40669d5)
2021-05-03 21:39:43 +02:00
Rémi Verschelde 6abf571d79
Merge pull request #48324 from MaxStgs/fix_comparsion
[3.x] Fix BakedLightmap bias bound check
2021-05-03 17:06:15 +02:00
MaxStgs b4cc8ed6f2 Fix BakedLightmap bias bound check 2021-04-30 15:16:51 +05:00
PouleyKetchoupp 0ba5001fb6 Expose get_debug_mesh in Shape to scripting API
Can be useful for custom drawing of physics shapes without having to add
a collision object node to the tree.
2021-04-29 18:20:29 -07:00
Rémi Verschelde e94161dada
SCons: Add explicit dependencies on thirdparty code in cloned env
Since we clone the environments to build thirdparty code, we don't get an
explicit dependency on the build objects produced by that environment.

So when we update thirdparty code, Godot code using it is not necessarily
rebuilt (I think it is for changed headers, but not for changed .c/.cpp files),
which can lead to an invalid compilation output (linking old Godot .o files
with a newer, potentially ABI breaking version of thirdparty code).

This was only seen as really problematic with bullet updates (leading to
crashes when rebuilding Godot after a bullet update without cleaning .o files),
but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.

(cherry picked from commit c7b53c03ae)
2021-04-29 16:57:00 +02:00
Rémi Verschelde 0c14d10522
Merge pull request #48296 from akien-mga/3.x-cherrypicks 2021-04-29 13:48:49 +02:00
Rémi Verschelde 606073db06
Merge pull request #47173 from LightningAA/graphedit-zoom-cherrypicks 2021-04-29 13:33:17 +02:00
Rémi Verschelde d252ef4c5e
Merge pull request #46527 from kuruk-mm/3_2_lineedit 2021-04-29 13:32:33 +02:00
Rémi Verschelde 880b830ca8
Merge pull request #46292 from hilfazer/nested_scene_instances_duplication 2021-04-29 13:31:27 +02:00
Rémi Verschelde 188147e82c
Merge pull request #48259 from akien-mga/scenetree-global_menu_action-types
SceneTree: Fix type hints for `global_menu_action` signal
2021-04-29 13:27:32 +02:00
Rémi Verschelde 70ae90e0e8
Core: Drop custom `copymem`/`zeromem` defines
We've been using standard C library functions `memcpy`/`memset` for these since
2016 with 67f65f6639.

There was still the possibility for third-party platform ports to override the
definitions with a custom header, but this doesn't seem useful anymore.

Backport of #48239.
2021-04-29 12:34:11 +02:00
Rémi Verschelde d54c13ac1a
Tabs: Remove unused 'panel' stylebox from default theme
Cf. https://github.com/godotengine/godot/issues/37875#issuecomment-625297308.

(cherry picked from commit cd8d321961)
2021-04-29 12:30:10 +02:00
Lightning_A e4addffde1
Put physics override parameters in their own group and document that areas can be used to influence audio
(cherry picked from commit 80b1a29c46)
2021-04-29 12:27:31 +02:00