nVidia's FXAA mode (anti-aliasing)

Discussion in 'Videocards - NVIDIA GeForce Drivers Section' started by TheHunter, Jul 20, 2011.

  1. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
    I'll explain.
    SMAA has 4 modes it can be used in:

    1x, T2x, S2x and 4x

    1x is the fastest but lowest quality version and 4x is the highest. T2x and S2x are about the same qualitywise, but T2x is much faster than S2x.

    They are named after how many samples they use and how they acquire them.

    1x takes 1 sample per pixel, from the center of the pixel - this is the version the injector uses.

    T2x takes 2 "temporal" samples - 1 sample per pixel for each frame, but it uses the sample from the previous frame and every frame it moves the sample slightly off-center and then it corrects for movement and blends the two temporal samples into one so you get twice the resolution but still only take 1 sample per frame. Very clever. Takes about 130% of the time that 1x takes, but has twice the resolution.

    S2x takes 2 "spatial" samples - 2 samples each frame, both samples moved slightly off-center and blended, but it doesn't use information from the previous frame as T2x does. Takes twice the samples each frame so it takes about 200% of the time 1x takes, but has twice the resolution.

    4x combines T2x and S2x, and takes 2 spatial samples each frame and uses the information from the previous frame too, to give 4x the resolution in about 230% of the time 1x takes.

    T2X, S2x and 4x are all awesome, but require the application to support them, otherwise it can't move the samples or provide the velocity vectors needed to correct for motion blur.

    The injector can only use the image of the scene as the game rendered it - it cannot move the samples and it cannot read the velocity vectors that tells it how the new image have moved in relation to the previous and so the only mode that will work with the injector is SMAA 1x.

    Hopefully more games will implement SMAA T2x, S2x and 4x in the future.

    Read the SMAA documentation, whitepapers and see the video to learn more about the difference between the different SMAA modes.
     
  2. TFL Replica

    TFL Replica Master Guru

    Messages:
    381
    Likes Received:
    0
    GPU:
    NVIDIA GTX 970
    Interesting, thanks for the in-depth explanation.
     
  3. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
    Good news everyone!

    Here is SweetFX 1.0

    New:
    • DirectX10/11 support! (SMAA can't be switched off yet in the DX10/11 version)
      Like with InjectSMAAmod (which SweetFX can now completely replace) you do not need to decide what version you need to use. Just copy all the files into the game folder and the game will load the correct one.
    • Changes and improvements to the Sepia, Tonemap and Vignette shaders.
    • Tweaks to the default settings of SMAA, HDR, Sepia, Tonemap and Vignette.
    • New setting for Vignette - VignetteSlope. It determines the distance from the center to when the vignette starts fading to black. You need to balance the VignetteRadius setting with this setting. Typically when you increase VignetteSlope you need to decrease VignetteRadius.
    • New shader effect - Vibrance. It should work like Digital Vibrance in your drivers settings and increase the saturation more for colors that are weak and less for colors that are already strong. It needs more work though. Currently I think it increases saturation for weak colors and decreases it for strong colors. It's still a nice effect - it's just not what I was trying to achieve. Bug or feature? - you decide.
    • Different keymapping. INSERT now toggles SweetFX ON and OFF and DELETE reloads the shader files. Using the pause button was annoying in some games because it also paused the game - Insert should not do that. Few games use the Insert button so I doub't it will cause any conflicts.
      Using delete to reload the shader files is very useful when tweaking a game running in windowed mode. It makes tweaking much easier. I've updated the tweaking instructions in the SweetFX_readme with a new guide on how to easily tweak your settings.
      The injector.ini file now also includes a link to a webpage listing all the keycodes so you don't have to guess should you wish to remap your keys.


    Shortcomings of SweetFX 1.0:
    • SMAA can't be turned off in DX10/11 (most people will want this on, so it's not a big problem)
    • LumaSharpen still sharpens the anti-aliased edges. Edges are still smoother than without anti-aliasing but if you want absolutely smooth edges try turning LumaSharpen off. I hope to fix this soonish but no promises - It'll be done when it's done.
    • The new Vibrance effect doesn't work quite as intended.
    • I haven't had time to try and optimize the shaders for speed, but now that most things more or less work I might take some time to do that. Again no promises.
     
    Last edited: Aug 19, 2012
  4. wisebear

    wisebear Member

    Messages:
    10
    Likes Received:
    0
    GPU:
    MSI GTX 970 Gaming
    Thanks CJ, very good news indeed! :)
     

  5. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
    Thankyou Wisebear.
     
  6. mypc

    mypc Member Guru

    Messages:
    198
    Likes Received:
    0
    GPU:
    Asus GTS 250
    thanks dude now we can play with smaa
     
  7. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
    Well you could do that before with the earlier beta versions too - but now you can do it in DX10/11 !
     
  8. Bat_Zonko

    Bat_Zonko Active Member

    Messages:
    87
    Likes Received:
    0
    GPU:
    Sapphire 7950 OC
    Cool beans. Time to try out the the Vibrance with Fallout NV.

    Nice work CeeJay!

    Bat
     
  9. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
    Remember that you can also switch on a working digital vibrance from the Nvidia control panel and if I recall correctly also from AMD's CCC.
    But it's a system setting and I know of no way to enable it per game - Which is why I made this shader.
     
  10. Bat_Zonko

    Bat_Zonko Active Member

    Messages:
    87
    Likes Received:
    0
    GPU:
    Sapphire 7950 OC
    :) That' the first thing I do when I re-install/install drivers. I reset and tune the vibrance, gamma, brightness, and contrast via CCC and Window's internal settings.

    The per-game color/gamma tweaking that the FXAA Injector allowed was one of the main reasons I used the program. Like you said, I can brute force a setting that looks great for work and browing as a whole via the CCC, but that overall setting doesn't quite work for certain games. The ability to tweak it without resetting you overall settings via that tool, and now with SweetFX, is awesome.

    Anyways, I like the Vibrance shader. It does a lot to help balance out the washed-out effect the Technicolor application can cause. It does effect overlay text somewhat, but nothing bad like overdone FXAA or AMD's horribad MLAA.

    A little bit of Vib, some Technicolor, a dash of Tonemapping, with the LumaSharpen, and Fallout NV has a much, much richer pallette.

    Works and looks real good. Nice job.

    Bats
     

  11. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
  12. Bat_Zonko

    Bat_Zonko Active Member

    Messages:
    87
    Likes Received:
    0
    GPU:
    Sapphire 7950 OC
    I had forgot all about them.. DOH! I tried them way back when I first got FNV and they destroyed my little old 5770. Might have to re-try them and see how much time I can *not* play the game and instead fiddle around their settings instead.

    I already spent at least 2x the time editing armor sets, textures, and mashing mods together then actually playing the game. Still, in-game fiddling with the color sets would be nice :)

    Bats
     
  13. streakpt

    streakpt Master Guru

    Messages:
    277
    Likes Received:
    0
    GPU:
    Sapphire 290 Crossfire
    Is this working with BF3? I tried it out and it didn't work for me.
     
  14. spajdrik

    spajdrik Maha Guru

    Messages:
    1,277
    Likes Received:
    2
    GPU:
    MSI GTX 1060 3GB
    Different keymapping. INSERT now toggles SweetFX ON and OFF and DELETE reloads the shader files..

    well im pressing insert or delete, but nothing happens, its still ON only.

    EDIT.: hmm perhaps its because Rift is actually not only DX9, then it would make sense it cant be switched OFF.
     
    Last edited: Aug 20, 2012
  15. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
    No, you should be able to turn all the effects on and off in both DX9 and DX10/11 - It's just that you can't disable SMAA currently in the settings of the DX10 version and still use the other effects.

    For DX10 it's either SMAA on or everything off.

    In some games you need to hold down the right button a little longer, because it doesn't always register the button if you tap it quickly.
    Or perhaps you need to press it again. I know that for me, in NFS: Hot Pursuit (2010) the button doesn't always take, so i have to try again sometimes.

    If that doesn't work try changing the key back to PAUSE in injector.ini.
    It should be obvious how to do so, but if it isn't write again and I'll write a little tutorial.
     

  16. spajdrik

    spajdrik Maha Guru

    Messages:
    1,277
    Likes Received:
    2
    GPU:
    MSI GTX 1060 3GB
    Indeed hold down of INSERT was needed, but anyway its not much usable, because after like 2 seconds it goes OFF but immediately ON again. Clicking repeatedly quickly INSERT button does nothing.
     
  17. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    686
    Likes Received:
    1
    GPU:
    Radeon 6870
    I don't have BF3 so I can't test that, but I know that some BF3 modders use FXAAtool to tweak BF3 and if it works with the InjectFXAA injector in FXAAtool then it should work with the InjectSMAA injector that I use in SweetFX because InjectSMAA is based on the InjectFXAA source code.

    Try FXAAtool and see if that works for you and let me know, whether it works or not.
     
  18. Dr4Wm4N

    Dr4Wm4N Active Member

    Messages:
    60
    Likes Received:
    0
    GPU:
    Nvidia GeForce GTX 1080
    Amazing work CeeJay ! I'm using SweetFX in a lot of games and they are more gorgious than ever. Thank you so much.

    However is there a way to use SweetFX AND D3DOverrider at the same time ? They conflict each other and only SweetFX remains active (the same happens with InjectFXAA/InjectSMAA). I'm asking that because I would like to use SweetFX with Darksiders 2, but unfortunately this game requires D3DOverrider to fix its broken Vsync setting... I'm playing on a NVIDIA GTX 480 based PC (drivers 305.68 Windows 7 x64) if this can help finding a solution (forcing Vsync in the driver control panel doesn't work for Darksiders 2, only D3DOverrider does the job).
     
    Last edited: Aug 21, 2012
  19. Black Mesa

    Black Mesa Banned

    Messages:
    299
    Likes Received:
    0
    GPU:
    EVGA GTX 560SE 1gb
    IMHO nvidias FXAA is busted it looks like blurry crap but that FXAA injector for Skyrim makes my 1050P monitor look like it is displaying in "Full HD" !
     
  20. PurSpyk!!

    PurSpyk!! Master Guru

    Messages:
    590
    Likes Received:
    1
    GPU:
    GTX Titan X Sli
    Is there another download link for SweetFX, for some reason I cannot retrieve the file
     

Share This Page