Welcome, Guest.
Username: Password: Remember me

TOPIC: MXAO flickering in Witcher 3

MXAO flickering in Witcher 3 1 year 5 months ago #1

Question for Marty or anybody else with experience configuring the MXAO shader with The Witcher 3 or any other game -

I'm getting this strange flickering/transitioning with the way AO is being applied by the shader:


Notice the strange way it flips back and forth between applying little AO versus applying very dark, heavy AO.

I saw that someone had another issue with Witcher 3 and MXAO, but that issue was related to using MXAO in conjuction with Witcher 3's built in PPAA method, which I am not using.

The issue I'm experiences appears to be related to the shader, not the depth buffer, as there are no issues with using other depth-based effects like DOF.

Has anybody else experienced this issue, or been successful at injecting AO into Witcher 3 without getting this weird flickering?

I'm using ReShade 3.0.7 btw.
The administrator has disabled public write access.

MXAO flickering in Witcher 3 1 year 5 months ago #2

I have seen the same happen in GTA 5.
Cheers, crosire =)
The administrator has disabled public write access.

MXAO flickering in Witcher 3 1 year 5 months ago #3

crosire wrote:
I have seen the same happen in GTA 5.
Perhaps something with MXAO is not playing nice with logarithmic depth buffers?
The administrator has disabled public write access.

MXAO flickering in Witcher 3 1 year 5 months ago #4

I had a similar issue in Elite Dangerous and had to revert to an older version of MXAO to get rid of the problem.
The administrator has disabled public write access.

MXAO flickering in Witcher 3 1 year 5 months ago #5

Hmm you're using a very very big sample radius there so it doesn't even look like AO anymore.
Because MXAO samples the environment in a 2D spiral, some samples may lie outside of screen boundaries. As the border pixels repeat themselves for reads outside screen, you get "false" occlusion by objects that are actually not there but are constructed by repeated depth buffer info + the coords I'm reading. As the data of the border pixels changes quickly, you can get some flickering by these false occluders. There are modes that change this behaviour for out of boundary reads but none of these help here.
3 possible solutions, 4 actually: 1) clamp sample positions to screen, this causes flickering at borders. 2) skip AO sampling for samples outside screen, this was legacy mode "boundary check" but it's too slow. 3) Don't expect anyone to use such crazy radii, that's what I opted for. 4) Use a guard band for the depth buffer that#s larger than screen, that's what most AO implementations with full engine integration do, such as Alchemy AO. They recommend a 20% guard band. As the depth buffer of ReShade matches the color buffer in size, this is all I can do, sorry.
My tip: use AO sample ranges where AO actually looks like AO.
The administrator has disabled public write access.

MXAO flickering in Witcher 3 1 year 5 months ago #6

Marty -

Here you can see me running into the same issue using a much smaller sample radius:



MXAO settings:
Ambient Occlusion Amount: 0.33
Indirect Lighting Amount: 0.00
Indirect Lighting Saturation: 0.00
Sample Radius: 2.05
Sample Count: 8
Dither Size: 2
Normal Bias: 0.04
Enable Smoothed Normal: True
Blur Sharpness: 1.50
Blur Steps: 5
Fade Out Start: 0.00
Fad Out End: 1.00
The administrator has disabled public write access.

MXAO flickering in Witcher 3 1 year 1 month ago #7

MXAO looks awesome in Witcher 3, but I also get this flickering pretty much all the time, even with W3 built-in AA disabled...
The administrator has disabled public write access.

MXAO flickering in Witcher 3 1 year 1 month ago #8

Just in case: Witcher 3 actually uses a reversed depth buffer, not a logarithmic one. Dunno where that info in the Games section comes from, maybe they changed it with a patch along the way.
The administrator has disabled public write access.