From 370090556e0de747c91b6a6c2d500470bd19b204 Mon Sep 17 00:00:00 2001 From: AlaricBaraou Date: Thu, 25 Dec 2025 23:10:13 +0800 Subject: [PATCH] prevent elapsedTime from being reset unescessarily --- packages/fiber/src/core/store.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/fiber/src/core/store.ts b/packages/fiber/src/core/store.ts index a677a36a11..39bc77424b 100644 --- a/packages/fiber/src/core/store.ts +++ b/packages/fiber/src/core/store.ts @@ -253,12 +253,13 @@ export const createStore = ( const clock = get().clock // if frameloop === "never" clock.elapsedTime is updated using advance(timestamp) - clock.stop() - clock.elapsedTime = 0 + if (frameloop === 'never') { + clock.stop() + clock.elapsedTime = 0 + } - if (frameloop !== 'never') { + if (frameloop !== 'never' && !clock.running) { clock.start() - clock.elapsedTime = 0 } set(() => ({ frameloop })) },