From f726702f21e7d497cc906d05d23ceb9fb87d062e Mon Sep 17 00:00:00 2001 From: MihailRis Date: Wed, 4 Mar 2026 20:48:04 +0300 Subject: [PATCH] update substeps calculation scheme --- src/objects/Entities.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/objects/Entities.cpp b/src/objects/Entities.cpp index de1e9796d..6750116df 100644 --- a/src/objects/Entities.cpp +++ b/src/objects/Entities.cpp @@ -281,7 +281,6 @@ void Entities::preparePhysics(float delta) { auto& physics = *level.physics; auto& solidHitboxes = physics.getSolidHitboxesWriteable(); - if (sensorsTickClock.update(delta)) { auto part = sensorsTickClock.getPart(); auto parts = sensorsTickClock.getParts(); @@ -330,7 +329,7 @@ void Entities::updatePhysics(float delta) { bool grounded = hitbox.grounded; float vel = glm::length(prevVel); - int substeps = static_cast(delta * vel * 20); + int substeps = static_cast(delta * (vel + 2.0f) * 20); substeps = std::min(100, std::max(2, substeps)); physics->step(*level.chunks, hitbox, delta, substeps, eid.uid); hitbox.friction = glm::abs(hitbox.gravityScale <= 1e-7f)