v1.4.0 — Renderer idles when nothing changes (overheating fix)
Fixes high CPU/GPU usage and laptop overheating while a renderer is running. A performance trace showed the render loop pinned at the display's full refresh rate on a completely static scene. The loop now idles when nothing is changing.
Changes
- Event-driven animated textures. Water/lava/fire/etc. no longer force continuous full-rate rendering. The scene now redraws only on the tick an animation frame actually advances (~10fps), and idles to 0fps on a static view. Added a new
enableAnimatedTexturesoption. - Idle render loop slow-polls. When there is nothing to draw, the loop backs off from
requestAnimationFrame(display refresh) to a slowsetTimeoutpoll atidleFPS, letting the GPU and the browser's frame pipeline go quiet. Any interaction (invalidate(), controls, pointer, resize, load) wakes it instantly.
Migration
- Animated textures are now off by default. Pass
enableAnimatedTextures: trueto re-enable them — they are cheap now that animation is event-driven.