1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

FPS Limiter for Vulkan, OpenGL, DirectX 9, DirectX 10, DirectX 11 and DirectX 12

Discussion in 'Game Tweaks and Modifications' started by niftucal, Sep 6, 2018.

  1. niftucal

    niftucal New Member

    Messages:
    9
    Likes Received:
    6
    GPU:
    RX 580 / GeForce
    Hi everyone.

    I created a framerate control tool with support for most common APIs. The fine folks at ReShade recommended I posted it here so there you go. :)

    Details are available at my blog: https://niftucal.blogspot.com
    Kind regards
     
    Last edited: Sep 6, 2018
    Wagnard, AsiJu and BetA like this.
  2. BetA

    BetA Ancient Guru

    Messages:
    4,075
    Likes Received:
    79
    GPU:
    MSI GTX670 PEOC@1350Mhz
    you should post more infos and the features also :`)

     
    niftucal likes this.
  3. RealNC

    RealNC Ancient Guru

    Messages:
    2,512
    Likes Received:
    754
    GPU:
    EVGA GTX 980 Ti FTW
    Thanks!

    Is source code for this available? I was looking for a simple frame limiter with source available I can experiment with.

    Right now RTSS is the best and simplest to use FPS limiter out there, but unfortunately it doesn't provide sources for us to tinker with.
     
    Last edited: Sep 7, 2018
  4. niftucal

    niftucal New Member

    Messages:
    9
    Likes Received:
    6
    GPU:
    RX 580 / GeForce
    I usually avoid duplicating information in several places, but in this case that helps, thanks. If you have further suggestions feel free to leave feedback and I'll try to make the improvements.
     

  5. niftucal

    niftucal New Member

    Messages:
    9
    Likes Received:
    6
    GPU:
    RX 580 / GeForce
    I could create an installer to make it easier for non-technical users, but I don't see how it could be much simpler than this. Currently it's not open-source but there are plenty of projects that use similar techniques with source code available (e.g. ReShade). Search GitHub for "injector" for example.
     
  6. RealNC

    RealNC Ancient Guru

    Messages:
    2,512
    Likes Received:
    754
    GPU:
    EVGA GTX 980 Ti FTW
    I was just hoping for something simple to experiment with. Just a frame limiter, nothing else, without the rest of the functionality you find in ReShade and friends. It wouldn't even have to be open source. Just have source code available.
     
  7. Wagnard

    Wagnard Ancient Guru

    Messages:
    2,540
    Likes Received:
    148
    GPU:
    MSI Geforce GTX 1080
    Hey man, nice work with this.
    A few things I have observed.
    1- This fixed the mega stuttering I was having with Battlefield 4 (even with GSYNC). It is fixed even when limitting the FPS way higher than what I can achieve. I'm really curious on this one are you injecting something in particular that could change the game timer or something like that?

    2-Sometimes, even when I exit your framelimiter, it will still be active. What I mean is I quit my game, exit the framelimiter (process not there anymore) and then restart the game and it is still limited to the fps and I can even control it. A workaround is I must logout of my windows session and sign in again. sometimes the game will be locked at 60 FPS too.

    If you don't make the source code available, I'm a bit curious exactly on how the thing work. I know you are injecting a Dll but I'm curious of what is done after that.
     
    Last edited: Sep 19, 2018
    BetA likes this.
  8. niftucal

    niftucal New Member

    Messages:
    9
    Likes Received:
    6
    GPU:
    RX 580 / GeForce
    Hi.

    I like your tools, and even recommended using them in conjunction with this. It's in the GeForce forums but you'll have to search for the thread.

    There are many ways to inject code into games. For example check out https://github.com/DarthTon/Xenos
    From then it's a matter of modifying the rendering API like ReShade does. Additionally I use techniques that are as compatible as possible with security software/restrictions, which involved a lot more work than the obvious solutions. This requires a lot of technical knowledge but I'm familiar with it because of my mods for games like Dragon Age series.

    If the game limiter is still active when you close the FPS Limiter window that means the dll component couldn't be unloaded from the game process for some reason. It's probably related to other tools that you're using which are also loaded into the game process (usually overlays or overclocking tools). In the ideal case if you want perfect behavior you'll have to use only base game + FPS Limiter, otherwise just wait for the games to finish before closing the limiter window (and obviously don't terminate the process directly).

    Regarding Frostbite the engine tries to make full use of all cores which can be a double-edged sword. Good FPS limiters can avoid stutter problems in these cases even when the limit is set very high, but now the post is getting too long to explain all details... :)
     
    Wagnard and BetA like this.
  9. AsiJu

    AsiJu Ancient Guru

    Messages:
    5,190
    Likes Received:
    843
    GPU:
    MSI RTX 2070 Armor
    Downloaded, will test it once I have some time.

    Hotkey limit adjustment sounds very convenient! Thanks!

    Btw does the limit always change in 1 fps steps or can this be defined in the .ini?
    As decimal steps would be useful.
     
  10. niftucal

    niftucal New Member

    Messages:
    9
    Likes Received:
    6
    GPU:
    RX 580 / GeForce
    You're welcome. I actually considered it before and could make the changes, but it seems more useful in theory than it is in practice. Having an accurate stable interval between frames is important but the exact FPS isn't. You can confirm this yourself by testing different values using the Control+Page Up/Down keys. If more people still think it's useful they're welcome to leave their feedback of course. Note that different games may have different limits when running at the same time though.
     
    AsiJu likes this.

  11. Mars73

    Mars73 Member

    Messages:
    34
    Likes Received:
    4
    GPU:
    Gigabyte GTX1080Ti
    Been using rivatuner for some time, but just came across this and in Elder Scrolls Online (only tested in here as it's what I'm playing most atm) this is much smoother than rivatuner.
    I was already using some reshade fxs and downloaded your modified reshade and copied the dll's and cfg so that it gets injected, closed afterburner/rivatuner combo and the result for me was a much smoother experience. Will try with some other games soon.
    Thanks!
     
    niftucal likes this.
  12. niftucal

    niftucal New Member

    Messages:
    9
    Likes Received:
    6
    GPU:
    RX 580 / GeForce
    Hi. Thanks for the information. I tried to design and optimize the tool precisely to achieve that.

    Usually when playing it's best to minimize use of background apps as much as possible, which is what Windows 10's Game Mode tries to do. I don't use other overlays (apart from ReShade) because of that.

    Edit: The latest versions of some GPU tools appear to block this for some reason, so it's best to make sure they're disabled first. Users reported smoother gameplay when those tools are disabled anyway. Overlays like Steam/Origin/Uplay are compatible obviously.
     
    Last edited: Nov 15, 2018 at 11:17 PM

Share This Page