Commit graph

35590 commits

Author SHA1 Message Date
lawnjelly
2dcd4141b8
Merge pull request #90417 from lawnjelly/tighter_light_cull_colinear_fix3
[3.x] Tighter shadow culling - fix light colinear to frustum edge
2024-04-09 08:22:30 +01:00
lawnjelly
46a04d160e Tighter shadow culling - fix light colinear to frustum edge
In rare situations if a light is placed near colinear to a frustum edge, the extra culling plane derived can have an inaccurate normal due to floating point error.
This PR detects colinear triangles, and prevents adding a culling plane in this situation.
2024-04-09 07:25:35 +01:00
lawnjelly
f7e9369665
Merge pull request #90381 from timothyqiu/node-ready-3.x
[3.x] Add `Node.is_node_ready()`
2024-04-08 15:39:27 +01:00
Rémi Verschelde
ab2bdd8752
Merge pull request #90252 from akien-mga/3.x-nanosvg-2023-12
[3.x] nanosvg: Sync with upstream 93ce879
2024-04-08 15:01:08 +02:00
Haoyu Qiu
fe65682937 Add Node.is_node_ready 2024-04-08 17:44:23 +08:00
Paweł Fertyk
90cf873979 Fix AudioStreamPlayer not paused on pause mode change
Fixes #58543.
2024-04-05 14:20:44 +02:00
Rémi Verschelde
abee48d063
nanosvg: Sync with upstream 93ce879
93ce879dc4
2024-04-05 11:19:09 +02:00
lawnjelly
1a9b5b7c99
Merge pull request #88345 from SysError99/3.x-get_or_add
[3.x] Add a `get_or_add` method to Dictionary
2024-04-04 13:04:16 +01:00
lawnjelly
75cadbabcb
Merge pull request #81089 from SysError99/3.x-dont-warm-about-return-value-discarded
[3.x] GDScript: Don't warn about `RETURN_VALUE_DISCARDED` by default
2024-04-04 13:02:22 +01:00
Haoyu Qiu
fbd9d389f0 Don't error multiple times when trying to load missing default bus layout 2024-03-31 17:34:13 +08:00
Kirill Diduk
52507443d3 Check duplicate keys in dictionary literals: enums and const variables
Check identifiers (const variables and unnamed enums) and named
enums when parsing dictionary literals whether the keys are not
duplicated.

In case of duplicate key is encountered, highlight the line with it
and print error message:
`Duplicate key "foo" found in Dictionary literal`

