SweetFX Shader Suite release and discussion thread #3

Discussion in 'Games, Gaming & Game-demos' started by CeeJay.dk, Mar 18, 2013.

Thread Status:
Not open for further replies.
  1. pedoncho

    pedoncho Guest


    Is it possible to create custom curves? which software do you use?
    and is it too much complicated to do?
    For what I seen LiftGamma is the effect to use if you want a more customized curve effect (correct me if im wrong) but is splitted into 3 parts, and many times I found lowering the supposed lower/darker tones and getting the brighter tones even brighter anyways.
    I sarted messing with that recently and prob theres many things to learn, any tip would be appreciated, thanks!
  2. padolamap

    padolamap Guest

    Excuse my English but I am using a translator. I wanted to know specifically that use SweetFX download a configuration as you and there are things that I have, so I can not accurately reproduce your setting, more precisely the next line.

    # define USE_TVLEVELS 1 / / [0 or 1] TVLevels: Adjusts the brightness / darkness of the scene with a straight line instead of a curve.

    where you can download the file to make this command functional.
    Thank you very much
  3. Elajitz

    Elajitz Master Guru

    Likes Received:
    GeForce RTX 4090
    Updated 21 April! - http://sfx.thelazy.net/games/preset/327/
    Everything is enabled that was disabled in Update April 18th! Do not use this Updated if you want the 18 April look that some was asking about!..
    This update will Give you game more of the effect that was in the earlier version of fire the ice V.2!

  4. padolamap

    padolamap Guest

    I understand what you say but this function does not work if you have some files in the shaders
    for example, # define USE_SMAA_ANTIALIASING
    has a backup file called shaders SMAA.h
    but what you put at least in my shaders do not have any file to support it.

  5. robgrab

    robgrab Guest

    I tried disabling TV Levels but it still crashed. I've never had any problems running Bioshock under DX9 using TV Levels, so I doubt that's the problem. It seems specific to DX10. I've read other forums with people experiencing the same exact issue: Bioshock DX10 and SweetFX 1.4 with TV Levels. So far nobody has found a solution. Some people claim they've "tested" it, and it runs fine for them, but I doubt they've actually "played" it for any length of time. It runs fine for me too, for about 10-15 minutes, before it completely freezes up. I guess I can try SweetFX 1.3 but I prefer all the improvements of 1.4 plus I wasn't clear on DX10 support under 1.3.

    Below is the contents of my log file. I don't know if that holds any information that might be useful. I have no idea what any of that means.

    full path: C:\Program Files (x86)\Steam\steamapps\common\Bioshock\Builds\Release\
    redirecting CreateDXGIFactory
    redirecting D3D11CreateDeviceAndSwapChain
    redirecting CreateDXGIFactory
    redirecting D3D11CreateDeviceAndSwapChain
    redirecting IDXGIFactory->CreateSwapChain
    initialising shader environment
  6. Elajitz

    Elajitz Master Guru

    Likes Received:
    GeForce RTX 4090
    I use the the TV-Effect
    So this settings will only work's whit this SFX version here--> http://www.mediafire.com/?n5l6fym1sfhsb3z
  7. K-putt

    K-putt Guest

    Small update to my Mass Effect 3 .cfg
    It's a bit less Blue now. And it has more of a Greenish tint.


  8. New injector [DX9 &DX10/11]

    Ok time for a release even if it's still a work-in-progress :



    Key Features :
    • Compatible with 64bits games/apps
    • FXAA integrated without the need of an external DLL
    • New effects liike film grain and blur/bloom
    • Effects are separated from SMAA/FXAA to avoid artefacts
    • No more exotic file locations, everything should be dropped in the executable folder of the game/app
    • Somewhat better compatibility (more games supported) : DX9 all the games that use swapchain::present now work with SweetFX, Farcry3 now works in DX11
    • Better performance for DX9 (DX11 performance is the same as MrHaandi's)
    • Better screenshot naming (app name + date & time as part of the filename)
    • Key mapping fully integrated in the SweetFX_settings.txt file
    • Ability to load external d3d9 wrapper (much like ENB proxy)
    • Ability to completely disable antialiasing and only use SweetFX shaders
    • Source-code, now we have one : )
    Known issues :
    • The log file can be messy when both DX9 and DX10/11 logging is happening
    • SMAA may be broken in some Windows XP machines (conan2k)
    • Crashes in 3DMark11 can be solved by deleting the d3d9.dll (this could apply to other games crashing)
    • DX10 performance is slightly inferior to MrHaandi's injector (I still don't know why)

    Update 2013-05-01 :
    • DX11 : Speed improvements
    • DX9 : SMAA pass is also separated from the other effects.
    • DX9 : Fixed the "weakness" of effects
    • Should now work equally well with the KB2670838 update installed or not
    Update 2013-05-05 :
    • SMAA implemented last, after all the effects are rendered (should look smoother)
    Update 2013-05-27 :
    • Improved performance for DX11
    • Added gaussian blur, bloom, (costly) unsharpmasking (DX9 only)
    • Added film grain effect for DX9 and DX11
    • Slightly modified ArcadeCRT shader so it scales better
    Update 2013-06-01 :
    • Fixed compatibility issues (Grid 2, Dota2, Black OPS 2...)
    • Added gaussian blur, bloom, (costly) unsharpmasking for DX10/11 as well
    Last edited by a moderator: Jun 5, 2013
  9. ninjafada

    ninjafada Guest

    ah yes merci vais test ça XD
    5fps gagné sur gw2
    Last edited by a moderator: Apr 22, 2013
  10. BetA

    BetA Ancient Guru

    Likes Received:

    Woow...this is Big news worthy mate..
    64bit support and the own SOurce code (and i guess now its also possible to add effects that we couldnt add before, maybe like Dof or motion blur etc etc..should be possible now if i understand this right :) )...Thats what i call progess ;)

    now, with some time we can really make a powerfull tool..

    im Thankfull for Ceejay and Boulotaur and all the others inversted time and sweat in this..really im stunned...

    Gotta love the Community..

    Thanks a lot for this and all the hard work...

    Big LOve, BetA :banana:
    Last edited: Apr 22, 2013

  11. bishi

    bishi Master Guru

    Likes Received:
    GTX 1080 SLI

    Thanks a lot for this but it seems to crash BF3 on startup. 1.4 works fine.

    Both using default settings and no overlays are running.

    EDIT: Log in case it helps...

    [16:02:19] Successfully hooked DX10/11 application and created log in 'C:\Origin Games\Battlefield 3\'
    [16:02:19] CreateDXGIFactory hook
    [16:02:19] D3D11CreateDeviceAndSwapChain redirected successfully
    [16:02:19] Hooking swapchain...
    [16:02:19] Re-Applying JMP Detour on D3D11CreateDeviceAndSwapChain...
    [16:02:19] D3D10CreateDeviceAndSwapChain redirected successfully
    [16:02:19] Re-Applying JMP Detour on D3D10CreateDeviceAndSwapChain...
    [16:02:21] CreateDXGIFactory1 hook
    [16:02:21] D3D11CreateDeviceAndSwapChain redirected successfully
    [16:02:21] Re-Applying JMP Detour on D3D11CreateDeviceAndSwapChain...
    [16:02:22] D3D11 rendering used
    [16:02:22] Trying to open SweetFX config file 'C:\Origin Games\Battlefield 3\SweetFX_settings.txt'
    [16:02:22] SweetFX config file successfully opened !
    [16:02:22] USE_SMAA_ANTIALIASING defined in SweetFX config file
    [16:02:22] Created DeferredContext successfully
    [16:02:22] Initializing SMAA (width: 1920, height: 1080)...
    [16:02:22] Loaded 'C:\Origin Games\Battlefield 3\SweetFX\Shaders\SMAA_DX11.fx' successfully : SMAA is on !
    Last edited: Apr 22, 2013
  12. conan2k

    conan2k Guest

    Awesome news,

    Can you please implement the same thing for DX9?

    It would also be great to have:
    • Option to force tripple buffering via the injector (to avoid compatibility problems with/get rid of additional overlays like D3DOverrider)
    • Support of SMAA T2x and S2x/4x (whichever is possible)

    Many thanks for your hard work!
  13. padolamap

    padolamap Guest

  14. Wanny

    Wanny Guest

    Thanks a lot. I've been using your versions.
  15. NimbusTLD

    NimbusTLD Guest

    This is not possible with an injector according to CeeJay.dk:

    Source: http://mrhaandi.blogspot.co.uk/p/injectsmaa.html (comments section)

  16. TFL Replica

    TFL Replica Guest

    Likes Received:
    RTX 3060 Ti
    Thanks for all the hard work you've put into this! :thumbup:
  17. conan2k

    conan2k Guest

    Not exactly. SMAA S2x should be possible when games have support for MSAA (lots of games do support it) since it is basically MSAA 2x + SMAA.

    From the source that you've mentioned above:

    And, I'm not so sure about SMAA T2x and S4x but might be possible for DX10/DX11 since there are tools which allow to force SSAA in DX10/DX11 games (for example, ToMMTi-Systems SSAA-Tool):
    - SMAA T2x is temporal SSAA 2x + SMAA
    - SMAA S4x is temporal SSAA 2x + MSAA 2x + SMAA
  18. jelbo

    jelbo Guest

    Great to see this improving. I don't have KB2670838 installed so I just tried the other version with Tomb Raider. It crashes the game. No D3DOverrider or MSI Afterburner running.

    Log reads:

    [19:46:02] Successfully hooked DX9 application and created log in 'D:\Games\STEAM\steamapps\common\Tomb Raider\'
    [19:46:02] Redirecting CreateDevice : successful (width: 1, height: 1)
    [19:46:02] Trying to open SweetFX config file 'D:\Games\STEAM\steamapps\common\Tomb Raider\SweetFX_settings.txt'
    [19:46:02] SweetFX config file successfully opened !
    [19:46:02] USE_SMAA_ANTIALIASING defined in SweetFX config file
    [19:46:02] Low Present params values (width: 1, height: 1)... Most likely Using SwapChain::Present here
    I then tried ninjafada's DirectX Image Viewer. Works fine with that, although it looks different than SweetFX.

    Click for lossless originals.


    New Injector

    SweetFX 1.4

    SweetFX settings for anyone interested:

      /                       Description                           /
    Game: Tomb Raider
    SweetFX version: 1.4
    Author: jelbo
    These are the default settings for SweetFX 1.4
    They smoothen jagged edges with SMAA anti-aliasing, sharpen the image with LumaSharpen and make the colors slightly more vibrant with Vibrance.
    Please note when tweaking settings that higher numbers does not always equal better (nor does lower).
    Finding the best settings for your game and your taste is about finding just the right amount to apply.
    If you made a good setttings preset please share it with your friends, on forums and websites,
    and submit it to the SweetFX Settings Database : http://sfx.thelazy.net/games/
      /                      Choose effects                         /
    // Set to 1 for ON or 0 for OFF
    #define USE_SMAA_ANTIALIASING 1 //[0 or 1] SMAA Anti-aliasing : Smoothens jagged lines using the SMAA technique.
    #define USE_FXAA_ANTIALIASING 0 //[0 or 1] FXAA Anti-aliasing : Smoothens jagged lines using the FXAA technique. WIP - Currently only works in DX9 and you need to use the FXAA injector dlls.
    #define USE_CARTOON       0 //[0 or 1] Cartoon : "Toon"s the image. (Interferes with SMAA, CRT, Bloom, HDR and Lumasharpen)
    #define USE_ADVANCED_CRT  0 //[0 or 1] Advanced CRT : Simulates an old CRT TV display. (Interferes with SMAA, Cartoon, Bloom, HDR and Lumasharpen, and it has a very high performance cost) 
    #define USE_BLOOM         0 //[0 or 1] Bloom : Makes bright lights bleed their light into their surroundings (relatively high performance cost)
    #define USE_HDR           0 //[0 or 1] HDR : Not actual HDR - It just tries to mimic an HDR look (relatively high performance cost)
    #define USE_LUMASHARPEN   1 //[0 or 1] LumaSharpen : Also sharpens the antialiased edges which makes them less smooth - I'm working on fixing that.
    #define USE_TECHNICOLOR   0 //[0 or 1] TECHNICOLOR : Attempts to mimic the look of an old movie using the Technicolor three-strip color process (Techicolor Process 4)
    #define USE_DPX           1 //[0 or 1] Cineon DPX : Should make the image look like it's been converted to DXP Cineon - basically it's another movie-like look similar to technicolor.
    #define USE_MONOCHROME    0 //[0 or 1] Monochrome : Monochrome makes the colors disappear.
    #define USE_LIFTGAMMAGAIN 1 //[0 or 1] Lift Gamma Gain : Adjust brightness and color of shadows, midtones and highlights (avoids clipping)
    #define USE_TONEMAP       0 //[0 or 1] Tonemap : Adjust gamma, exposure, saturation, bleach and defog. (may cause clipping)
    #define USE_VIBRANCE      1 //[0 or 1] Vibrance : Intelligently saturates (or desaturates if you use negative values) the pixels depending on their original saturation.
    #define USE_CURVES        1 //[0 or 1] Curves : Contrast adjustments using S-curves.
    #define USE_SEPIA         0 //[0 or 1] Sepia : Sepia tones the image.
    #define USE_VIGNETTE      0 //[0 or 1] Vignette : Darkens the edges of the image to make it look more like it was shot with a camera lens. May cause banding artifacts.
    #define USE_DITHER        1 //[0 or 1] Dither : Applies dithering to simulate more colors than your monitor can display. This lessens banding artifacts (mostly caused by Vignette)
    #define USE_BORDER        0 //[0 or 1] Border : Makes the screenedge black as a workaround for the bright edge that forcing some AA modes sometimes causes.
    #define USE_SPLITSCREEN   0 //[0 or 1] Splitscreen : Enables the before-and-after splitscreen comparison mode.
      /                  SMAA Anti-aliasing settings                /
    #define SMAA_THRESHOLD 0.05           //[0.05 to 0.20] Edge detection threshold. If SMAA misses some edges try lowering this slightly. I prefer between 0.08 and 0.12.
    #define SMAA_MAX_SEARCH_STEPS 64      //[0 to 98] Determines the radius SMAA will search for aliased edges
    #define SMAA_MAX_SEARCH_STEPS_DIAG 16  //[0 to 16] Determines the radius SMAA will search for diagonal aliased edges
    #define SMAA_CORNER_ROUNDING 28        //[0 to 100] Determines the percent of antialiasing to apply to corners. 0 seems to affect fine text the least so it's the default.
    // -- Advanced SMAA settings --
    #define COLOR_EDGE_DETECTION 1        //[0 or 1] 1 Enables color edge detection (slower but slightly more acurate) - 0 uses luma edge detection (faster)
    #define SMAA_DIRECTX9_LINEAR_BLEND 0  //[0 or 1] Using DX9 HARDWARE? (software version doesn't matter) if so this needs to be 1 - If not, leave it at 0.
                                          //Enable this only if you use a Geforce 7xxx series or older card, or a Radeon X1xxx series or older card.
      /                  FXAA Anti-aliasing settings                /
    #define FXAA_QUALITY__PRESET 9       //[1 to 9] Choose the quality preset. 9 is the highest quality.
    #define fxaa_Subpix 0.400            //[0.000 to 1.000] Choose the amount of sub-pixel aliasing removal.
    #define fxaa_EdgeThreshold 0.250     //[0.000 to 1.000] Edge detection threshold. The minimum amount of local contrast required to apply algorithm.
    #define fxaa_EdgeThresholdMin 0.060  //[0.000 to 1.000] Darkness threshold. Trims the algorithm from processing darks.
      /                      Cartoon settings                       /
    //No settings yet, beyond switching it on or off in the top section.
      /                    Advanced CRT settings                   /
    #define CRTAmount            0.50   //[0.00 to 1.00]  Amount of CRT effect you want
    #define CRTResolution        7.0    //[1.0 to 8.O]    Input size coefficent (low values gives the "low-res retro look"). Default is 1.2
    #define CRTgamma             2.2    //[0.0 to 4.0]    Gamma of simulated CRT (default 2.4)
    #define CRTmonitorgamma      2.2    //[0.0 to 4.0]    Gamma of display monitor (typically 2.2 is correct)
    #define CRTBrightness        1.0    //[1.0 to 3.0]    Used to boost brightness a little. Default is 1.0
    #define CRTScanlineIntensity 2.0    //[2.0 to 4.0]    Scanlines intensity (use integer values preferably). Default is 2.0
    #define CRTScanlineGaussian  1      //[0 or 1]        Use the "new nongaussian scanlines bloom effect". Default is on
    #define CRTCurvature         0      //[0 or 1]       "Barrel effect" enabled (1) or off (0)
    #define CRTCurvatureRadius   1.5    //[0.0 to 2.0]    Curvature Radius (only effective when Curvature is enabled). Default is 1.5
    #define CRTCornerSize        0.001  //[0.001 to 0.002] Higher values, more rounded corner. Default is 0.001
    #define CRTDistance          2.00   //[0.00 to 4.00]  Simulated distance from viewer to monitor. Default is 2.00
    #define CRTAngleX            0.00   //[-0.20 to 0.20] Tilt angle in radians (X coordinates)
    #define CRTAngleY            0.00   //[-0.20 to 0.20] Tilt angle in radians (Y coordinates). (Value of -0.15 gives the 'arcade tilt' look)
    #define CRTOverScan          1.00   //[1.00 to 1.10]  Overscan (e.g. 1.02 for 2% overscan). Default is 1.01
    #define CRTOversample        1      //[0 or 1]        Enable 3x oversampling of the beam profile (warning : performance hit)
      /                       Bloom settings                        /
    #define BloomThreshold 20.25 //[0.00 to 50.00] Threshold for what is a bright light (that causes bloom) and what isn't.
    #define BloomPower 1.446     //[0.0000 to 8.0000] Strength of the bloom
    #define BloomWidth 0.0142    //[0.0000 to 1.0000] Width of the bloom
      /                        HDR settings                         /
    #define HDRPower 1.30  //[0.00 to 8.00] Strangely lowering this makes the image brighter
    #define radius2  0.87  //[0.00 to 8.00] Raising this seems to make the effect stronger and also brighter
      /                     LumaSharpen settings                    /
    // -- Sharpening --
    #define sharp_strength 0.40   //[0.10 to 3.00] Strength of the sharpening
    #define sharp_clamp    0.010  //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035
    // -- Advanced sharpening settings --
    #define pattern 2        //[1|2|3|4] Choose a sample pattern. 1 = Fast, 2 = Normal, 3 = Wider, 4 = Pyramid shaped.
    #define offset_bias 0.5  //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern.
                             //I designed the pattern for offset_bias 1.0, but feel free to experiment.
    // -- Debug sharpening settings --
    #define show_sharpen 0   //[0 or 1] Visualize the strength of the sharpen (multiplied by 4 to see it better)
      /                      TECHNICOLOR settings                   /
    #define TechniAmount 0.4         //[0.00 to 1.00]
    #define TechniPower  4.0         //[0.00 to 8.00]
    #define redNegativeAmount   0.88 //[0.00 to 1.00]
    #define greenNegativeAmount 0.88 //[0.00 to 1.00]
    #define blueNegativeAmount  0.88 //[0.00 to 1.00]
      /                      Cineon DPX settings                    /
    #define Red   5.6  //[1.0 to 15.0]
    #define Green 4.0  //[1.0 to 15.0]
    #define Blue  6.0  //[1.0 to 15.0]
    #define ColorGamma    1.3  //[0.1 to 2.5] Adjusts the colorfulness of the effect in a manner similar to Vibrance. 1.0 is neutral.
    #define DPXSaturation 1.1  //[0.0 to 8.0] Adjust saturation of the effect. 1.0 is neutral.
    #define RedC   0.5  //[0.60 to 0.20]
    #define GreenC 0.5 //[0.60 to 0.20]
    #define BlueC  0.5  //[0.60 to 0.20]
    #define Blend 0.2    //[0.00 to 1.00] How strong the effect should be.
      /                      Monochrome settings                    /
    #define Monochrome_conversion_values float3(0.18,0.41,0.41) //[0.00 to 1.00, 0.00 to 1.00, 0.00 to 1.00] Percentage of RGB to include (should sum up to 1.00)
      /                      Lift Gamma Gain settings               /
    #define RGB_Lift   float3(0.950, 0.953, 0.955) // [0.000 to 2.000] Adjust shadows for Red, Green and Blue
    #define RGB_Gamma  float3(1.080, 1.083, 1.085) // [0.000 to 2.000] Adjust midtones for Red, Green and Blue
    #define RGB_Gain   float3(1.007, 1.008, 1.009) // [0.000 to 2.000] Adjust highlights for Red, Green and Blue
      /                        Tonemap settings                     /
    #define Gamma 1.0        //[0.000 to 2.000] Adjust midtones
    #define Exposure 0.00    //[-1.000 to 1.000] Adjust exposure
    #define Saturation 0.00  //[-1.000 to 1.000] Adjust saturation
    #define Bleach 0.00      //[0.000 to 1.000] Brightens the shadows and fades the colors
    #define Defog 0.035  //[0.000 to 1.000] How much of the color tint to remove
    #define FogColor float3(0.75, 0.00, 0.00) //[0.00 to 2.55, 0.00 to 2.55, 0.00 to 2.55] What color to remove - default is blue
      /                       Vibrance settings                     /
    #define Vibrance 0.18 //[-1.00 to 1.00] Intelligently saturates (or desaturates if you use negative values) the pixels depending on their original saturation.
      /                        Curves settings                      /
    #define Curves_mode 0        //[0|1|2] Choose what to apply contrast to. 0 = Luma, 1 = Chroma, 2 = both Luma and Chroma. Default is 0 (Luma)
    #define Curves_contrast 0.32 //[-1.00 to 1.00] The amount of contrast you want
    // -- Advanced curve settings --
    #define Curves_formula 2     //[1|2|3|4|5|6|7|8|9] The contrast s-curve you want to use.
                                 //1 = Sine, 2 = Abs split, 3 = Smoothstep, 4 = Exp formula, 5 = Simplified Catmull-Rom (0,0,1,1), 6 = Perlins Smootherstep
                                 //7 = Abs add, 8 = Techicolor Cinestyle, 9 = Parabola.
                                 //Note that Technicolor Cinestyle is practically identical to Sine, but runs slower. In fact I think the difference might only be due to rounding errors.
                                 //I prefer 2 myself, but 3 is a nice alternative with a little more effect (but harsher on the highlight and shadows) and it's the fastest formula.
      /                         Sepia settings                      /
    #define ColorTone float3(1.40, 1.10, 0.90) //[0.00 to 2.55, 0.00 to 2.55, 0.00 to 2.55] What color to tint the image
    #define GreyPower  0.11                    //[0.00 to 1.00] How much desaturate the image before tinting it
    #define SepiaPower 0.58                    //[0.00 to 1.00] How much to tint the image
      /                       Vignette settings                     /
    #define VignetteRatio 1.00    //[0.15 to 6.00]  Sets a width to height ratio. 1.00 (1/1) is perfectly round, while 1.60 (16/10) is 60 % wider than it's high.
    #define VignetteRadius 1.00   //[-1.00 to 3.00] lower values = stronger radial effect from center
    #define VignetteAmount -1.00  //[-2.00 to 1.00] Strength of black. -2.00 = Max Black, 1.00 = Max White.
    #define VignetteSlope 8       //[1 to 16] How far away from the center the change should start to really grow strong (odd numbers cause a larger fps drop than even numbers)
    #define VignetteCenter float2(0.500, 0.500)  //[0.000 to 1.000, 0.000 to 1.000] Center of effect.
      /                        Dither settings                      /
    #define dither_method 1  //[1 or 2] 1 = Ordering dithering (good and very fast), 2 = Random dithering (even better dithering but not as fast)
    //Note that the patterns used by Dither, makes an image harder to compress.
    //This can make your screenshots and video recordings take up more space.
      /                        Border settings                      /
    //No settings yet, beyond switching it on or off in the top section.
      /                     Splitscreen settings                    /
    #define splitscreen_mode 1  //[1|2|3|4|5]  1 = Vertical 50/50 split, 2 = Vertical 25/50/25 split, 3 = Vertical 50/50 angled split, 4 = Horizontal 50/50 split, 5 = Horizontal 25/50/25 split
    Last edited by a moderator: Apr 22, 2013
  19. Zomgerd

    Zomgerd Guest

    Bold: DoF and Motion blur (well Definitely DoF) I believe require a dll specific to the game/engine, similar to how ENB is done. So unless they want to give their time to make multiple dlls for many games/engines it's still not possible. :p
  20. Johnny5srv

    Johnny5srv Guest

    Well now I'm starting to get confused by these different variations.=/
Thread Status:
Not open for further replies.

Share This Page