NVidia Anti-Aliasing Guide (updated)

Discussion in 'Videocards - NVIDIA GeForce Drivers Section' started by Cyberdyne, Jan 29, 2012.

  1. GuyFawkesGaming

    GuyFawkesGaming Member

    Messages:
    28
    Likes Received:
    1
    GPU:
    EVGA GTX 980 4GB
    Does anyone know of an SGSSAA (or OG/Hybrid otherwise) flag for System Shock 2 on NewDark (Dx9)? MSAA + TrSSAA support is builtin. The common flags don't do anything and I've heard some people say it makes things invisible if forced without flags.
     
  2. sergcrack

    sergcrack New Member

    Messages:
    2
    Likes Received:
    0
    GPU:
    GTX 1070
    Hello, I would like to know for the Renegade Ops game, the screenshot states that the game supports anti-aliasing, but I can't turn it on, please tell me how, here is a screenshot [​IMG]
     
  3. BauFender

    BauFender New Member

    Messages:
    2
    Likes Received:
    0
    GPU:
    1060 6GB
    The best AA for Valorant that I could achieve. The game is cap at MSAA x4 and does not listen to force 8x in Nvidia Profile Inspector.

    MSAAx4 + SGSSAAx4 + MFAA + LineGamma + AFx16 + FXAA
    Lod Bias is auto controlled by the driver, same results that using manual -1.000

    [​IMG]
    both.png

    Once the changes are made, it is necessary to put these two files in read-only mode so that the game does not remove the SGSSAA setting.

    [​IMG]
    onlyRead.png

    Result:

    99999.jpg
     
  4. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,365
    Likes Received:
    260
    GPU:
    Gigabyte 3080 Ti
    Try something like 0x00000041?

    This is an old entry on the list but according to PCGW
    https://www.pcgamingwiki.com/wiki/Renegade_Ops#/media/File:Renegade_Ops_Options.png
    MSAA is in the menu, you just need to enhance it probably. Or you can probably force it without any bits.
    o_O A UE4 game that actually supports MSAA? Must be using the forward rendering mode normally used for VR i've seen reference to. That screen looks pretty good if a bit oversharpened too. Got any other screenshots, or an A/B comparison vs with just MSAA? I'll add this to the post.



    Also: For what it's worth, with the new Reshade 5 they seem to have changed how rendering works sufficiently to the point that SGSSAA no longer seems to cause a major conflict and cause a massive performance drop or major blurring as it tries to process the shaders when the AA fix is turned on. I've only tested L.A. Noire so far, but this is a huge deal since before with old Reshade versions it was always a tight balancing act of effects vs massive performance requirements to enable them with SGSSAA turned on.
    To that effect, I wish I was smart enough to figure out how to disable the in game DoF in LA Noire, it's super low quality and using Reshade DoF with SGSSAA looks great, except for when problems creep in from the low quality in game DoF.


    Though a downside is that reshade doesn't seem to work with all of the same effects as RS4. It downloads all the same shaders but a large portion of them are missing when you actually try to look in the menu.
     
    Last edited: May 23, 2022

  5. Markie

    Markie Active Member

    Messages:
    83
    Likes Received:
    15
    GPU:
    GTX 950 2Gb
    I just tested SGSSAA with the latest version of ReShade in Resident Evil 4 and the blur that's increased which each shader applied is definitely still there, even with the AA fix.
     
    Last edited: May 23, 2022
  6. Klemc

    Klemc Active Member

    Messages:
    59
    Likes Received:
    3
    GPU:
    1660S PNY SingleFan
    PCGWiki informs about unofficial NVPI upddated, that's good ?

    EDIT
    crashes when i open custom profiles list, only if use mouse wheel.
     
    Last edited: May 25, 2022
  7. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,365
    Likes Received:
    260
    GPU:
    Gigabyte 3080 Ti
    Hmm. I'll have to try other games too then.
     
  8. KainXVIII

    KainXVIII Member Guru

    Messages:
    102
    Likes Received:
    2
    GPU:
    MSI GTX 970
    I'm looking for Myst V: End of Ages SGSSAA bit :(
     
  9. Klemc

    Klemc Active Member

    Messages:
    59
    Likes Received:
    3
    GPU:
    1660S PNY SingleFan
    About monitors

    what gives better IQ (AA related and not related too) ? :

    a 1440p@120hz (27") with resolution set to 200% or OGSSAA or DSR or AA bits for SGSSAA...
    Vs.
    a 2160p@120hz (27/32") alone
     
  10. Markie

    Markie Active Member

    Messages:
    83
    Likes Received:
    15
    GPU:
    GTX 950 2Gb
    @MrBonk SGSSAA in Far Cry 2 needs AA fix, there's visible seamlines in underwater geometry. This isn't mentioned in the spreadsheet or the original post.

    No AA fix:
    [​IMG]

    AA fix:
    [​IMG]
     
    KainXVIII and Cave Waverider like this.

  11. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,365
    Likes Received:
    260
    GPU:
    Gigabyte 3080 Ti
    I haven't played FC2 in the time since the AA fix became relevant so I didn't know. Thank you for reporting it, I will add a note.


    I will always advocate for lower resolution + AA if you are sitting the proper distance from a display for your vision to actually properly resolve the pixels of the display.
    Once you get outside of that sweet spot it becomes a bit murky, but depending on the content it is absolutely still a visible issue. Using no AA on a higher res monitor will not look better IMO. And the artifacts things like TAA produce are still sadly just as visible on a 4k display as they are on a 1080p display in many cases, but resolve using TAA is often better with greater pixel counts.
    So if we were talking TAA at native on a lower res monitor vs TAA at native on a higher res monitor, the later would usually win. (See: RE Engine games, Dying Light 1 for example). But if you have a lower res monitor you can still benefit greatly from downsampling with TAA to that lower resolution.

    Muddy
     
    Last edited: Jun 19, 2022
    Markie likes this.
  12. Melanholic7

    Melanholic7 New Member

    Messages:
    6
    Likes Received:
    1
    GPU:
    1060
    Anybody have working settings for Genshin impact?:(
    I, like many people, had overall PC issue with jagged edges, flickering borders and so on. Which we cant fix (they are in games, windows, text, videos, even bios). So im trying to find maybe a way to make settings profile for AA but so far randomly mashing things isnt helping...
    and is there a way to use those settings to windows overall, like desktop, text, videos on youtube?... or only for games?
     
    Last edited: Jun 20, 2022
  13. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,365
    Likes Received:
    260
    GPU:
    Gigabyte 3080 Ti
    It's a DX11 game so you are limited to what the developers do themselves for GI.
    The best you can do is use the built in TAA and then probably use DLDSR (The 2.25x setting in recent NVCP). That's the best you'll get, aside from extreme downsampling if you have a powerful GPU. Which tbh will probably give pretty good results for a game with that kind of art style.
    If the game will only set your desktop resolution as render resolution, you'll have to just simply set your desktop resolution first to the DLDSR resolution then start the game.
    Or use a script with Playnite like
    where "Set-ScreenResolution is the desired resolution to change to when starting a game and then use the same script to execute when exiting the game and set it back to your normal resolution
    Code:
    Function Set-ScreenResolution {
    
    <#
        .Synopsis
            Sets the Screen Resolution of the primary monitor
        .Description
            Uses Pinvoke and ChangeDisplaySettings Win32API to make the change
        .Example
            Set-ScreenResolution -Width 3840 -Height 2160         
        #>
    param (
    [Parameter(Mandatory=$true,
               Position = 0)]
    [int]
    $Width,
    
    [Parameter(Mandatory=$true,
               Position = 1)]
    [int]
    $Height
    )
    
    $pinvokeCode = @"
    
    using System;
    using System.Runtime.InteropServices;
    
    namespace Resolution
    {
    
        [StructLayout(LayoutKind.Sequential)]
        public struct DEVMODE1
        {
            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
            public string dmDeviceName;
            public short dmSpecVersion;
            public short dmDriverVersion;
            public short dmSize;
            public short dmDriverExtra;
            public int dmFields;
    
            public short dmOrientation;
            public short dmPaperSize;
            public short dmPaperLength;
            public short dmPaperWidth;
    
            public short dmScale;
            public short dmCopies;
            public short dmDefaultSource;
            public short dmPrintQuality;
            public short dmColor;
            public short dmDuplex;
            public short dmYResolution;
            public short dmTTOption;
            public short dmCollate;
            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
            public string dmFormName;
            public short dmLogPixels;
            public short dmBitsPerPel;
            public int dmPelsWidth;
            public int dmPelsHeight;
    
            public int dmDisplayFlags;
            public int dmDisplayFrequency;
    
            public int dmICMMethod;
            public int dmICMIntent;
            public int dmMediaType;
            public int dmDitherType;
            public int dmReserved1;
            public int dmReserved2;
    
            public int dmPanningWidth;
            public int dmPanningHeight;
        };
    
    
    
        class User_32
        {
            [DllImport("user32.dll")]
            public static extern int EnumDisplaySettings(string deviceName, int modeNum, ref DEVMODE1 devMode);
            [DllImport("user32.dll")]
            public static extern int ChangeDisplaySettings(ref DEVMODE1 devMode, int flags);
    
            public const int ENUM_CURRENT_SETTINGS = -1;
            public const int CDS_UPDATEREGISTRY = 0x01;
            public const int CDS_TEST = 0x02;
            public const int DISP_CHANGE_SUCCESSFUL = 0;
            public const int DISP_CHANGE_RESTART = 1;
            public const int DISP_CHANGE_FAILED = -1;
        }
    
    
    
        public class PrmaryScreenResolution
        {
            static public string ChangeResolution(int width, int height)
            {
    
                DEVMODE1 dm = GetDevMode1();
    
                if (0 != User_32.EnumDisplaySettings(null, User_32.ENUM_CURRENT_SETTINGS, ref dm))
                {
    
                    dm.dmPelsWidth = width;
                    dm.dmPelsHeight = height;
    
                    int iRet = User_32.ChangeDisplaySettings(ref dm, User_32.CDS_TEST);
    
                    if (iRet == User_32.DISP_CHANGE_FAILED)
                    {
                        return "Unable To Process Your Request. Sorry For This Inconvenience.";
                    }
                    else
                    {
                        iRet = User_32.ChangeDisplaySettings(ref dm, User_32.CDS_UPDATEREGISTRY);
                        switch (iRet)
                        {
                            case User_32.DISP_CHANGE_SUCCESSFUL:
                                {
                                    return "Success";
                                }
                            case User_32.DISP_CHANGE_RESTART:
                                {
                                    return "You Need To Reboot For The Change To Happen.\n If You Feel Any Problem After Rebooting Your Machine\nThen Try To Change Resolution In Safe Mode.";
                                }
                            default:
                                {
                                    return "Failed To Change The Resolution";
                                }
                        }
    
                    }
    
    
                }
                else
                {
                    return "Failed To Change The Resolution.";
                }
            }
    
            private static DEVMODE1 GetDevMode1()
            {
                DEVMODE1 dm = new DEVMODE1();
                dm.dmDeviceName = new String(new char[32]);
                dm.dmFormName = new String(new char[32]);
                dm.dmSize = (short)Marshal.SizeOf(dm);
                return dm;
            }
        }
    }
    
    "@
    
    Add-Type $pinvokeCode -ErrorAction SilentlyContinue
    [Resolution.PrmaryScreenResolution]::ChangeResolution($width,$height)
    }
    
    Set-ScreenResolution -Width 3840 -Height 2160 

    Aliasing is something that is inherent in Digital Signalling like Rasterization, unless something is done at the source level in many cases you are stuck with what you get. (And upscaling that which makes it worse).
    We can only do so much for games from an end user point of view.
     
    Melanholic7 likes this.
  14. Klemc

    Klemc Active Member

    Messages:
    59
    Likes Received:
    3
    GPU:
    1660S PNY SingleFan
    Yes, that's a great answer, so 1440p is flawless in my case.

    And now there is the hardware, i want a 27" (my 32GN600-B is good, but too big) , also i really think about OLED, becauses i hate IPS, but I doubt to find that in 27" 1440p one day, maybe I'll be forced to choose one in 4k, I can wait until the 4070 arrives.

    Thanks Mr. Bronk, I didn't notice it was you at first, because of the avatar.
     
  15. PurSpyk!!

    PurSpyk!! Master Guru

    Messages:
    712
    Likes Received:
    29
    GPU:
    GTX 1080Ti X Sli
    Searched online but could not find anything to assisit. Is there anyway to improve the AA in Rage 2? The ingame options do very little, even using DSR does not help much
     

  16. Gonzo32

    Gonzo32 Member

    Messages:
    25
    Likes Received:
    1
    GPU:
    Rtx2080ti
    I am playing Arkham Knight at 5k and I can still see jaggies in many assets, specular aliasing is very nasty in this game

    Any advice to fight this?
     
  17. TheDeeGee

    TheDeeGee Ancient Guru

    Messages:
    8,000
    Likes Received:
    2,045
    GPU:
    NVIDIA GTX 1070 8GB
    Wanting to play through No One Lives Forever 2, but i'm suffering from that 1 pixel see through border in cutscenes due to anti-aliasing.

    It seems there isn't a way to convert the game to DX9, so my usual SweetFX fix to add a 1 pixel border doesn't work.

    Any ideas?
     
  18. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,365
    Likes Received:
    260
    GPU:
    Gigabyte 3080 Ti
    DX11 game, you are SOL.
    Using Reshade should automatically wrap it to DX9.
     
  19. TheDeeGee

    TheDeeGee Ancient Guru

    Messages:
    8,000
    Likes Received:
    2,045
    GPU:
    NVIDIA GTX 1070 8GB
    Guess i'll deal with it, cuz ReShade tells me i need to download the dx8to9.dll from github, sadly this corrupts textures in the game.
     
  20. tempuser2022

    tempuser2022 New Member

    Messages:
    2
    Likes Received:
    0
    GPU:
    2070S
    Can someone give me advice. Using inspector very rarely, and because of that I always forget these details.
    So sample - here are one of settings for Bayonetta (https://forums.guru3d.com/threads/nvidia-anti-aliasing-guide-updated.357956/page-189#post-5419276)

    Ingame - AA disabled, SSAO - Disabled.
    Inspector -
    AA compatibility - 12C1
    AA Fix - On

    AA Mode - Enchance app setting
    AA Setting - 4x (4x Multisampling)
    AA Transparency Multisampling - Enabled
    AA Transparency Supersampling - 4x Sparse Grid Supersampling.

    Once in game - no AA is applied.
    Any clue why?
    Maybe its important important - running 1440p resolution.
     

Share This Page