From 2e78769484c0d0ac172ff2e2a088cd9f3b2bd3b4 Mon Sep 17 00:00:00 2001 From: Peter Date: Sun, 26 May 2024 23:18:29 +0200 Subject: [PATCH] fix: start loop if user calls useRenderLoop --- src/composables/useRenderLoop/index.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/composables/useRenderLoop/index.ts b/src/composables/useRenderLoop/index.ts index b43d0901a..554dbcb10 100644 --- a/src/composables/useRenderLoop/index.ts +++ b/src/composables/useRenderLoop/index.ts @@ -40,7 +40,16 @@ onAfterLoop.on(() => { elapsed = clock.getElapsedTime() }) +let startedOnce = false export const useRenderLoop = (): UseRenderLoopReturn => { + if (!startedOnce) { + // NOTE: `useRenderLoop` is not started by default + // in order not to waste user resources. Instead, we'll + // start the loop the first time the user uses + // `useRenderLoop`. + startedOnce = true + resume() + } return { onBeforeLoop: onBeforeLoop.on, onLoop: onLoop.on,