From 8ef7d43603fec74f840ddf5b6e537816f9443f01 Mon Sep 17 00:00:00 2001 From: MihailRis Date: Wed, 6 Nov 2024 00:52:33 +0300 Subject: [PATCH] fix hands behaviour when paused --- src/graphics/render/WorldRenderer.cpp | 8 +++++--- src/graphics/render/WorldRenderer.hpp | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/graphics/render/WorldRenderer.cpp b/src/graphics/render/WorldRenderer.cpp index 565f1c42..033b8124 100644 --- a/src/graphics/render/WorldRenderer.cpp +++ b/src/graphics/render/WorldRenderer.cpp @@ -342,7 +342,9 @@ void WorldRenderer::renderDebugLines( lineBatch->line(0.f, 0.f, 0.f, 0.f, 0.f, length, 0.f, 0.f, 1.f, 1.f); } -void WorldRenderer::renderHands(const Camera& camera, const Assets& assets) { +void WorldRenderer::renderHands( + const Camera& camera, const Assets& assets, float delta +) { auto entityShader = assets.get("entity"); auto indices = level->content->getIndices(); @@ -370,7 +372,7 @@ void WorldRenderer::renderHands(const Camera& camera, const Assets& assets) { glm::quat rot0 = glm::quat_cast(prevRotation); glm::quat rot1 = glm::quat_cast(rotation); glm::quat finalRot = - glm::slerp(rot0, rot1, static_cast(engine->getDelta() * speed)); + glm::slerp(rot0, rot1, static_cast(delta * speed)); rotation = glm::mat4_cast(finalRot); matrix = rotation * matrix * glm::rotate( @@ -444,7 +446,7 @@ void WorldRenderer::draw( if (hudVisible) { renderLines(camera, linesShader, ctx); if (player->currentCamera == player->fpCamera) { - renderHands(camera, assets); + renderHands(camera, assets, delta * !pause); } } } diff --git a/src/graphics/render/WorldRenderer.hpp b/src/graphics/render/WorldRenderer.hpp index 22e864c5..a1023b2d 100644 --- a/src/graphics/render/WorldRenderer.hpp +++ b/src/graphics/render/WorldRenderer.hpp @@ -53,7 +53,7 @@ class WorldRenderer { /// @brief Render block selection lines void renderBlockSelection(); - void renderHands(const Camera& camera, const Assets& assets); + void renderHands(const Camera& camera, const Assets& assets, float delta); /// @brief Render lines (selection and debug) /// @param camera active camera