Commit graph

15247 commits

Author SHA1 Message Date
Arseny Kapoulkine
18d6ae1161 Fix LOD generation for meshes with tangents & mirrored UVs
When UVs are mirrored in a mesh, collapsing vertices across the
mirroring seam can significantly reduce quality in a way that is not
apparent to the simplifier. Even if simplifier was given access to UV
data, the coordinates would need to be weighted very highly to prevent
these collapses, which would penalize overall quality of reasonable
models.

Normally, well behaved models with mirrored UVs have tangent data that
is correctly mirrored, which results in duplicate vertices along the
seam. The simplifier automatically recognizes that seam and preserves
its structure; typically models have few edge loops where UV winding is
flipped so this does not affect simplification quality much.

However, pre-processing for LOD data welded vertices when UVs and
normals were close, which welds these seams and breaks simplification,
creating triangles with distorted UVs.

We now take tangent frame sign into account when the input model has
tangent data, and only weld vertices when the sign is the same.
2024-07-23 16:35:46 -07:00
Rémi Verschelde
adf58849c6
Merge pull request #94645 from jsjtxietian/lightmap-override
Fix newly baked lightmap can't override previously baked at same path
2024-07-23 15:55:39 +02:00
Rémi Verschelde
05504ebf27
Merge pull request #94439 from kitbdev/fix-reopen-hscroll
Fix ScriptEditor scrolling horizontally when reopening script
2024-07-23 15:55:32 +02:00
Rémi Verschelde
307efbadf8
Merge pull request #94420 from TokageItLab/player-seek-internal
Handle internal seek on AnimationPlayer to process discrete correctly
2024-07-23 13:08:05 +02:00
Rémi Verschelde
add558f3bc
Merge pull request #94304 from TokageItLab/fix-end-of-statemachine
Fix StateMachine process when transition to end & optimize StringName
2024-07-23 13:07:59 +02:00
jsjtxietian
a8526e68a7 Fix newly baked lightmap can't override previously baked at same path 2024-07-23 12:38:20 +08:00
Rémi Verschelde
962c2512c3
Merge pull request #94611 from Chaosus/vs_fix_texture_warning
Fix warning printing for `VisualShaderNodeTextureParameter`
2024-07-22 14:13:20 +02:00
Rémi Verschelde
6694f55f40
Merge pull request #94606 from bruvzg/rtl_msdf_r
[RTL] Fix text size rounding with MSDF fonts.
2024-07-22 14:13:17 +02:00
Rémi Verschelde
3018178d3f
Merge pull request #94286 from aaronp64/flowcontainer_resort_crash
Avoid `FlowContainer` crash with `TextureRect` using EXPAND_FIT_* expand modes
2024-07-22 14:12:48 +02:00
David Trallero
67ece3dc63
Fix polyphonic audio streams with id > 1 cannot be stopped or changed (MSVC mis-optimization) 2024-07-22 14:08:02 +02:00
Yuri Rubinsky
7c9afbc139 Fix warning printing for VisualShaderNodeTextureParameter 2024-07-22 11:22:27 +03:00
bruvzg
93ccf8e9e4
[RTL] Fix text size rounding with MSDF fonts. 2024-07-22 07:48:29 +03:00
aaronp64
5682cc7b81 Avoid FlowContainer crash with TextureRect using EXPAND_FIT_* expand modes
When a FlowContainer had a TextureRect child using any of the EXPAND_FIT_* expand modes, it could crash when changing the FlowContainer's minimum size, or that of its children.  This was due to the TextureRect resizing in FlowContainer::_resort, updating its minimum size, and triggering another _resort.  If the TextureRect's minimum size changed in a way that caused any of the FlowContainer's children to be put on a different line, it could repeatedly cause _resort to be called again, moving the children back and forth between the old and new lines.

