Commit graph

66358 commits

Author SHA1 Message Date
Rémi Verschelde
10b91ee950
Merge pull request #95705 from zeux/fsr-skin-relax
Relax motion vector updates to allow skipped frames for skeletons
2024-08-19 12:09:34 +02:00
Rémi Verschelde
7f6b4eb5ee
Merge pull request #95704 from KoBeWi/what_in_the_name_of_godot
Don't mark settings as modified while loading
2024-08-19 12:09:29 +02:00
Rémi Verschelde
846f43c7fc
Merge pull request #95689 from Hilderin/fix-uid-paths-fail-editor-startup
Fix `uid://` paths fail to load at editor startup
2024-08-19 12:09:25 +02:00
Rémi Verschelde
9cc53a134e
Merge pull request #95682 from zeux/fsr2-fix-free
Fix double free in FSR2 destructor
2024-08-19 12:09:20 +02:00
Rémi Verschelde
1ac1d03857
Merge pull request #95676 from raulsntos/dotnet/clear-owner-order
C#: Destroy script before clearing owner
2024-08-19 12:09:15 +02:00
Rémi Verschelde
c6400a8fe4
Merge pull request #95662 from clayjohn/GLES3-sky-fog
Add fixed fog to the sky in the Compatibility renderer
2024-08-19 12:09:10 +02:00
Rémi Verschelde
6c76be2389
Merge pull request #95658 from akien-mga/openxr-fix-system-package
OpenXR: Fix support for building against distro package
2024-08-19 12:09:06 +02:00
Rémi Verschelde
63f4186f97
Merge pull request #95253 from Kimau/claire/logitech
OpenXR - Add Logitech Mx Ink Stylus Support
2024-08-19 12:09:01 +02:00
Rémi Verschelde
43c46b9b1b
Merge pull request #95013 from smix8/navmesh_geo_parse
Change NavigationMesh to also parse collision shapes by default
2024-08-19 12:08:55 +02:00
Rémi Verschelde
a9eba87902
Merge pull request #93230 from raulsntos/dotnet/ios
C#: Use Godot's LipO implementation instead of Xcode's lipo command
2024-08-19 12:08:49 +02:00
Rémi Verschelde
4afcbb1c8b
Merge pull request #92546 from AThousandShips/faster_replace
[Core] Optimize `String::replace` methods
2024-08-19 12:08:45 +02:00
Rémi Verschelde
f4037d6f6c
Merge pull request #92496 from clayjohn/HDR-2D-sRGB
Ensure MovieWriter output is in gamma space when using HDR 2D
2024-08-19 12:08:40 +02:00
Rémi Verschelde
824a97120e
Merge pull request #92213 from clayjohn/ambient-disabled
Disable all sources of ambient light when `ambient_light_disabled` render mode is used
2024-08-19 12:08:31 +02:00
clayjohn
578049b7b9 Add fixed fog to the sky in the Compatibility renderer
And apply luminance multiplier after fog in RD renderer
2024-08-17 23:33:26 -07:00
Arseny Kapoulkine
92f2bc70dd Relax motion vector updates to allow skipped frames for skeletons
Before this change, a skeleton that was not updated every frame would
result in a difference of 2+ between last_change and frame index every
frame, which would disable the buffer rotation and set motion vectors to
zero. This results in significant visual artifacts for FSR2 that are
especially prominent on the characters that move together with the view
such as the main character in third person mode.

This is a significant problem for high refresh rate displays: at 120 Hz,
we are effectively guaranteed to skip skeleton updates every other frame
with skeleton update happening during physics processing, and the lack
of physics interpolation for skeletons. This happens by default in TPS
demo when FSR2 is enabled.

In other places where motion vectors are disabled, such as multi-mesh
and mesh rendering (where previous transform is updated), the logic
effectively allows for a single-frame gap in updates, because it
compares the frame where the update happened (which is the current frame
if updates are consistent) with the current frame, so the latency of 0
means "update just happened", but both multi-mesh and mesh transform
updates permit a latency of 1 as well.

