godot icon indicating copy to clipboard operation
godot copied to clipboard

MSAA 2x Breaks Proximity Fade

Open mrjustaguy opened this issue 1 year ago • 1 comments

Tested versions

reproduce on 4.3 Stable

System information

Windows 11 - I3-10105f with RX 6600 Adrenalin 24.9.1

Issue description

Enabling MSAA 2x Breaks Proximity fade

image

MSAA above 2x works fine, as well as no MSAA.

Possible AMD Driver Issue.

Observed while testing SMAA S2x which requires MSAA 2x (https://github.com/RGDTAB/Godot-SMAA) but happens without SMAA.

Steps to reproduce

Enable MSAA 2x with a Proximity Fade Material in view

Minimal reproduction project (MRP)

MSAA.zip

mrjustaguy avatar Oct 02 '24 19:10 mrjustaguy

Can you reproduce this when using Direct3D 12 or the Compatibility rendering method?

Calinou avatar Oct 02 '24 22:10 Calinou

Dx12 Works Fine, Compatibility Proximity fade doesn't render at all.

image

mrjustaguy avatar Oct 03 '24 08:10 mrjustaguy

I've tested this on all 3 GPUs that I have that support Vulkan

RX 6600 - Issue in Vulkan with MSAA 2x, No problems on DX12 GTX 1050 Ti - Issue not Present on either API, or MSAA level combination Quadro K2000 - Issue not Present on either API, or MSAA level combination

Seems like an AMD Driver issue, but I don't have sufficient GPUs to verify this. Should I send a Bug Report to AMD?

mrjustaguy avatar Oct 03 '24 10:10 mrjustaguy

Cannot reproduce on Godot 4.4.dev2. Windows 11, RX 6700 XT, driver 24.9.1, intel i5-9600k

Godot v4.4.dev2 - Windows 10.0.26100 - Vulkan (Forward+) - dedicated AMD Radeon RX 6700 XT (Advanced Micro Devices, Inc.; 32.0.12011.1036) - Intel(R) Core(TM) i5-9600K CPU @ 3.70GHz (6 Threads)

image

Swarkin avatar Oct 03 '24 11:10 Swarkin

Will Test 4.4 Dev 2 on my end

Negative, still happens, though changing resolution scale does on occasion hide the artifacts.

Viewport resolution on my end is 1996x1202

Changed windows to 1080p down from 1440p, and the issue persists, however another observation, moving around the camera may look fine at times Do note that the artifacts seem to be depth related, and thus only show when there's something under the fading object..

mrjustaguy avatar Oct 03 '24 11:10 mrjustaguy

I believe I've Figured out the problem.

I've set Optimizations for Windowed Games and VRR off in Windows under Graphics, as well as disabling VRR in Adrenaline and GPU scaling turned off, and when I restarted Godot the issue wasn't there, however changing resolution scale brings it back, however reverting back to 100% resolution scale it typically works fine, but sometimes I have to disable MSAA and reenable it to clear up the artifacts.

This however doesn't seem to work for 4.3 stable..

I've also tested 4.2 stable (as this is before Reverse-Z and Acyclic Render Graph, both of which could have an impact) and the issue is even more significant there. image

mrjustaguy avatar Oct 03 '24 12:10 mrjustaguy

This likely points at some kind of Vulkan synchronization issue: https://github.com/godotengine/godot/issues/81060

Calinou avatar Oct 15 '24 22:10 Calinou

This tweet (https://x.com/SebAaltonen/status/1843265456200888773) made me realize that this issue might be an alignment issue. I don't think we check required alignment specifically for depth textures. If there are any unique requirements, we won't respect them

clayjohn avatar Oct 19 '24 00:10 clayjohn

Dx12 Works Fine, Compatibility Proximity fade doesn't render at all.

I am seeing this issue too. In the editor the shader is full of artifacts and when playing the proximity fade doesn't show at all. The shader works fine with MSAA disabled. This is with the mobile renderer.

Jackoday avatar May 31 '25 00:05 Jackoday

Still Reproducible on 4.5 Stable

mrjustaguy avatar Oct 18 '25 23:10 mrjustaguy