This change is for FlowContainer::_resort to give a warning for TextureRects with EXPAND_FIT_* expand modes when multiple lines are used, and just keep the TextureRect size the same in that case.  This is similar to the check added to AspectRatioContainer in godotengine#73396, but attempting to still support it in FlowContainer when possible.  In the case where the TextureRect is forced to stay the same size, there may be some overlap between the FlowContainer's children, but should no longer crash.
2024-07-21 13:09:22 -04:00
Rémi Verschelde
d9bfdfdd64
Merge pull request #94521 from jamie-pate/fix_92333
Fix dynamic-stack-buffer-overflow crash when executing random functions on random physics objects
2024-07-19 11:10:59 +02:00
Rémi Verschelde
edefcf6d1e
Merge pull request #94230 from CrazyRoka/optimize-gdscript-get-position
Optimize `Node::is_readable_from_caller_thread()` by prioritizing the most common case
2024-07-19 11:10:43 +02:00
Jamie Pate
eb5f1299b2 Fix dynamic-stack-buffer-overflow crash when executing random functions on random physics objects
Fixes #92333

This looks correct, and fixes the ASAN assertion I'm currently getting
in my program.
2024-07-18 19:22:03 -07:00
Rémi Verschelde
caa1b6d991
Merge pull request #94498 from Chaosus/vs_fix_connection_bug
Fix internal connection count decreased if visual shader node removed
2024-07-18 15:38:27 +02:00
Rémi Verschelde
72e434bad4
Merge pull request #94497 from Chaosus/vs_rotation_by_axis
Few fixes for `VisualShaderNodeRotationByAxis`
2024-07-18 15:38:24 +02:00
Rémi Verschelde
7d71b4be37
Merge pull request #94422 from m4gr3d/fix_input_locking_issue
Fix input lock issue when drag scrolling on a `Tree` element on touchscreen devices
2024-07-18 15:38:17 +02:00
Rémi Verschelde
d12030e6d7
Merge pull request #94365 from KoBeWi/every_single_time
Fix empty region in AtlasTexture
2024-07-18 15:38:11 +02:00
kobewi
10da06a32c Fix empty region in AtlasTexture 2024-07-18 15:31:59 +02:00
A Thousand Ships
832695eb2c
[Tests] Fix various unit tests on minimal builds 2024-07-18 15:17:28 +02:00
Fredia Huya-Kouadio
70d450d086 Fix issue causing input lock when drag scrolling a Tree element on touchscreen devices
Prior to this fix, scrolling via mouse drag on touchscreen devices, and
drag&drop operation on a `TreeItem` element would conflict with each other
preventing the drag scroll from being released when the mouse button is
released.

