godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
89.12k stars 20.2k forks source link

Additive blend mode causes shimmering with FSR 2. #85123

Open EMBYRDEV opened 10 months ago

EMBYRDEV commented 10 months ago

Godot version

4.2 rc1

System information

Windows 11, RTX 2070 Super

Issue description

Additive materials don't seem to play nicely with FSR 2, as you can see in the below video (the lens flares from the lamps are additive billboards).

https://github.com/godotengine/godot/assets/20043270/7e87e6d3-ae29-4aed-9779-5fe9ba259fad

However the effect works correctly with TAA, suggesting this is an FSR specific issue and not a general one with temporal reconstruction.

https://github.com/godotengine/godot/assets/20043270/08b006e5-b436-4bc1-b9d9-869c31ea41cf

Steps to reproduce

Minimal reproduction project

https://github.com/perfoon/Abandoned-Spaceship-Godot-Demo

akien-mga commented 10 months ago

CC @DarioSamo

(For context as it took me a minute to understand the visual issue - it's the lamp in the background which is flickering, I was focusing on the foreground lamp and not noticing any issue.)

EMBYRDEV commented 10 months ago

CC @DarioSamo

(For context as it took me a minute to understand the visual issue - it's the lamp in the background which is flickering, I was focusing on the foreground lamp and not noticing any issue.)

the foreground lamp also causes the stairs and the lamp's body to shimmer at this camera angle but it's much less noticable in the video due to compression. It's a fairly large quad.

DarioSamo commented 10 months ago

We saw this shimmering on another issue but I'm not entirely sure what I can do to alleviate it. It just looks to me as if FSR2 is more reactive to the brightness changes than TAA is and it's exhibiting the issue with effects that are below the pixel resolution of the jittering.

I assume the issue goes away the higher the resolution is?

You can also see some more shimmering on the stairs, which sounds similar to what I was getting on the bistro demo.

EMBYRDEV commented 10 months ago

We saw this shimmering on another issue but I'm not entirely sure what I can do to alleviate it. It just looks to me as if FSR2 is more reactive to the brightness changes than TAA is and it's exhibiting the issue with effects that are below the pixel resolution of the jittering.

I feel like the glow effect as seen in the bistro scene is definitely suffering from a similar issue, however, the shimmering on the stairs seen through the quad seem unrelated?

bitsawer commented 10 months ago

Related issue:

RPicster commented 5 days ago

I just experienced this and it is very problematic on low resolutions. While everything looks great, things like billboard can basically "disable" the great upscaling of FSR in large areas of the rendered picture.

Here is the unshaded debug view at 25% render scale. Most of the picture really looks nicely, but the parts where additive billboards are active is completely bugged.

In the video I enable and disable some of the additive materials to show the effect: It is easy to spot at the plant and the glowing symbol on the black veins. But also the whole big billboard on the moon causes the effect - it's less visible due to video compression.

https://github.com/user-attachments/assets/4bb3b608-c801-4f89-9e26-d695f070f2b7