FINAL FANTASY XV WINDOWS EDITION

FINAL FANTASY XV WINDOWS EDITION

View Stats:
Kaldaien Mar 7, 2018 @ 4:44pm
[Special K] FFXV Performance Fixes
Performance woes?

It has come to my attention that the game loads input icons synchronously any time it sees input on keyboard/mouse or gamepad.

This means if you are using a gamepad generally but you hit a button on your keyboard -- hitch. If you use keyboard/mouse but hit the analog stick -- hitch.

My own mod framework (Special K) is capable of working around this by preventing the game from seeing input events on devices of your choosing.


Download

    I have packaged a version of Special K with a few tweaks for this game here.[github.com]


Install

    Extract to FFXV's install directory, done.

Uninstall

    Delete dxgi.dll, the Version and logs subdirectories (these are all part of Special K, not the game)


Configuration

    Press Ctrl + Shift + Backspace to open Special K's config menu


    Pro Tip
    Press and hold Ctrl + Shift while the game is starting to access compatibility settings (reset config, remove the mod, disable plug-ins...)



Thread Rescheduling Details < 0.9.9.8 >

This (final?) update includes options that fix thread scheduling on the most important (least important, actually) threads.

Having these scheduled incorrectly is responsible for:
  1. Increased load times (as is SteamAPI, as is anti-debug ..... Square-Enix hates us)
  2. Audio stutter
  3. Physics twitching

The thread priorities for VSYNC Emulation Thread and SwapChain Flip Thread are set way too high by Square Enix and are making it impossible to distribute a workload across your CPUs. This is known as starvation. You simply have things the game needs to be doing with the CPU that it cannot because Square Enix has too many threads running at a ridiculous priority level that is not generally useful for rendering.

Lower those thread priorities to Highest or Above Normal. I would suggest everyone do this, I even do it and I have plenty of CPU cores.




0.9.12
  • Small compatibility update
    • Removed debug symbols (.pdb) because Square Enix deliberately broke the symbol loader -- you should manually delete SpecialK64.pdb if you have it.

0.9.13
  • Added new Thread Performance widget (see Widgets tab of config) and fixed a few issues related to properly identifying and changing the priority of VSYNC and Primary Render Thread
Last edited by Kaldaien; Jul 28, 2018 @ 5:58pm
< >
Showing 1-15 of 7,943 comments
Seraphyx Mar 7, 2018 @ 4:47pm 
Thanks for this
Cats Mar 7, 2018 @ 4:49pm 
Thank you for this useful fix! i was wondering.. would it be possible to somehow incease the quite low draw distance of certain foliage objects or similar with this tool? my apologies if my question is out of place, i just thought you might have some knowledge about these things.

I presume this will not work together with Reshade? since both use a dxgi file.
Last edited by Cats; Mar 7, 2018 @ 4:51pm
Kaldaien Mar 7, 2018 @ 4:58pm 
It should work fine with ReShade. If you want to use official ReShade, name it d3d11.dll.

I may put together a guide for my custom version of ReShade (it can post-process stuff before the HUD is drawn). Using that version's a bit different.
Dies_Irea Mar 7, 2018 @ 5:08pm 
Originally posted by Kaldaien:
It should work fine with ReShade. If you want to use official ReShade, name it d3d11.dll.

I may put together a guide for my custom version of ReShade (it can post-process stuff before the HUD is drawn). Using that version's a bit different.
cool! Anything to help with aliasing?
Dies_Irea Mar 7, 2018 @ 5:12pm 
Originally posted by Cats:
Thank you for this useful fix! i was wondering.. would it be possible to somehow incease the quite low draw distance of certain foliage objects or similar with this tool? my apologies if my question is out of place, i just thought you might have some knowledge about these things.

I presume this will not work together with Reshade? since both use a dxgi file.
just go to Documents\My Games\FINAL FANTASY XV\Steam\savestorage

