DOF artifacts with wave broadcast on AMD GPUs

Hi,

We are experiencing blocky artefacts in the DOF effect on AMD GPUs. We found the issue on the latest AMD cards (9xxx), the bug manifests differently on different architectures, and consoles don’t seem to be affected at all. Our investigation found that when we disable wave broadcast reduction in DOFReduce.usf by setting CONFIG_WAVE_BROADCAST_REDUCTION to 0, the issue disappears. We attach screenshots of the bug (AMD Radeon RX 9070, with CONFIG_WAVE_BROADCAST_REDUCTION set to PLATFORM_SUPPORTS_WAVE_BROADCAST and to 0), notice the blocky blur of the knife. The blocks are connected with the pixel position, creating a bad alias when the camera moves slowly.

I found no relevant changes in P4 history between 5.4 and latest, hence we didn’t try to repro on Vanilla UE.

Disabling wave broadcast is a good enough fix for us to ship, but it should be looked at.

Thanks for any ideas,

Pavel

Hello there,

I’ve spent some time on the latest released engine, and on a Radeon 780M, I don’t seem to be able to see the issue.

Can you confirm some camera settings used here and whether you are seeing this on RDNA3-based GPUs?

Best regards,

Chris

Hi Chris.

We are able to repro this in Vanilla UE 5.5.4 with Radeon RX 9070 (previously I sad XT, but it is not 9070XT).

I’m attaching the packaged project.

For the whole project, please let me know if we should upload it via different means, if it helps, it’s currently 10 GB as our artists threw it together :sweat_smile:

The camera is set like this:

[Image Removed]Pavel

Hey Chris.

We’re seeing this on RX 9070 XT, so RDNA4. We have reports it’s also happening on RX 7900 XT, so RDNA3.

We’ll try to repro this in Vanilla.

Pavel

Let me know how it goes.

I can try to reproduce it again with your aperture and focal length in the off chance it’s specific to those values in some way.

Best regards,

Chris

and a video (your website allows to attach just 1 file to 1 post)

Thanks for the insights into this. Would it be possible to test with the Squeeze Factor set to 1?

I modified the value to 4, and that seems to immediately cause problems at the screen’s periphery. It definitely appears to a contributing factor on AMD hardware.

Best regards,

Chris

As an update, I’ve reported the bug with what I’ve gathered so far. The link is available at Unreal Engine Issues and Bug Tracker (UE\-308066\).

Best regards,

Chris

I believe the Squeeze Factor is 1 already. We don’t think it is that.

Oh, that’s interesting. I was basing that off of the example camera settings that have a SqueezeFactor of 2.

At the very least, SqueezeFactor definitely makes the reproduction a lot easier to achieve.

Can you confirm that the issue can be reproduced without a SqueezeFactor on the camera?

If so, I’ll add that as a note to the bug report.

Best regards,

Chris