Reset navigation state when pointer lock is lost in first-person controller

This commit is contained in:
2026-04-27 19:33:48 +02:00
parent 32510aa8a7
commit 711d53969d

View File

@@ -486,8 +486,16 @@ export class FirstPersonNavigationController implements NavigationController {
return;
}
const wasPointerLocked = this.pointerLocked;
const pointerLocked =
document.pointerLockElement === this.context.domElement;
if (wasPointerLocked && !pointerLocked) {
this.pressedKeys.clear();
this.jumpPressed = false;
this.jumpHoldRemainingMs = 0;
}
this.pointerLocked = pointerLocked;
this.context.setRuntimeMessage(
pointerLocked