From aa77c8ee72cde04ff7323965f34f78bddb9fc85a Mon Sep 17 00:00:00 2001 From: MrPixel92 <35262174+MrPixel92@users.noreply.github.com> Date: Sat, 29 Apr 2023 19:56:56 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A1=D1=87=D1=91=D1=82=D1=87=D0=B8=D0=BA=20FP?= =?UTF-8?q?S=20+=20=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=D1=8C=D0=BD=D0=BE?= =?UTF-8?q?=D0=B5=20=D0=B8=D0=B7=D0=BC=D0=B5=D1=80=D0=B5=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20=D0=BF=D1=80=D0=BE=D0=B8=D0=B7=D0=B2=D0=BE=D0=B4=D0=B8=D1=82?= =?UTF-8?q?=D0=B5=D0=BB=D1=8C=D0=BD=D0=BE=D1=81=D1=82=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Теперь учитывается и время обновления экрана тоже --- Applications/RayWalk.app/RayEngine.lua | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/Applications/RayWalk.app/RayEngine.lua b/Applications/RayWalk.app/RayEngine.lua index 5ed5f9cb..345f6f1d 100755 --- a/Applications/RayWalk.app/RayEngine.lua +++ b/Applications/RayWalk.app/RayEngine.lua @@ -13,6 +13,14 @@ local inputX = 0 local inputY = 0 local inputYaw = 0 local holdingFire = 0 + +---------------------------------------------------- Переменные ------------------------------------------------------------------ +local startRenderClock = os.clock() +local endRenderClock = os.clock() +local frameCount = 0 +local fps = 0 +local lastFPSCheck = os.clock() + ---------------------------------------------------- Константы ------------------------------------------------------------------ local rayEngine = {} @@ -558,8 +566,8 @@ function rayEngine.drawWorld() end function rayEngine.update() - local frameRenderClock = os.clock() + local frameRenderClock = os.clock() rayEngine.rotate(rayEngine.player.rotationSpeed * inputYaw) rayEngine.move(rayEngine.player.moveSpeed * inputY, rayEngine.player.moveSpeed * inputX) @@ -577,13 +585,23 @@ function rayEngine.update() if rayEngine.debugInformationEnabled then rayEngine.drawDebugInformation(3, 2 + (rayEngine.minimapEnabled and 12 or 0), 24, 0.6, - "renderTime: " .. string.format("%.2f", (os.clock() - frameRenderClock) * 1000) .. " ms", + "renderTime: " .. string.format("%.2f", ((os.clock() - frameRenderClock) + (endRenderClock-startRenderClock)) * 1000) .. " ms", + "FPS: " .. string.format("%.2f",fps), "freeRAM: " .. string.format("%.2f", computer.freeMemory() / 1024) .. " KB", "pos: " .. string.format("%.2f", rayEngine.player.position.x) .. " x " .. string.format("%.2f", rayEngine.player.position.y) ) end + startRenderClock = os.clock() screen.update() + frameCount = frameCount + 1 + + if (os.clock() - lastFPSCheck) > 1 then + fps = frameCount + frameCount = 0 + lastFPSCheck = os.clock() + end + endRenderClock = os.clock() end ----------------------------------------------------------------------------------------------------------------------------------