space-game/public
Michael Mainguy e31e25f9e5 Fix physics issues: sleep behavior, center of mass, and input scaling
This commit resolves several physics-related issues that were causing
unexpected behavior in ship and asteroid movement:

**Physics Sleep System**
- Fixed abrupt stops by preventing Havok from putting bodies to sleep
- Added PhysicsActivationControl.ALWAYS_ACTIVE for ship and asteroids
- Made ship sleep behavior configurable via shipPhysics.alwaysActive
- Sleep was causing sudden velocity zeroing at low speeds

**Center of Mass Issues**
- Discovered mesh-based physics calculated offset CoM: (0, -0.38, 0.37)
- Override ship center of mass to (0, 0, 0) to prevent thrust torque
- Applying force at offset CoM was creating unwanted pitch rotation
- Added debug logging to track mass properties

**Input Deadzone Improvements**
- Implemented smooth deadzone scaling (0.1-0.15 range)
- Replaced hard threshold cliff with linear interpolation
- Prevents abrupt control cutoff during gentle inputs
- Added VR mode check to disable keyboard fallback in VR

**Configuration System**
- Added DEFAULT_SHIP_PHYSICS constant as single source of truth
- Added tunable parameters: linearDamping, angularDamping, alwaysActive
- Added fuel consumption rates: linearFuelConsumptionRate, angularFuelConsumptionRate
- Tuned for 1 minute linear thrust, 2 minutes angular thrust at 60Hz
- All physics parameters now persist to localStorage

**Other Fixes**
- Changed orbit center to STATIC motion type (was ANIMATED)
- Fixed linear force application point (removed offset)
- Added ship initial velocity support from level config
- Changed physics update from every 10 frames to every physics tick
- Increased linear input threshold from 0.1 to 0.15

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-24 14:03:32 -06:00
..
assets Implement comprehensive scoring system with star ratings 2025-11-22 06:32:55 -06:00
immersive Add local controller profiles and disable online repository 2025-11-07 11:31:13 -06:00
levels Fix physics issues: sleep behavior, center of mass, and input scaling 2025-11-24 14:03:32 -06:00
systems Add JSON-based level editor with localStorage persistence 2025-10-29 08:24:55 -05:00
8192.webp Initial Commit 2025-02-15 11:19:24 -06:00
asteroid4.glb Update gameplay mechanics, asteroid model, and star base physics 2025-11-03 12:26:25 -06:00
background.mp3 Initial Commit 2025-02-15 11:19:24 -06:00
flare.png Initial Commit 2025-02-15 11:19:24 -06:00
shot2.mp3 Started cleaning up audio, rendering artifacts. 2025-02-16 16:44:18 -06:00
shot.mp3 Started cleaning up audio, rendering artifacts. 2025-02-16 16:44:18 -06:00
song1.mp3 Migrate to AudioEngineV2 and fix Meta Quest 2 controller detection 2025-10-17 13:59:48 -05:00
styles.css Implement hybrid level storage system with JSON-based defaults and configurable orbit constraints 2025-11-11 18:40:01 -06:00
thrust2.mp3 Initial Commit 2025-02-15 11:19:24 -06:00
thrust3.mp3 Started cleaning up audio, rendering artifacts. 2025-02-16 16:44:18 -06:00
thrust4.mp3 Started cleaning up audio, rendering artifacts. 2025-02-16 16:44:18 -06:00
thrust5.mp3 Started cleaning up audio, rendering artifacts. 2025-02-16 16:44:18 -06:00
thrust.mp3 Initial Commit 2025-02-15 11:19:24 -06:00
thust2.mp3 Initial Commit 2025-02-15 11:19:24 -06:00
yehrat.mp3 Initial Commit 2025-02-15 11:19:24 -06:00