| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
This ensures that you are actually snapping to pixels in the viewport and not an arbitrary amount
(cherry picked from commit godotengine/godot@e75900e1ad1a2c699829335ad3be27b4e01afec1)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(cherry picked from commit e8542b06acca3c1bdeee4b528411771f0819f084)
Credits:
Co-authored-by: Skogi <skogi.b@gmail.com>
Co-authored-by: Spartan322 <Megacake1234@gmail.com>
Co-authored-by: swashberry <swashdev@pm.me>
Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se>
Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com>
Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com>
Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com>
Co-authored-by: radenthefolf <radenthefolf@gmail.com>
Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com>
Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com>
Co-authored-by: decryptedchaos <nixgod@gmail.com>
Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com>
Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com>
Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com>
Co-authored-by: Mister Puma <MisterPuma80@gmail.com>
Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com>
Co-authored-by: SingleError <isaaconeoneone@gmail.com>
Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
|
| |
|
|
|
|
| |
(cherry picked from commit 44e526d3d5390368497b7c9948f6ca3f2daa1a3c)
|
|
|
|
| |
(cherry picked from commit 70860aafd8acbb4af34941f1343a7ea5901a6c4e)
|
|
|
|
|
|
|
|
|
|
| |
Use correct shadow sampling for omni and spot lights
Disable transmittance if shadows are disabled
Correct DirectionalLight transmittance bias to match shadow bias (its still pretty sensitive though)
(cherry picked from commit d61fae36f3061d156d2da7b3208e982e37c1c6b5)
|
|
|
|
| |
(cherry picked from commit 09e59fbec5d091375117ab8a62ec566d9ba5a1fe)
|
|
|
|
|
|
| |
reflections from reflection probes.
(cherry picked from commit 929c69bad8e3aa7b91c8d04c4b81f0e91392e67d)
|
|
|
|
|
|
|
|
| |
mode looks correct
Also remove the metallic option from directional lightmap as it is guaranteed to return negative numbers in many cases
(cherry picked from commit f4ccba7508fe6fbbbda92df855ad59a63a205b17)
|
|
|
|
|
|
| |
and filling both halves of buffer
(cherry picked from commit 52cd5acdda120776775e73babf3fbb65ef0a5c2e)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
(cherry picked from commit 0024cface56be436f6e5cd12d090333e8a6b3ef0)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
(cherry picked from commit 92f2bc70dd734e0de3b6c7f18c57680c63715343)
|
|
|
|
| |
(cherry picked from commit e698351db24df691dc5ea88a6b011c24dad77ebd)
|
|
|
|
|
|
| |
fade in SSR
(cherry picked from commit b99d0d778a0b1b54b0c0d3d6dbd8d74d371ba8f7)
|
|
|
|
| |
(cherry picked from commit 1bd8372813d8a329188c05e8cc8c0c66f60b1735)
|
|
|
|
|
|
| |
And apply luminance multiplier after fog in RD renderer
(cherry picked from commit 578049b7b9b9ba5d0ad02f89698a593c368ab7fc)
|
|
|
|
| |
(cherry picked from commit 37be585fdf689e7e29376bc6faab3fbed59cfd02)
|
|
|
|
| |
(cherry picked from commit 3388a4a360030ef1365ba1b28b76e6d3432c5ba5)
|
|
|
|
| |
(cherry picked from commit 970a237c203cd9a373b1846aa029effd2e4a288d)
|
| |
|
|\
| |
| |
| | |
Fix position from vertex shader partially uninitialized
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | | |
Fix glsl shader for Android Mali-GXXx GPUs and Vulkan API 1.3.xxx
|
| | | |
|
| |/
|/| |
|
|\ \
| | |
| | |
| | | |
Expose more state in RenderSceneBuffersRD
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | | |
Fix incorrect `CAMERA_DIRECTION_WORLD` calculation
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
Use a spec constant to control whether the MultiMesh branch is used in the vertex shader.
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
vertex shader.
This works around a bug on the Quest3 and slightly improves performance on all mobile devices at the cost of increased pipeline count.
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
Fix SSR orientation issues when using orthogonal camera
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- Use negative clip space values to fix reversed rotations in reflections
- Use constant -z view vector when raymarching to fix perspective in reflections
|
|\ \ \ \ \
| |_|/ / /
|/| | | |
| | | | | |
Fix LCD font AA modulation in RendererRD.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | | |
Properly linearize depth buffer for SSAO when using orthogonal camera
|
| | | | | | |
|
|\ \ \ \ \ \
| |_|_|/ / /
|/| | | | |
| | | | | | |
Pre transparent compositor effects needs to run later
|
| | |/ / /
| |/| | | |
|
|\ \ \ \ \
| |/ / / /
|/| | | |
| | | | | |
Make RenderSceneData take projection correction into account
|
| | | | | |
|
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | | |
buffer than the hardware supports.
Instead provide a better error message when the limit is exceeded and avoid crash with a small limit.
|
|\ \ \ \
| |/ / /
|/| | |
| | | | |
Add safety check when setting several rendering effect quality
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | |
| | | | |
Remove unused flag and code from canvas renderer
|
| | | |
| | | |
| | | |
| | | | |
Related #48894
|