there`s config file

ModelLODScaling - draw distance - 200 is high, 100 - average, 75 - low. Play with it, every 100 cost about 3-7 FPS depending on location
Last edited by Dies_Irea; Mar 7, 2018 @ 5:12pm
Kaldaien Mar 7, 2018 @ 5:26pm 
Originally posted by Rick_Kickem:
Originally posted by Kaldaien:
It should work fine with ReShade. If you want to use official ReShade, name it d3d11.dll.

I may put together a guide for my custom version of ReShade (it can post-process stuff before the HUD is drawn). Using that version's a bit different.
cool! Anything to help with aliasing?
At the moment? No.

In fact, the game's dynamic resolution scaling is the reason I haven't officially released a profile for this game using my custom version of ReShade. I have to put more work into reverse engineering that whole system, but that would actually kill two birds with one stone.

The resolution scale is the single most effective measure against aliasing, but it needs to be a bit more robust and then I could start bumping up and lowering resolution as performance allows.
Seraphyx Mar 7, 2018 @ 5:31pm 
I'm sure I'm just doing something wrong, but I couldn't get this to work with the official reshade. I did name the reshade dxgi to d3d11 then pasted in yours after but game doesn't start. Deleted both and tried swapping the naming just in case I misunderstood (renamed your dxgi to d3d11 and left reshade as dxgi) and still didn't work. Individually they work fine named either way, but as soon as I put in both it stops working.

Either way I'll take this fix over reshade if I have to choose.
Last edited by Seraphyx; Mar 7, 2018 @ 5:31pm
Dies_Irea Mar 7, 2018 @ 5:33pm 
Originally posted by Kaldaien:
Originally posted by Rick_Kickem:
cool! Anything to help with aliasing?
At the moment? No.

In fact, the game's dynamic resolution scaling is the reason I haven't officially released a profile for this game using my custom version of ReShade. I have to put more work into reverse engineering that whole system, but that would actually kill two birds with one stone.

The resolution scale is the single most effective measure against aliasing, but it needs to be a bit more robust and then I could start bumping up and lowering resolution as performance allows.
well that sucks...cause temporal AA presented in game doesn`t affect hair. SMAA from reshade didn`t nothing, upscaling the image is too expensive performance wise. I hoped they had added TXAA or at least 2X MSAA.

Tried forcing AA throug NVidia tools but "enhancing" did only worse, MFAA is not supported.
Last edited by Dies_Irea; Mar 7, 2018 @ 5:36pm
Kaldaien Mar 7, 2018 @ 5:49pm 
Unofficial ReShade 3.0.8 (Special K Custom)

Originally posted by Seraphyx:
I'm sure I'm just doing something wrong, but I couldn't get this to work with the official reshade. I did name the reshade dxgi to d3d11 then pasted in yours after but game doesn't start. Deleted both and tried swapping the naming just in case I misunderstood (renamed your dxgi to d3d11 and left reshade as dxgi) and still didn't work. Individually they work fine named either way, but as soon as I put in both it stops working.

Either way I'll take this fix over reshade if I have to choose.

Download and Install
Go ahead and completely remove the official version of ReShade from your game's directory, then extract this:


Configuring
    Configuring this version of ReShade is slightly different.
      Open Special K's config menu, then select File | Browse ReShade Assets. Put your Shaders and Textures in those directories respectively.

Misc. Notes
This adds an extra config file (custom_dxgi.ini), which overrides a few mod settings in order to load my custom ReShade. In particular, it's necessary to disable the feature that draws my OSD in video capture software -- that kills both official and unofficial ReShade for this game.
Last edited by Kaldaien; Mar 7, 2018 @ 5:52pm
Atrum Ruina Mar 7, 2018 @ 8:08pm 
Yer a wizard.

Question: Does the "hitching" this addresses affect the clothes and other physics related objects twitching in the game or is that something entirely separate?

Also, any thoughts on the FPS drops during summons people are seeing? I'm holding off on installing the game until either Square acknowledges the issues or we see some kind of notable improvements through fan work (like your own.)

I just started playing Nier and really appreciate your work on FAR.
Someone that actually knows what they are talking about and the denuvo haters magically vanish.
Aemony Mar 7, 2018 @ 8:33pm 
Originally posted by 蛍はゴミです:
Someone that actually knows what they are talking about and the denuvo haters magically vanish.

Lol, they usually just resort to calling him a shill instead.


Originally posted by Atrum Ruina:
Also, any thoughts on the FPS drops during summons people are seeing? I'm holding off on installing the game until either Square acknowledges the issues or we see some kind of notable improvements through fan work (like your own.)

Possibly a shader being used that tanks the performance for a short while. Wouldn't be the first time something like that happened.
johnpinky7 Mar 7, 2018 @ 8:34pm 
Hey Kaldaien, thanks for making this. Solved 100% of my stutters, before it would stutter every 15 or so seconds despite staying at 60 fps. I appreciate all the work you do FOR FREE for us gamers, you've fixed so many games and it's unbelievable how you do it. So from one gamer to another, accept my thanks my friend.
Caramello Mar 7, 2018 @ 8:35pm 
Does this still come with anti piracy malware? lul
Kaldaien Mar 7, 2018 @ 8:36pm 
Does this still come with anti piracy malware? lul
Yep.

If you try to use this and you have a pirated version, it's not going to work. I don't have time to debug your inferior pirated versions of games. Far be it from me to educate you on the definition of malware, however. The word you're looking for is license validation.
< >
Showing 1-15 of 7,943 comments
Per page: 15 30 50