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. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,262
    Likes Received:
    206
    GPU:
    MSI RTX 2080
    Can we get a lossless PNG of that? That JPG is horribly compressed..
     
  2. ninjafada

    ninjafada Master Guru

    Messages:
    308
    Likes Received:
    0
    GPU:
    pny 670
    i don't have the game i took the screenshot on steam XD
    give me a good png to work with ^^

    and my dx9 image viewer degrade quality i'm looking into it
     
    Last edited: Mar 23, 2013
  3. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,262
    Likes Received:
    206
    GPU:
    MSI RTX 2080
    Ah, well usually i'd say just use Fraps or MSI afterburner to get game screenshots in PNG format. This gives you the best quality screenshots you can get.

    Make sure to upload them to a site where they won't be re-compressed on top of that too. Like Abload.de or Minus.com
     
  4. 80T

    80T Member

    Messages:
    20
    Likes Received:
    0
    GPU:
    nVidia GTS250 1GB
    Is it also possible to port this Shader to SweetFX ?
     

  5. ninjafada

    ninjafada Master Guru

    Messages:
    308
    Likes Received:
    0
    GPU:
    pny 670
    look like you didn't read anything

    i used a homemade image viewer that load the good quality screenshot in a big surface and display it with directx but i loss quality doing that so that's why you can see banding
    i need to use quads i think, gonna look at it next week

    i already use fraps for png screenshots
     
  6. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    689
    Likes Received:
    8
    GPU:
    Radeon 6870
    No. Not yet.
    It first does a bloom effect and then runs a second pass on the output of the first, that applies the Advanced CRT (cgwg CRT) effect.

    The Injector I use in SweetFX only allows me to do one pass.
    Hopefully in the future.. but not now.
     
  7. 80T

    80T Member

    Messages:
    20
    Likes Received:
    0
    GPU:
    nVidia GTS250 1GB
    That's what I was afraid of... I'm still very happy for the CRT shader that we already have and very happy about SweetFX even being in existence ;)

    The feature that caught my eyes in that CRT Shader I've pointed in my previews post was the halation pass that would emulate that thick glass glow that a CRT Arcade Monitor would suffer from.

    No Halation pass
    [​IMG]
    Halation pass
    [​IMG]

    EDIT: Nevermind... I've "fixed" it...
     
    Last edited: Mar 23, 2013
  8. Gramps

    Gramps Active Member

    Messages:
    84
    Likes Received:
    0
    GPU:
    PNY GTX 770 4GB OC
    Would be nice to explain how you've fixed it :)
     
  9. 80T

    80T Member

    Messages:
    20
    Likes Received:
    0
    GPU:
    nVidia GTS250 1GB
    It was the screenshots. I wasn't able to direct link to those because some words in the adress would be replaced with " ********** " That's what I've fixed :D The edit...

    My bad, it sounded from my 2nd edit that I've fixed the shader itself...
     
  10. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    689
    Likes Received:
    8
    GPU:
    Radeon 6870
    TCPIP asked me in a PM a question I thought I'd answer in the forums because it would be interesting to others as well.

    He writes :
    Yes I can.

    Code:
    /*
    ------------------------
    16-235 -> 0-255 (Levels)
    ------------------------
    
    - Expands the 16-235 TV range to 0-255 PC range
    */
    
    
    #define const_1 (16.0/255.0)
    #define const_2 (255.0/219.0)
    
    float4 TVLevelsPass( float4 colorInput )
    {
      colorInput.rgb = (colorInput.rgb  - const_1) * const_2;
      return colorInput;
    }
    You will also need to add the proper code to load and call it in main.h and add some switches for it in the settings.
    The SweetFX/making shaders.txt included with SweetFX explains this.

    What does it do?
    Video content intended to be displayed on TV do not use the full 0-255 range from black to white, instead they use a limited range from 16-235.

    When you view such content on a display that expects a 0-255 range, like a PC monitor it will look slightly washed out because the contrast will be reduced.
    The blacks are not black but dark grey and the whites are not white but light grey.

    To fix this the 0-235 limited range needs to be expanded to the 0-255 full range if you intend to watch TV content on a PC monitor.

    This can be done in several different steps:
    • In the encoder, so the encoder corrects for this when encoding a DVD or bluray, resulting in a .avi or .mkv with a 0-255 full range.
    • In the decoder
    • In the renderer
    • In post processing - either on the CPU like with ffdshow or on GPU like the 16-235 -> 0-255 shader
    • Or in the graphics driver - both Nvidia and AMD have an option in their drivers to output video with the Full range instead of the limited range.

    When should you use this?
    You should use this when viewing content produced for TV on a PC monitor (or other display with a 0-255 full range)

    All PC content (for example PC games) uses the PC 0-255 full range and does not need this shader.

    I therefore do not see any need for this in SweetFX.
    PC games should all use the correct full range, properly coded console emulators on PC should also display in the correct full range and media players on PC already have many options for expanding limited to full range.

    You could give the shader the option to use a custom black level and a custom white level and you would have a levels shader which could be used to control contrast, but since PC games use the full range, this would cause clipping of the shadows and highlights, which I why I much prefer to do contrast with an S-curve adjustment (the Curves shader does this) because where levels contrast, expands the midtones and clips the shadows and highlights, the S-curve expands the midtones and compresses the shadows and highlights.
    This means the details in the shadows and highlights are not gone but simply have less contrast
    If you compress the shadows and highlights hard enough though then you can lose minor details as two adjacent shades will be quantized (rounded off) into the same shade.
    The Dither shader can help here by creating many more intermediate shades, so the detail is not lost.

    Ordered dithering in the Dither shader can add an extra intermediate shade, so instead of 8 bit (per color channel) you have 9 bit. This makes for a total of 27 bit (dithered) colors instead of 24 bit (3 colors ~ red, green and blue * 8bit) or an increase from 16,777,216 colors to 134,217,728 colors.

    Random dithering in the Dither shader however allows for all the fractional bits in the single-precision binary floating-point format to be used (albeit influenced by imprecise floating point math in GPUs and the quality of the random number generator I use) which should be 23bits.
    This theoretically allows the Dither shader to simulate 69bits of colors (3 * 23bit) or 590,295,810,358,705,651,712 dithered colors, which needless to say is a LOT more :)

    But I've digressed .. I hope you got the answer you wanted.
     
    Last edited: Mar 23, 2013

  11. Quest

    Quest Member Guru

    Messages:
    127
    Likes Received:
    1
    GPU:
    SLI GTX 770 JETSTREAM 4GB
    Guys how fix it?

    full path: D:\Resident Evil 6\
    redirecting CreateDevice
    initialising shader environment
    D3DXCreateEffectFromFile failed
    try to use "D:\Resident Evil 6\resource" for shader files
     
  12. Gramps

    Gramps Active Member

    Messages:
    84
    Likes Received:
    0
    GPU:
    PNY GTX 770 4GB OC
    Maybe this re-quote helps you Quest
     
  13. Quest

    Quest Member Guru

    Messages:
    127
    Likes Received:
    1
    GPU:
    SLI GTX 770 JETSTREAM 4GB
    ye works tnx
     
  14. TCPIP

    TCPIP Active Member

    Messages:
    67
    Likes Received:
    0
    GPU:
    AMD Radeon R9 290
    Here's what i get
    SweetFX/Shaders/Main.h(216,15): error X3013: 'TVLevelsPass': function does not take 2 parameters
     
  15. Stein3x

    Stein3x Master Guru

    Messages:
    233
    Likes Received:
    0
    GPU:
    Gigabyte 970 GTX G1 | SLI
    CeeJay i have some problems with sweetFX and some games like Need for speed Most wanted (2012) or the new Resident evil 6.When fullscreen i have to press the "scroll lock" button 25 times or more (or continuously press it) to enable/disable the effects and this also applies when taking screenshots .This doesn't happen on window mode and is very frustrating :( and this problem happened with 1.3v also.
     

  16. CeeJay.dk

    CeeJay.dk Master Guru

    Messages:
    689
    Likes Received:
    8
    GPU:
    Radeon 6870
    Don't pass two parameters to it.

    You're probably doing :

    Code:
    #if (USE_TVLEVELS== 1)
        FinalColor = TVLevelsPass(FinalColor,tex);
    #endif
    When you should be doing:

    Code:
    #if (USE_TVLEVELS== 1)
        FinalColor = TVLevelsPass(FinalColor);
    #endif
     
  17. ninjafada

    ninjafada Master Guru

    Messages:
    308
    Likes Received:
    0
    GPU:
    pny 670
    it's the same for everyone
    perhaps when the new dx11 injector will be ready it will work better
    or it's how the games handle the keys not bound in fullscreen
     
  18. S1eB

    S1eB Member

    Messages:
    14
    Likes Received:
    0
    GPU:
    Sapphire R9 290 Tri-X
    Hi, guys.

    Anyone got SweetFX working with Resident Evil 6?
    I get a crash strait to desktop with SweetFX in the main folder where the .EXE is, do I need to put the files in a different folder?

    EDIT: Never mind, I just found out where to put the files :D

    Put all files in

    Resident Evil 6\ Resources

    And you also need to move

    "d3d9.dll" "dxgi.dll" and "injector.ini" into the Resident Evil 6 main folder

    Happy zombie shooting :D
     
    Last edited: Mar 23, 2013
  19. kaicooper

    kaicooper Master Guru

    Messages:
    519
    Likes Received:
    42
    GPU:
    GTX 780 SC ACX
    Sweetfx work well with RE6 but u should hold Scroll Lock long time

    i tried this game with Chris and Leon and Jack

    WOOOOOOOOOOOOOOORST GAME EVEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEER
    DELETE rightaway after this...shame Capcom

    lets c RE Revalation
     
  20. jez_uk1

    jez_uk1 Active Member

    Messages:
    78
    Likes Received:
    0
    GPU:
    GTX 1080 SLI
    I can't get it to work. Win8 64, 314.21
    Here's the contents of "log.log":

    full path: D:\Games\Steam\SteamApps\common\skyrim\
    redirecting CreateDevice
    initialising shader environment
     
    Last edited: Mar 23, 2013
Thread Status:
Not open for further replies.

Share This Page