Here, however, last_change is updated *after* the frame processing has
concluded, so a zero-latency update has a distance of 1. Allowing a
distance of 2 (latency 1) reduces the severity of the problem and aligns
the logic with transform updates.

Note that the problem will still happen when refresh rate is noticeably
higher than physics rate times 2. For example, it still happens at 240
Hz. However, a longer latency allowance is inconsistent with other
transforms and could lead to issues, so ideally long term physical
interpolation of skeleton transforms would completely solve this.
2024-08-17 11:10:41 -07:00
kobewi
84e8831b89 Don't mark settings as modified while loading 2024-08-17 19:23:06 +02:00
Raul Santos
c2efbf3012
C#: Use Godot's LipO implementation instead of Xcode's lipo command 2024-08-17 17:52:35 +02:00
Hilderin
b1c97313e0 Fix uid:// Paths Fail to Load at Editor Startup 2024-08-17 07:19:08 -04:00
Arseny Kapoulkine
0024cface5 Fix double free in FSR2 destructor
Before this change, using FSR2 resulted in the following error when the
effect was destroyed:

	ERROR: Attempted to free invalid ID: 662734928609453
	   at: _free_internal (servers/rendering/rendering_device.cpp:4957)

This happened because ACCUMULATE and ACCUMULATE_SHARPEN passes shared
the same shader_version object but had different pipeline IDs. When
version_free was called for ACCUMULATE pass, it destroyed pipelines
created from that version, including the pipeline for the
ACCUMULATE_SHARPEN pass.

