Not really precisely, cause you only check the amount of fps from one pre-frame, not from a second.
But the good thing about it, that it shows us direct big fps drops, I tried that part of you.
It jumps from 66 t/m 56, my fps is stable and it makes changes with 10 fps.
but it detect big fps drops directly:(I tried this)
local updateTick,lastFPSUpdate = 0,0
addEventHandler ("onClientPreRender", root,
function (dt)
local fps = math.floor ( 1000 / dt )
if lastFPSUpdate-fps > 30 and (not updateTick or getTickCount () - updateTick > 500) then
updateTick = getTickCount ()
outputChatBox("big fps drop")
end
lastFPSUpdate = fps
end)
@abxf,
local counter = 0
local starttick
local fps =0
addEventHandler("onClientRender",root,
function()
if not starttick then
starttick = getTickCount()
end
counter = counter+1
if getTickCount() - starttick >= 1000 then
fps = counter
starttick,counter = false,0
end
dxDrawText(""..fps.."", 898, 689, 1018, 736, tocolor(0, 255, 0, 255), 1.00, "default", "left", "top", false, false, true, false, false)
end
)