FxaaInjectTool released

Discussion in 'Videocards - NVIDIA GeForce Drivers Section' started by Mineria, Dec 11, 2011.

  1. Mineria

    Mineria Ancient Guru

    Messages:
    3,781
    Likes Received:
    6
    GPU:
    Asus Strix GTX 1080
    Fxaa Injection Tool released (Graphical User Interface)

    FXAA Post Process Injection Tool

    Based on the work of Timothy Lottes.

    FXAA Post Process Injection injects different post processing methods to games, like Anti Aliasing, Sharpening, Bloom, Color Tones etc.

    FXAA is a cost effective Anti Aliasing process done in one single pass, which means that it has virtual no impact on the overall system performance.
    That allows us to add additional passes and still keep the system requirements extremely low.

    It even comes with a graphical user interface, which only needs to run if you want to to make quick adjustments, the FXAA shaders are fully independent from it.

    [​IMG]

    FXAA Tool User Guide

    Using the shaders is pretty straight forward.


    • Place the FxaaTool folder anywhere you like.

    • Start FXAA_Tool.exe and add the game exe's or bin's root folder on the tools game list. (if mygame.exe is located in C:\mygame, you just browse to C:\mygame and add that path)

    • You can switch between games by selecting them on the list.

    • Requirements:Microsoft .NET Framework 4 Client Profile

    • All junctions, symbolic links and user setting files are added and removed automatically.

    • Note: If a dx9 or dx10/11 dll is found in the games directory, the tool will not add the game to it's list, neither will it create any links/files.
      If you wish to use the tool with such games, create a backup of those dll's before removing them and adding the game to the list.

    • Important: Always take a backup of FXAA.s3db (your user settings) before updating to a new version of the tool.

    All source code used for the tool, with exception of d3d9.dll source code, is available on SVN: https://subversion.assembla.com/svn/fxaa-pp-inject/

    Shaders included so far:

    • FXAA - Anti Aliasing
    • Pre Sharpen - Removes FXAA created blur on edges
    • HDR - A HDR effect alike shader
    • Bloom - Makes light texture colors bleed into the scenery
    • Tonemap - Adjusts gamma, exposure, saturation, bleach and defog
    • Technicolor - A three-strip color process, like found on old movies
    • Sepia - Adds Sepia tones to the scenery
    • Anaglyph - For usage with Anaglyph 3D glasses
    • Vignette - Adds a frame around the scenery
    • Post Sharpen - Another way to Removes FXAA created blur on edges
    • Final Limiter - Adds option to limit the color output
    • Splitscreen - Adds splitscreen views, original vs shader
    • Noise - Adds noise as dots and lines
    • Radial - Adds from center drawn radial blurred lines
    • ScanLines - Adds horizental lines
    • CustomShader - Add your own shader into CustomShader.h, 2 toggles and 6 sliders available for it in the GUI

    As for fxaa and shaders core code following people deserve credit:

    Timothy Lottes
    HAANDI
    [some dude]
    BeetleatWar1977
    [DKT70]
    fpedace

    CeeJay.dk
    The MPCHC Team
    Hawthorne


    All GUI C# code and some arrangement in the fxaa/shaders code is done by me (Violator)

    [​IMG] The latest release can be downloaded here: FxaaInjTool

    Note: Currently only DirectX9 is fully supported. DirectX10/11 support will be added together with the integration of SweetFX.
    DirectX8 to 9 conversion is supported with the added ENB files.

    [​IMG]

    [​IMG]

    [​IMG]

    Revision release notes:

    Hg16 (SVN are newer builds)

    This time I integrated a game list into the tool, so now you can place the FXAA Tool anywhere you like, games are then added and removed via this list.
    All junctions, symbolic links and user setting files are added and removed automatically.

    SVN14

    New game list menu.
    Added 3 shaders, Anaglyph, Vignette and Final Limiter.

    SVN15

    Added popup for system right permission, required for disk I/O
    This fixes exception crashes for users that run with UAC enabled

    SVN19

    Anaglyph shader file adjustment
    Additional checks added to eliminate exceptions upon file operations
    Some changes to Vignette calculation
    Changed color preview objects to add the alpha transparency channel
    Some minor design changes

    SVN 28


    SplitScreen Implementation (using shader code from SweetFX)

    SVN 66


    Now with SQLite, which means that the tool can do a bit more than earlier version.
    Game List function changed so that a game name can be added.
    Added option to change a games path, note, you will have to manually copy the files, this is more the start for a profile sharing option, I will add export/import later,
    so that users can share profiles and the tool creates the needed links automatically after a game name + folder has been selected.

    SVN 67

    I forgot to add a directory check to save the shader configuration to the game folder.
    Fixed with this version.

    SVN 75

    Fixes a regional issue with 3 dots that needed to be removed, which caused a crash on US style regional systems.
    Game profile sharing added, you can export and import fxaa game profiles and share them among your friends.

    SVN 79


    The dialog box used for entering the game's name interprets hitting return,
    this to avoid confusion, the text in the Game List is no longer editable.
    Editing there does nothing anyway.
    Added tooltips to when the mouse is moved over the shader names
    Partial DirectX 10 support, a few shaders needs to be fixet to work with Dx10
    Added Tonemap blueshift to the GUI and database.
    Also included alter query that will update a users existing database file with the new field.

    SVN 89

    Fixes a bug that came with the addition of BlueShift in SVN 79.

    SVN 95

    Effect Chain selection is ready for usage, remember to set them even for already added games and click the save button afterwards, else the game might crash, since I use the actual shader pass names in the gui and db.
    Updated Bloom to use BT709 alike calculation from MPCHC, I think the colors are presented more accurate with it.
    Updated the HDR shader, had some code in it that wasn't needed, and made it more like the changes seen in SweetFx
    Fixed game crash when AA is disabled with DirectX10 games

    SVN 97

    A few shader update and an addition to Vignette.
    Unfortunately does adding alpha transparency to the pass technique cause artifacts, something probably needs to be changed in how the shaders get injected to make it work without issues, unless it is the fxaa code itself.

    SVN 100

    New shaders added: Noise, Radial and ScanLines
    Now with 9 effect chain selections, you can use the 9th, NoPass for a custom shader
    GUI redesigned slightly

    SVN 101

    Fixes a bug with the effect chain selection for the newly added list boxes.
    Fixes a bug that made maximum on the noise amount slider use the minimum amount.

    SVN 110

    Support for custom shader added, check the CustomShader.h file for details, 6 sliders and 2 toggles are added to the GUI.
    Some minor performance and memory optimizations.
     
    Last edited: Nov 29, 2012
  2. gerardfraser

    gerardfraser Ancient Guru

    Messages:
    1,886
    Likes Received:
    7
    GPU:
    R9 290 Crossfire
    Gret job thank you.Runs off to play with it.
     
  3. spajdrik

    spajdrik Maha Guru

    Messages:
    1,273
    Likes Received:
    2
    GPU:
    MSI Geforce GTX 960 2GB
    Thanks for releasing this Mineria.
    So if i run this tool, run a game, alt tab from game, make some adjustments in FXAA TOOL, go back to game, it applies immediately?
     
  4. Mineria

    Mineria Ancient Guru

    Messages:
    3,781
    Likes Received:
    6
    GPU:
    Asus Strix GTX 1080
    Yes, that is what it does, I would love to get rid of the alt-tabbing need thou.

    @allGurus

    I forgot to correct something in the user setting file thou, so will upload a new version straight away.
    Will look at the bug I get with High Quality Sharpen later, I disabled it and forgot to flag it to zero in the user settings.
    FxaaInjTool r20
     
    Last edited: Dec 11, 2011

  5. spajdrik

    spajdrik Maha Guru

    Messages:
    1,273
    Likes Received:
    2
    GPU:
    MSI Geforce GTX 960 2GB
    Great job Mineria, downloading r20 then :)-
     
  6. Mineria

    Mineria Ancient Guru

    Messages:
    3,781
    Likes Received:
    6
    GPU:
    Asus Strix GTX 1080
    If you browse the source code and get the file shader.fx submitted with r21, disabling AA is possible.
    Will upload a compiled version later when I got some more changes put in. :)
     
  7. Gaizokubanou

    Gaizokubanou Maha Guru

    Messages:
    1,247
    Likes Received:
    0
    GPU:
    Sapphire HD 7970
    Really appreciate it. I'm in my dummy mode ATM so I'll just wait for this for now.
     
  8. Death_Lord

    Death_Lord Master Guru

    Messages:
    702
    Likes Received:
    0
    GPU:
    N/A
    Theres no way to do this for everything so you dont need to put it on a game?
     
  9. rewt

    rewt Maha Guru

    Messages:
    1,245
    Likes Received:
    0
    GPU:
    Thanks Mineria. I hadn't even tested FXAA much until now, but your app finally makes it worthwhile.
     
  10. Mineria

    Mineria Ancient Guru

    Messages:
    3,781
    Likes Received:
    6
    GPU:
    Asus Strix GTX 1080
    There probably is, I just don't know how to make it central without a driver injection method.
    With that it would even be easy to add game profiles and alike, and probably even get rid of alt tabbing and max minimizing.
     

  11. Psycho101

    Psycho101 Master Guru

    Messages:
    216
    Likes Received:
    0
    GPU:
    GTX 460 SLI @ 850/4100
    Awesome little UI, thank you very much.

    I know you said you didn't want to, but a visual indication of the actual numerical value set for each slider (maybe centred in the middle of the slider, at the bottom) would be absolutly awesome. I find myself setting things up via the sliders, then having to open the files up (out of curiousity I suppose, got used to setting numbers) to see the actual values. You could put them in a tool tip for when you mouse over the actual slider arrow if you don't want to clutter the (nice and simple, clean) UI.

    If you ever change your mind, I'll buy you a virtual beer. :givebeer:
     
    Last edited: Dec 11, 2011
  12. mypc

    mypc Member Guru

    Messages:
    198
    Likes Received:
    0
    GPU:
    Asus GTS 250
    thanks man ITS awesOME
     
  13. Mozaik

    Mozaik Banned

    Messages:
    454
    Likes Received:
    0
    GPU:
    Giga gtx 470@800
    I didnt use the FXAA,but now with your tool i will give it a try,thanks man.Agree about more info with the sliders like the number of samples etc.
     
  14. Anth Seebel

    Anth Seebel Master Guru

    Messages:
    281
    Likes Received:
    0
    GPU:
    980 Titanium
    Thanks Mineria, awesome FXAA GUI tool. :cheers:
     
  15. Noisiv

    Noisiv Ancient Guru

    Messages:
    5,828
    Likes Received:
    5
    GPU:
    R9 290 ACIV 1150/1500MHz
    Thank you very much Mineria :rock:
     

  16. harkinsteven

    harkinsteven Ancient Guru

    Messages:
    2,780
    Likes Received:
    1
    GPU:
    GTX 1080
    Thanks Mineria. Your work is much appreciated.
     
  17. ToyTen

    ToyTen Maha Guru

    Messages:
    1,214
    Likes Received:
    0
    GPU:
    MSI 1080 Gaming X
    Merci beaucoup, much appreciated yep !
     
  18. BlueSteel

    BlueSteel Member

    Messages:
    45
    Likes Received:
    0
    GPU:
    ASUS GTX570 @ 880MHz
    You might want to take a look at the SMAA injector as well, maybe it would be possible to offer both types of post-AA in this tool.

    I personally prefer SMAA over FXAA, for the simple reason that it leaves the overall sharpness of the original image almost completely intact. If anyone wants to try the SMAA injector, make sure to disable any overlays like Afterburner or even the Steam overlay in the Steam Options.
     
  19. Mikedogg

    Mikedogg Banned

    Messages:
    2,844
    Likes Received:
    0
    GPU:
    Radeon HD 4650M 1GB
    This is ****ing sweet. Was hoping someone would build a UI for it, cheers.
     
  20. Corbus

    Corbus Ancient Guru

    Messages:
    2,181
    Likes Received:
    0
    GPU:
    1080 Strix OC
    Wow..this tool is amazing. Thank you!
     

Share This Page