The issue is addressed by disabling drag&drop when drag scrolling is ongoing.
2024-07-18 04:09:54 -07:00
Rémi Verschelde
43902f43d5
Merge pull request #94237 from BlueCube3310/lightmap-atlas-loop-fix-always
Lightmapper: Prevent infinite loop while blitting lightmaps into an atlas
2024-07-18 10:45:33 +02:00
Yuri Rubinsky
14c36b733c Fix internal connection count decreased if visual shader node removed 2024-07-18 11:40:02 +03:00
Yuri Rubinsky
cf70cb57ee Few fixes for VisualShaderNodeRotationByAxis 2024-07-18 11:10:36 +03:00
Adam Scott
2f5f84b470
Fix audio samples not being able to be "finished" 2024-07-17 10:45:38 -04:00
Rémi Verschelde
fa2266716e
Merge pull request #94363 from bruvzg/fix_code_completion_scroll
[macOS] Fix code completion list scrolling with trackpad.
2024-07-17 15:45:10 +02:00
Rémi Verschelde
e7b624567d
Merge pull request #94345 from matheusmdx/fix-instance-placeholder-with-resource
Fix resources being skipped in InstancePlaceholder
2024-07-17 15:45:00 +02:00
Rémi Verschelde
5da03541a1
Merge pull request #93749 from alvinhochun/gui-snap-to-pixel-round-halfway-to-positive
Change GUI controls pixel snap to round halfway towards positive infinity (`floor(x + 0.5)`)
2024-07-17 15:44:43 +02:00
matheusmdx
260c05152d Fix resources being skipped in InstancePlaceholder 2024-07-17 10:25:29 -03:00
A Thousand Ships
d4cf294b35
Fix potential null access in TextEdit 2024-07-17 13:35:22 +02:00
Rémi Verschelde
c77c41df88
Merge pull request #94362 from smix8/navpoly_unref_fix
Fix NavigationPolygon not updating consistently on rebakes
2024-07-17 11:44:09 +02:00
Rémi Verschelde
ac215012d6
Merge pull request #94291 from TokageItLab/readdskel
Re-add `Skeleton3D::animate_physical_bones` property
2024-07-17 11:43:51 +02:00
Rémi Verschelde
78120c66cc
Merge pull request #94085 from anniryynanen/min-size-hidden-parent
Fix container minimum size with hidden parent
2024-07-17 11:43:07 +02:00
kit
f8df6b1c70 Fix ScriptEditor scrolling horizontally on reopen 2024-07-16 11:19:58 -04:00
Silc Lizard (Tokage) Renew
98dbd869c5 Handle internal seek on AnimationPlayer to process discrete correctly 2024-07-16 14:49:25 +09:00
bruvzg
dc98e432e5
[macOS] Fix code completion list scrolling with trackpad. 2024-07-15 08:12:19 +03:00
smix8
9dd05964d5 Fix NavigationPolygon not updating consistently on rebakes
Fixes that NavigationPolygon did not update in all cases because the internal NavigationMesh was not always unref and freed which blocked creating a new mesh later if nothing else freed it.
2024-07-14 22:01:11 +02:00
Silc Lizard (Tokage) Renew
9c1f23c3db Re-add Skeleton3D::animate_physical_bones 2024-07-14 14:24:25 +09:00
BlueCube3310
60a255a0d0 Lightmapper: Prevent infinite loop when blitting lightmaps into an atlas 2024-07-13 13:10:04 +02:00
Silc Lizard (Tokage) Renew
7cdeac94d1 Fix StateMachine process when transition to end & optimize StringName 2024-07-13 17:32:31 +09:00
Yuri Rubinsky
92aa01f937 Add few new outputs to the visual shaders 2024-07-12 17:12:22 +03:00
Anni Ryynänen
a9c91f4eef
Fix container minimum size with hidden parent 2024-07-12 16:21:05 +03:00
CrazyRoka
6c86268fdd Decorate rare !data.inside_tree condition with unlikely 2024-07-12 13:38:41 +01:00
CrazyRoka
53e9d90850 Optimize Node::is_readable_from_caller_thread() by prioritizing the most common case. 2024-07-11 20:40:00 +01:00
Rémi Verschelde
fbac9c54c9
Merge pull request #94147 from MovaUA/fixes/node-configuration-warning-dialog-text
Fixes/node configuration warning dialog text
2024-07-11 00:27:39 +02:00
Rémi Verschelde
013ee6a458
Merge pull request #94003 from KernRat/scroll-fix
Fix RichTextLabel + `ui_down` scrolling too far
2024-07-11 00:27:10 +02:00
Valeriy Molchanov
32369d2b6d
Fix Issue #94145 Incorrect text in the Node Configuration Warning dialog
Fix some translations

Revert "Fix some translations"

This reverts commit 61e586ef84fb962eefdc14593241c1d8b0fb7b6b.

Revert "Fix Issue #94145 Incorrect text in the Node Configuration Warning dialog"

This reverts commit d0832dc5e7f0657744780cdfc97ed40772ea717c.

msgid

warnings.push_back(RTR("A SpriteFrames resource must be created or set in the \"Sprite Frames\"

revert editor/translations/editor
2024-07-09 22:36:18 +02:00
Yuri Rubinsky
af5fc8354b Fix a bunch of orphan StringName errors at ProjectSettings/Editor exit 2024-07-09 19:38:52 +03:00