Browse Source

only change camera.target for flyMode and pointerLock

Alexander Rose 1 year ago
parent
commit
f4eb509887
2 changed files with 2 additions and 3 deletions
  1. 1 0
      CHANGELOG.md
  2. 1 3
      src/mol-canvas3d/controls/trackball.ts

+ 1 - 0
CHANGELOG.md

@@ -7,6 +7,7 @@ Note that since we don't clearly distinguish between a public and private interf
 ## [Unreleased]
 
 - Fix return type of `State.tryGetCellData`
+- Don't change camera.target unless flyMode or pointerLock are enabled
 
 ## [v3.42.0] - 2023-11-05
 

+ 1 - 3
src/mol-canvas3d/controls/trackball.ts

@@ -389,9 +389,7 @@ namespace TrackballControls {
             if (keyState.moveForward === 1) {
                 Vec3.normalize(moveDir, moveEye);
                 Vec3.scaleAndSub(camera.position, camera.position, moveDir, moveSpeed);
-                const dt = Vec3.distance(camera.target, camera.position);
-                const ds = Vec3.distance(scene.boundingSphereVisible.center, camera.position);
-                if (p.flyMode || input.pointerLock || (dt < minDistance && ds < camera.state.radiusMax)) {
+                if (p.flyMode || input.pointerLock) {
                     Vec3.sub(camera.target, camera.position, moveEye);
                 }
             }