Phantasy Star Online 2 New Genesis

Phantasy Star Online 2 New Genesis

Nicht genug Bewertungen
How to improve frame pacing and stutter + Vsync with NGS. Use DXVK!
Von BONKERS
How to get proper Vsync (Because there is no option in the game. It just lets DWM do whatever it wants.) and reduce the bad frame pacing and stutter present in both PSO2 and NGS.
   
Preis verleihen
Favorisieren
Favorisiert
Entfernen
Get DXVK and initial setup
  • Download the latest version of DXVK here
    https://github.com/doitsujin/dxvk/releases

  • Open the x64 folder and drag all the .dll files into
    \steamapps\common\PHANTASYSTARONLINE2_NA_STEAM\pso2_bin

  • Create a new text file called dxvk.conf in
    \steamapps\common\PHANTASYSTARONLINE2_NA_STEAM\

  • Paste the following contents into dxvk.conf
    https://pastebin.com/ctmvXVEc

  • If you want dxvk to manage vsync and framerate limiting you'll need to un-comment (remove the # from the line) and change the values respectively of the following lines to your desired values.
    You may need to use some trial and error to find what works best on your system.
    The framerate limit can be a whole number such as 120.000 or an integer like 119.995.
    If you decide to use DXVK to manage framerate, you may want to disable the in game framerate limit instead.
    # Enables a frame rate limiter, unless the game is already
    # limited to the same refresh rate by vertical synchronization.
    #
    # Supported values : Any non-negative integer

    # dxgi.maxFrameRate = 59.997
    # d3d9.maxFrameRate = 59.997


    # Override back buffer count for the Vulkan swap chain.
    # Setting this to 0 or less will have no effect.
    #
    # Supported values: Any number greater than or equal to 2.

    # dxgi.numBackBuffers = 2
    # d3d9.numBackBuffers = 2


    # Overrides synchronization interval (Vsync) for presentation.
    # Setting this to 0 disables vertical synchronization entirely.
    # A positive value 'n' will enable Vsync and repeat the same
    # image n times, and a negative value will have no effect.
    #
    # Supported values: Any non-negative number

    dxgi.syncInterval = -1
    d3d9.presentInterval = -1


    # True enables the mailbox present mode in case regular Vsync is disabled.
    # This should avoid tearing, but may be unsupported on some systems
    # or require setting dxgi.numBackBuffers to a higher value in order
    # to work properly.
    #
    # False enables the relaxed fifo present mode in case regular Vsync is enabled.
    # This should result in tearing but reduce stutter if FPS are too low,
    # but may be unsupported on some systems.
    #
    # Please do not report issues with this option.
    #
    # Supported values: Auto, True, False

    # dxgi.tearFree = Auto
    # d3d9.tearFree = Auto
  • If you want to play with RTSS Scanline Sync*(further config required and possible issues.) or without Vsync all together you can leave the above lines commented out and by default the game will run without Vsync and you will get tearing. But the least input lag.

  • This will work perfectly fine on both Windows 7 and Windows 10.
    However on Windows 7 you may want to disable Aero. And regardless you will get this error when booting up the game and or when switching between PSO2 and NGS. In my case you have to CRTL+ALT+DELETE to get it to show up so you can click ok and bypass the message. So far haven't had any stability issues once you bypass the error message. (This was taken with Aero enabled. Please dont' use Aero)
Alternate ways of framelimiting the game or forcing Vsync.
Depending on your setup, you may need to play around with other methods to get the results that seem to work best for you in terms of input latency and frametime stability.

Other methods of vsync
  • Driver Forced Vsync - depending on your GPU Vendor, with the game running Vulkan as long as they support the
    VK_EXT_full_screen_exclusive
    extension you should now be able to use your Driver Control Panel to create a proflie for PSO2.exe, or a third party program such as Nvidia Profile Inspector[github.com] with NV GPUs to force Vsync on.
    For my setup using Driver Vsync seems to be a more stable option.

  • GShade[gposers.com]/ReShade[reshade.me] -
    In the latest versions of this injector AFIK there is an option to force Vsync. I have not attempted this however. If you use these you may want to give it a try. For Reshade you'll probably need to enable the global Vulkan injector to get it to work. And for Gshade I don't know actually. I was able to get Gshade to work before using DXVK but enabling the wrap to Vulkan option in the menus didn't seem to work. And I haven't tried using Gshade yet once i've gotten DXVK 1.9 to work yet.
    YMMV

  • RTSS Scanline-Sync
    If you are familiar with MSI Afterburner and RTSS, this isn't new to you. However configuring SS on a per display basis can be tough and confusing. And it isn't perfect. It can still tear and stutter. But when it works, it's great. No added latency and perfect sync to your display's actual refresh.
    There is a problem with DXVK and RTSS however only when playing base PSO2. Not NGS. So if you just play NGS you shouldn't have this problem.
    Trying to launch PSO2 with RTSS enabled and set to detect PSO2.exe, may cause the game to hard lock. I have yet to determine whether just having the OSD enabled causes the problem or whether it's the application detection level.

    I've found 2 options that seem to work to bypass the problem.
    1. Restart RTSS and disable detection of PSO2.exe until you load PSO2 successfully. Once the game has loaded, turn detection back on and restart RTSS.
    2. Set application detection to low and disable the OSD. (Restart RTSS for changes to take affect).


Other ways of limiting the framerate
  • Driver framerate limiter
  • RTSS (Which now has 3 separate framerate limiting modes when you go to the setup options for each profile. By default Async is setup geared towards the lowest latency)
    Pretty self explanatory. Good to experiment to find what works for you.
    See this article about reducing input lag when using vsync.[blurbusters.com]
    (DXVK is already set up above to limit pre-rendered frames to 1)

    If you know of any others, feel free to try using them and experiment to find what works best on your setup!
1 Kommentare
Xavum 24. Aug. 2021 um 2:52 
Um help.. It crashes randomly whenever I'm minutes into the game with dxvk and I don't know why