Jump to content

[HELP] Getting a player's FPS


..:D&G:..

Recommended Posts

  
local player = getLocalPlayer() 
local counter = 0 
local starttick 
local currenttick 
addEventHandler("onClientRender",root, 
    function() 
        if not starttick then 
            starttick = getTickCount() 
        end 
        counter = counter + 1 
        currenttick = getTickCount() 
        if currenttick - starttick >= 1000 then 
            setElementData(player,"FPS",counter) 
            counter = 0 
            starttick = false 
        end 
    end 
) 

Link to comment
  • MTA Team

onClientPreRender

Notice (not quite sure about this): This number might be inaccurate, because pre-rendered frames might be dropped, which will show higher FPS (prerendered) than the actual FPS (rendered).

  
local framesPerSecond = 0 
local framesDeltaTime = 0 
  
addEventHandler("onClientPreRender", root, 
    function (deltaTime) 
        framesDeltaTime = framesDeltaTime + deltaTime 
        framesPerSecond = framesPerSecond + 1 
         
        if framesDeltaTime >= 1000 then 
            setElementData(localPlayer, "fps", framesPerSecond) 
            framesDeltaTime = framesDeltaTime - 1000 
            framesPerSecond = 0 
        end 
    end 
) 
  

onClientRender

  
local framesPerSecond = 0 
local framesDeltaTime = 0 
local lastRenderTick = false 
  
addEventHandler("onClientRender", root, 
    function () 
        local currentTick = getTickCount() 
        lastRenderTick = lastRenderTick or currentTick 
        framesDeltaTime = framesDeltaTime + (currentTick - lastRenderTick) 
        lastRenderTick = currentTick 
        framesPerSecond = framesPerSecond + 1 
         
        if framesDeltaTime >= 1000 then 
            setElementData(localPlayer, "fps", framesPerSecond) 
            framesDeltaTime = framesDeltaTime - 1000 
            framesPerSecond = 0 
        end 
    end 
) 
  

@ getCurrentFPS

This example is even more inaccurate than onClientPreRender because it may jump randomly between 0-FPSLIMIT, depending on CPU usage.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...