Update the camera controls by switching from TrackballControls to OrbitControls to eliminate disorienting upside-down view. Add damping for rotation and panning to maintain a similar experience.
Acceptance Criteria:
- Multiple rotations should keep camera up locked (no drifting)
- Damping/inertia should stay fairly similar
Derived Requirement
Ensure that the camera controls use OrbitControls so that the camera's upright orientation is locked during multiple rotations, and that rotation and panning retain damping/inertia behavior comparable to the previous TrackballControls experience.
Test Steps
Test Case 1: Ensure camera up orientation remains locked during multiple rotations
- Navigate to the 3D viewer feature in the Wikipedia interface.
- Click and drag to rotate the camera continuously in multiple full rotations.
- Repeat the rotation in various directions (horizontal, vertical, diagonal).
- ✅❓❌⬜ AC1: The camera does not flip upside-down or drift from its upright orientation at any point during or after multiple rotations.
Test Case 2: Ensure rotation damping/inertia is retained after switching to OrbitControls
- Navigate to the 3D viewer feature in the Wikipedia interface.
- Click and drag to rotate the camera, then release the mouse.
- Observe the camera's behavior immediately after releasing the drag input.
- ✅❓❌⬜ AC2: The camera continues to move briefly after the drag is released, demonstrating damping/inertia behavior comparable to the previous experience.
Test Case 3: Ensure panning damping/inertia is retained after switching to OrbitControls
- Navigate to the 3D viewer feature in the Wikipedia interface.
- Use the appropriate input (e.g., right-click drag or two-finger drag) to pan the camera, then release.
- Observe the camera's behavior immediately after releasing the pan input.
- ✅❓❌⬜ AC3: The camera continues to pan briefly after input is released, demonstrating damping/inertia behavior comparable to the previous experience.
Test Case 4: Ensure zooming functions without damping as an accepted trade-off
- Navigate to the 3D viewer feature in the Wikipedia interface.
- Use the scroll wheel or pinch gesture to zoom in and out.
- Release the zoom input and observe the camera's behavior.
- ✅❓❌⬜ AC4: Zooming responds to input and stops immediately upon release with no inertia, and the zoom function remains fully operational.
QA Results - PROD
| AC | Status | Details |
|---|---|---|
| 1 | ✅ | T419445#11861623 |
| 2 | ✅ | T419445#11861623 |
| 3 | ✅ | T419445#11861623 |
| 4 | ✅ | T419445#11861623 |