This commit is a logical continuation of the commit dab73c7 which
implemented such checks only for literal keys (which fixed #7034).

Apart from that, this commit also fixes the issue with the error
message itself, which was shown one line below the duplicated key
in case it was the last one in the dictionary literal and there
was no hanging comma.

Also, the format of the error message has been changed so that now
the error message also contains the value of the key which is duplicated.
Instead of `Duplicate key found in Dictionary literal`, it now prints
`Duplicate key "<value>" found in Dictionary literal`

Fixes #50971
2024-03-25 00:07:51 +01:00
Rémi Verschelde
02c02403e0
Merge pull request #89149 from AThousandShips/math_improve_3_x
[3.x][Core] Codestyle improvements to math types
2024-03-23 16:43:09 -07:00
lawnjelly
975046932c
Merge pull request #89636 from lawnjelly/optimize_anim_tree
[3.x] Optimize anim tree
2024-03-20 17:18:50 +00:00
lawnjelly
bb9608a7e6
Merge pull request #89609 from 0xafbf/automatic-provisioning-on-release-ios
[3.x] Allow automatic provisioning in iOS when using development signature.
2024-03-19 12:34:46 +00:00
lawnjelly
a0f130e23c Optimize AnimationTree::_process_graph()
Removes redundant lookups on HashMap.
2024-03-18 09:01:41 +00:00
Andrés Botero
9c4035fb7b Allow automatic provisioning in iOS when using development signature.
Implements https://github.com/godotengine/godot/pull/86748/files in 3.x.
2024-03-17 08:56:48 -05:00
A Thousand Ships
3fb36bf395
[Core] Codestyle improvements to math types 2024-03-17 09:22:18 +01:00
lawnjelly
8eaf180f11
Merge pull request #89580 from lawnjelly/fti2d_transform_const_ref
[3.x] Physics Interpolation 2D - change transform API to use const ref
2024-03-17 07:46:52 +00:00
lawnjelly
64457bab85
Merge pull request #89577 from lawnjelly/fti2d_fix_light_resets
[3.x] Physics Interpolation 2D - fix light and light occluder resetting
2024-03-16 17:13:02 +00:00
lawnjelly
e5a4aee3a6 Physics Interpolation 2D - change transform API to use const ref 2024-03-16 16:50:47 +00:00
lawnjelly
f8438601ef Physics Interpolation 2D - fix light and light occluder resetting
It turns out `NOTIFICATION_TRANSFORM_CHANGED` is deferred for these nodes, which can mean the transform is not set in the `VisualServer` until after the reset has been sent, even if the transform is set before the reset in script. This prevented the reset from acting correctly.

Here we explicitly set the transform prior to each reset, to ensure the `VisualServer` is up to date.
2024-03-16 16:02:22 +00:00
lawnjelly
a3a43d9623
Merge pull request #65711 from mortarroad/3.x-scene-import-find-animation-player
[3.x] Fix finding AnimationPlayer in scene import
2024-03-16 15:45:45 +00:00
lawnjelly
ac7292ffaf
Merge pull request #89565 from AThousandShips/no_3d_fix_3_x
[3.x] Fix building with `disable_3d`
2024-03-16 14:05:01 +00:00
A Thousand Ships
0f6d2c3441
Fix building with disable_3d 2024-03-16 11:31:23 +01:00
Morris Tabor
ae51d5ad33 Fix finding AnimationPlayer in scene import
The scene importer always assumed that the AnimationPlayer is called
"AnimationPlayer".

This is not always true: for example the GLTF importer just creates an
AnimationPlayer with the default name, which may be "animation_player",
depending on the project settings.

This fix instead chooses the first node that is an AnimationPlayer, and
warns if there is more than one.
2024-03-12 20:50:16 +01:00
Rémi Verschelde
bbd9578d18
Merge pull request #89345 from bruvzg/3x_no_li
[3.x, iOS] Remove deprecated LaunchImages support and switch to Storyboard by default.
2024-03-10 11:30:46 +01:00
bruvzg
5255b661b4
[3.x, iOS] Remove deprecated LaunchImages support and switch to Storyboard by default. 2024-03-10 10:10:14 +02:00
Rémi Verschelde
1ad9e856a0
Merge pull request #88198 from lawnjelly/fix_facecount_bug
[3.x] Fix `Mesh::get_face_count()`
2024-03-08 17:54:04 +01:00
Rémi Verschelde
ae7dfd1f13
Merge pull request #85437 from lawnjelly/lod_scene_side
[3.x] Discrete Level of Detail
2024-03-08 17:53:58 +01:00
lawnjelly
6c35b48986
Merge pull request #88305 from Ovnuniarchos/editor_properties_fixup
[3.x] Fix EditorPropertyLocale connecting to inexistent signal `text_submitted`.
2024-03-08 14:15:55 +00:00
lawnjelly
758daacd24
Merge pull request #88490 from AlekseyKapustyanenko/Rotary-input-3.x
[3.x] Add rotary input support for Android platform
2024-03-08 14:11:51 +00:00
lawnjelly
04670d05cc
Merge pull request #87689 from BZ1234567890/issue-87059-b3x
[3.x] [Android 14] Fix GodotEditText white box showing during game load
2024-03-07 16:06:32 +00:00
Rémi Verschelde
60ff43b7ce
Merge pull request #88943 from lawnjelly/fix_scenedock_filter_crash
[3.x] Fix SceneTree dock filter crash
2024-02-28 09:45:28 +01:00
lawnjelly
9a9dccbaa2 Fix physics on_floor_body crash
Physics body previously stored the RID of a collision object and accessed it on the next frame, leading to a crash if the object had been deleted.
This PR stores the ObjectID in addition to the RID, and checks the object still exists prior to access.
2024-02-28 07:54:00 +00:00
lawnjelly
39e61b76c6 Fix SceneTree dock filter crash
The filter was crashing for two reasons:
1) Deleting a child invalidated the iteration of children
2) Child was accessed after deletion
2024-02-28 05:42:42 +00:00
lawnjelly
6e0468d452
Merge pull request #88367 from Faless/gdnative/arm_sysv_abi_warnings
[3.x] GDNative: Fix Linux arm32 warning about ignored sysv_abi attribute
2024-02-27 15:01:22 +00:00
lawnjelly
50fa1896b8
Merge pull request #88828 from Mickeon/3.x-funny-regressions
[3.x] Fix TileSet editor selected regression
2024-02-27 13:34:04 +00:00
lawnjelly
23671a4ea5
Merge pull request #88287 from Ansraer/3.x_orm_fix_glb
[3.x] Fix crash on mat creation after ORM refactor
2024-02-27 12:29:04 +00:00
lawnjelly
6a31048dbc Tilemap editor - prevent changing tool when mouse buttons pressed
Changing tool when painting prevented the corresponding commit of undo action when the mouse button was released. This led to undo actions getting out of sync and the undo system breaking the editor.

This PR simply prevents changing tool while mouse buttons are pressed, and prevents the above scenario.
2024-02-26 15:27:31 +00:00
Micky
02a2968764 [3.x] Fix TileSet editor selected regression 2024-02-25 22:46:23 +01:00
lawnjelly
788567987a Portals - defer setting active in VisualServer until enter tree
`set_portal_active()` was being called loading packed scenes prior to entering the tree, visual server portals had not been fully created at this point hence the call was being ignored with an error flagged.
This PR defers the call until after entering the tree.
2024-02-25 10:11:06 +00:00
Aleksey Kapustyanenko
99c8cd2b17 Rotary input for 3.x 2024-02-18 22:25:10 +04:00
Ansraer
1e7c60174e fix crash on mat creation after orm refactor 2024-02-16 20:51:27 +01:00
Fabio Alessandrelli
90b83e77a6 [3.x] GDNative: Fix Linux arm32 warning about ignored sysv_abi attribute 2024-02-15 14:30:03 +01:00
SysError99
b3f93ad127 [3.x] Add a get_or_add method to Dictionary
Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
2024-02-15 19:49:43 +07:00
BZ1234567890
1065527ca7 [3.x] [Android 14] Fix GodotEditText white box showing during game load 2024-02-15 01:10:00 +01:00
Ovnuniarchos
86b23b6473 FIXED: Trying to connect inexistent signal text_submitted. 2024-02-13 23:26:54 +01:00
lawnjelly
a32a2613e9 Fix Mesh::get_face_count()
This fixes a minor bug whereby facecount was actually returning the facecount * 3.
There were no major problems from this, but it did mean the optional threshold poly count used when merging was out by a factor of 3.
2024-02-11 12:19:52 +00:00
Charlie Burnham
51681ed501 Backport fix documentation about body_shape_index 2024-02-10 17:39:54 -06:00
lawnjelly
1b5fa74e39 Discrete Level of Detail
Add scene side discrete level of detail.

New node `LOD` for UI, and `LODManager` within `World` for automatically updating child visibilities based on distance from cameras.
2024-02-10 18:54:25 +00:00