Using a unique version could work around this problem, but it's easier
to rely on version_free destroying the created pipelines through the
dependency mechanism.
2024-08-16 22:44:57 -07:00
Raul Santos
5e7fda8de7
C#: Destroy script before clearing owner
The C# script destructor needs to access the owner (i.e.: to disconnect signals) so we now clear it after the script has been destroyed.
2024-08-17 04:04:57 +02:00
Rémi Verschelde
1bd740d18d
Merge pull request #95656 from anvilfolk/gdscript-docs-quit
Fix Godot not quitting with `--doctool --gdscript-docs`.
2024-08-17 00:47:17 +02:00
Rémi Verschelde
8d65fd2b32
Merge pull request #95655 from aaronp64/blend_space_2d_docs
Minor AnimationNodeBlendSpace2D documentation fixes
2024-08-17 00:47:10 +02:00
Rémi Verschelde
69c96144e2
Merge pull request #95344 from eobet/godot-panel-icons
Make editor panel icons more discreet
2024-08-17 00:47:02 +02:00
Rémi Verschelde
1e3258cd18
Merge pull request #95281 from Lunarisnia/fix/project-settings
Fix project settings not properly saved after a file deletion
2024-08-17 00:46:55 +02:00
Rémi Verschelde
a0d549fe93
Merge pull request #95272 from akien-mga/applicalifragilisticexpialidocious
iOS: Fix typo in GodotApplicationDelegate
2024-08-17 00:46:47 +02:00
Rémi Verschelde
c430c775ca
Merge pull request #95258 from kleonc/polygon2d_uv_editor_fix_leaf_bone_drawing
Fix drawing leaf `Bone2D` in `Polygon2D` UV editor
2024-08-17 00:46:41 +02:00
Rémi Verschelde
9bb86dfa4a
Merge pull request #95249 from KoBeWi/pluginector
Fix usage of `add_inspector_plugin()`
2024-08-17 00:46:35 +02:00
Rémi Verschelde
5cb01a0e09
Merge pull request #95227 from BastiaanOlij/openxr_1_1_38
Update OpenXR thirdparty library to 1.1.38
2024-08-17 00:46:27 +02:00
Rémi Verschelde
01c0b39399
Merge pull request #95193 from Giganzo/fix-checkbox-alignment-compact-mode
Fix checkbox alignment when using compact theme spacing
2024-08-17 00:46:19 +02:00
Rémi Verschelde
49e5fbfbd2
Merge pull request #95184 from jsjtxietian/shader-include-relative
Fix `String::simplify_path` handling of relative paths to parent dir (`../`), fixes relative shader includes
2024-08-17 00:46:11 +02:00
Rémi Verschelde
01b87a9a9c
Merge pull request #95171 from KoBeWi/remove_save
Avoid saving EditorSettings on startup
2024-08-17 00:46:03 +02:00
Rémi Verschelde
a7200cedbc
Merge pull request #95154 from jsjtxietian/quit-freelook
Fix Pressing Escape doesn't exit freelook in the 3D editor
2024-08-17 00:45:57 +02:00
Rémi Verschelde
66cbdc95e1
Merge pull request #93171 from libklein/implement-set-get-polygons
NavigationPolygon: Implement `get`/`set_polygon` fast paths.
2024-08-17 00:45:50 +02:00
Rémi Verschelde
18f3bb7566
Merge pull request #91978 from kitbdev/select_first_wrapped_char
Fix TextEdit caret movement at start of wrapped lines
2024-08-17 00:45:45 +02:00
Rémi Verschelde
195a174864
Merge pull request #90690 from jsjtxietian/camera-aspect
Adjust orthographic camera gizmo with respect to `keep_aspect` setting
2024-08-17 00:45:34 +02:00
Patrick Sean Klein
a1fe6ffa19
NavigationPolygon: Implement get/set_polygon fast paths. 2024-08-17 00:31:58 +02:00
ocean
13b20820ba Fix Godot not quitting with --doctool --gdscript-docs. 2024-08-16 18:18:45 -04:00
Rémi Verschelde
5b6d9a7dd8
Merge pull request #95659 from clayjohn/RD-sky-affect
Ensure `fog_sky_affect` is used even when using a background color
2024-08-16 23:49:58 +02:00
Rémi Verschelde
2af825c0aa
Merge pull request #95640 from kevinkuo52/debug-overdraw-call-count
Fix draw call count and object count for OverDraw display mode on Forward+
2024-08-16 23:45:49 +02:00
Rémi Verschelde
2e400bc475
Merge pull request #95299 from bruvzg/kern_img
[ImageFont] Fix escape sequence parsing, add note to the docs.
2024-08-16 23:45:44 +02:00
Rémi Verschelde
82adfebcf8
Merge pull request #94799 from m4gr3d/memory_allocation_cleanup_and_optimizations
Android memory cleanup and optimizations
2024-08-16 23:45:39 +02:00
Rémi Verschelde
4bd33df11e
Merge pull request #94766 from Z0rb14n/fix-vector3-slerp
C#: Fix Vector3 `Slerp` normalization error
2024-08-16 23:45:34 +02:00
Rémi Verschelde
0d0eb71694
Merge pull request #94599 from juanjp600/node-array-export-diagnostic
C#: Fix GD0107 not applying to arrays and dictionaries containing nodes
2024-08-16 23:45:26 +02:00
Rémi Verschelde
48f24423b0
Merge pull request #94588 from bruvzg/check_custom_templ_arch
[Windows/Linux] Check custom export templates architecture.
2024-08-16 23:45:19 +02:00
Rémi Verschelde
759d7d40d3
Merge pull request #94241 from zeux/optimize-cache
Optimize base and shadow meshes for vertex cache
2024-08-16 23:45:15 +02:00
Rémi Verschelde
dbf4be308c
Merge pull request #93583 from smix8/obstacle_monitor
Add navigation obstacles to performance monitor stats
2024-08-16 23:45:10 +02:00
Rémi Verschelde
28f14102d9
Merge pull request #92944 from smix8/edge_margin_debug
Change 3D navigation edge connection margin debug to only show virtual edge
2024-08-16 23:45:04 +02:00
Rémi Verschelde
d6175a43da
Merge pull request #92576 from aaronfranke/shader-lang-editors
Make shader language editors inherit the same base class
2024-08-16 23:44:57 +02:00
Rémi Verschelde
205443da08
Merge pull request #86204 from BlueCube3310/dds-more-formats
Add support for loading less common DDS formats
2024-08-16 23:44:48 +02:00
clayjohn
37be585fdf Ensure fog_sky_affect is used even when using a background color 2024-08-16 14:11:08 -07:00