Setting 'r_postaa=0' in User config and system override still results in Post AA being applied.
Cryengines Post AA produces an undesirable image effect, for some it is bothersome, for others it is of no concern. For me, it gives me a headache.
PostAA could be disabled up till UI2.0 was released, since then it cannot inless you are using MSAA or TXAA which override postAA.
There must be some errant code forcing the application of PostAA when no AA is selected.
Report:
Unable to Disable PostAA (Cryengines Temporal AA) With out use of higher forms of AA (MSAA/TXAA)
Reproducability: 100% using NoAA/PostAA (When set to No AA, this should not happen.)
Most noticeable:
When a mech is passing through your view when you are not tracking their movement.
High Resolutions.
Less Noticeable:
When you are tracking the movement of another mech.
Low resolutions
Fix:
Find the code which is blocking 'r_postaa=0'
This is an example of what is seen.
I have had a few exchanges with Matthew Craig on the issue.
Transcript from my exchanges with Matthew, who was very helpful in his attempts to peg the problem down.
First exchange
Matthew Craig, on 03 June 2014 - 03:42 PM, said:
Lordred, on 03 June 2014 - 07:08 PM, said:
Matthew Craig, on 03 June 2014 - 03:42 PM, said:
I went ahead and restored my drivers to their orginial configuration as shipped by Nvidia to restore the game to its orginial look.
I removed all settings from my user.cfg aside from FoV (74) and Cockpitglass.
First batch is with Ingame AA set off (No AA), and Motion Blur set to off.
I have attached four images for these settings, one to display the settings used, and three to display the motion blur that is noticeable (Some have called it ghosting, but as far as I am aware if it part of the Cry Engines Edge AA)
No-AA set, Motion Blur = Off
TXAA Set, Motion Blur = Off
As for my hardware configuration.
CPU: AMD FX-8350
Mainboard: ASRock 990FX Professional
Dram: G.Skill Sniper 1866 2x4Gb
GPU: eVGA nVidia GTX 680-4gb Classified
Display Driver Version: 335.23
Primary Drive: Crucial M4 256gb SSD
Secondary Drive: Crucial M4 256gb SSD
Thank you for contacting me.
~Red
Second exchange
Matthew Craig, on 04 June 2014 - 07:42 AM, said:
Also if your interested I can highly recommend Nvidia' latest drivers I've been testing them out and there is a noticeable performance increase for MWO in the latest drivers using DX11 if you're looking for more frame rate.
I'll keep you posted on what I find with this ghosting issue.
Thanks again
Matthew Craig, on 04 June 2014 - 08:10 AM, said:
Lordred, on 04 June 2014 - 06:01 PM, said:
For starters the requested NVCP/NVI
(Nvidia Control Panel/Nvidia Inspector)
Method
NoAA
TXAA
I will be looking into the driver update next.
Third exchange
Matthew Craig, on 05 June 2014 - 11:27 AM, said:
I'm looking through the code and its certainly an odd one the object motion blur shouldn't kick in unless r_MotionBlur is set to 2 or higher.
As you can reproduce this if you have time would you mind playing with r_MotionBlurMaxViewDist particularly curious if 0 resolves the issue (this parameter is supposed to be the maximum distance to display object blur for e.g. Mechs within 200 meters should be =200 anything beyond that distance shouldn't blur).
Also does r_MotionBlurShutterSpeed have any impact on how separated the 'trails' appear?
Also what FPS (F9) do you see when you see this blur, just curious if its related to slow frame rate or not, though I gather you have a high end machine?
Lordred, on 05 June 2014 - 06:58 PM, said:
Current User.cfg cvars
cl_fov = 74
gp_option_ShowCockpitGlass = 0
r_MotionBlur = 0
r_MotionBlurMaxViewDist = 0
r_MotionBlurShutterSpeed = 0.0001
r_PostAA = 0
r_UseEdgeAA = 0
No change to 'Ghosting'
Avarage FPS @ 1920x1200 ~ 100
Avarage FPS @ 3264x2040 ~ 35
1920x1200
3264x2040
Lordred, on 05 June 2014 - 09:55 PM, said:
It would appear to be completely the fault of Post AA. (Possibly related to the Cryengines use of Temporal AA)
Launching into a match, Training Grounds or a normal match the game (atleast on my end) apparently defaults into PostAA, regardless of NoAA/PostAA selection in the menu. While in match re-applying the selection of NoAA completely removed all image ghosting. Upon exiting of the match, re-entry will once again enable PostAA (though not selected) and results in image ghosting in the following match. Applying the NoAA setting mid match will remove the ghosting effect once more.
Simply using MSAA, or TXAA also removes image ghosting
I hope you can repeat this, I will re-install the game if you are unable to duplicate the results.
User.cfg was empty for these tests.
Drivers are on default settings.
Performing aditional tests, I've spent the last week becoming more familiar with the Cryengine to better work with you on this.
I am fairly certian this is a PostAA issue croping up with PostAA defaulting on, even when selected to be off.
Lordred, on 06 June 2014 - 08:37 AM, said:
Fourth exchange
Matthew Craig, on 09 June 2014 - 08:24 AM, said:
Matthew Craig, on 03 July 2014 - 11:00 AM, said:
Can you try setting depth of field to 0 or 1 r_DepthOfField=0/1 and see if it still occurs for you.
It seems to be an issue with the setting r_DepthOfField=2
Much Appreciated
Lordred, on 03 July 2014 - 01:34 PM, said:
I belive there is a problem with the live build which prevents the disabling of postAA. I have been playing with the systemoverride as well as creating an autoexec to try to disable the engines edgeaa, postaa, and fsaa with mixed results.
For now i have been using the supported MSAA and TXAA settings to remove the image ghosting, others who follow the screenshot thread report similar findings.
If my response is somewhat scatered i appologize, I am responding via cellphone while taking a break at work.
Lordred, on 03 July 2014 - 01:40 PM, said:
http://mwomercs.com/...ost__p__3511414
http://mwomercs.com/...ost__p__3528760
Thanks again
Fifth exchange
Matthew Craig, on 04 July 2014 - 02:39 PM, said:
Quick update so I'm able to reproduce this type of artifacting in the testing grounds
http://pumpgasracing...tdropNoAA-2.jpg
I've tracked that down in the PostAA shader to a minor imprecision in the texture offsetting that is being used; however, I now suspect this is a separate bug for DX11.
I have not been able to reproduce the other type of artifacting you show (yet)
http://pumpgasracing...tdropNoAA-1.jpg
If you compare the images you can see the quality of the artifacting is different, and I suspect this is the one that is bugging most players and causing this type of ghosting that you linked earlier.
http://pumpgasracing...esting/darn.jpg
Can you please tell me exactly how you reproduced that testdropNoAA-1.jpg artifacting that is the one I now need to reproduce and resolve but I can currently only get the other type. I suspect I know how it is happening having been looking through the PostAA code but I need a repro case to ensure it is genuinely resolved.
Thanks for your help with this its much appreciated.
Lordred, on 04 July 2014 - 04:37 PM, said:
My user.cfg was cleared and the game settings reset
cl_fov=74
gp_option_ShowCockpitGlass=0
r_HDRGrainAmount=0.0
r_DepthOfField=0
I set the game to Very High and toggled the AA to "NoAA" then I restarted the game. From the mechbay menu I started recording, went into the settings to show that NoAA is selected and started the Training Ground for you. I ran out to the Awesome (easiest mech to circle due to its location) and if you pause the video on youtube every time I make a pass on the Awesome, you will see the "ghost" outline of the Awesome (this applies for all mechs, cockpit, and pilot if they are caught in motion)
I then moved in close to show that while set to off, PostAA was infact enabled. So while in the training grounds I toggled the settings from NoAA to PostAA, and then back. Now render clearly shows no antiailaising is happening, and I proceed to circle the mech again. This time whenever you pause the video while I am running by the mech, there is no ghost image (the client having accepted the NoAA command) I then powered down, and up.
I once again toggled the client back to PostAA, powered down (if you watch the hand and the buttons in the cockpit, you will notice that they all present image ghosting) powered up and circled the Awesome once again, having the same image ghosting issue that the game shows when set to NoAA during a client restart. This bypass will only work for me in the Training ground, it will not disable PostAA in a live match.
(saddly the image ghosts on the awesome are much easier to see on the higher bitrate version, I will take a live game anyways to show you.)
This bug is present on both a Windows 7 and 8.1 install. Now I am not complaining about PostAA having the issue with the ghost images, there is nothing you guys can do about that, that is Cryengins implementation of Temporal AA. However if we could get the game to actually toggle to NoAA when set (and stay on NoAA) then I imagine anyone else experiencing this problem will no longer have it. The image ghosting effect can be quite distracting in a live match some times.
The other option is for people to use MSAA if they wish to avoid it, the problem being the amount of hardware 'omph' required. I hope I am mistaken, but I believe I am in the upper end on the hardware spectrum for players, I can (and do) run MSAA full time, or TXAA/MSAA2x
Lordred, on 07 July 2014 - 01:08 PM, said:
In the beginning of the match, watching the mechs on the team I was on walk by shows the problem very well, it becomes much harder to catch in the middle of combat, but is still viewable.
The image ghosting is most prevalent at the beginning, and that is all you really need to see. However, if you like watching Commandos tear up mechs over three times its size, by all means, watch the whole thing.
Edit: I took the liberty to have as much diagnostic info available for you as possible, so you will see GPU utilization, power utilization, temp, Vram usage, clock speeds, Dram Usage, and CPU utilization.
Final response
Matthew Craig, on 15 July 2014 - 08:46 AM, said:
Sadly no, really at a loss to see what is different between our setups. I'm handing all the information off to our QA team for now to see if they can find a suitable repro case. Only real difference I see between our setups is I'm using a 780 and you're using a 680 GPU
Sucks as I was really hoping to get this fixed last week but guess its going to take a bit longer to track down a debuggable repro case.
Edited by Lordred, 06 September 2014 - 06:40 AM.