跳轉到

D-20260807-02|公版起跑扭矩與極速衝量鉗制

背景與驅動力

公版 24 個零件與三條賽道首次以正式 Editor 成品進行端到端賽事測試後,最弱的 speed 整車只有約 125.4 W、215 g,無法由靜止克服 box collider 的滾阻近似與 7.38% 最大起跑坡; control 車在平地也僅緩慢移動。修正 compound collider 掛載位姿後,問題仍可穩定重現, 確認剩餘缺口是驅動校準,不是資產路徑、姿態或散熱問題。

原本只在 forward_speed < derived_top_speed 時施加完整扭矩 impulse。單純提高扭矩常數雖能 起步,卻會在最後一幀跨越理論極速,讓高功率測試車明顯超速,因此扭矩與極速邊界必須一併 定義。

考慮過的選項

  • 只降低所有 collider 的摩擦:會同時改變碰撞、側滑與場地接觸,且掩蓋馬達常數未以正式 資產校準的問題,否決。
  • 只提高 K_TORQUE_FROM_W、保留布林極速門:可起步但單幀 overshoot,否決。
  • 提高扭矩常數,並以車重與剩餘速度差限制每幀 impulse(採納)。

決定

  • K_TORQUE_FROM_W0.00003 校準為 0.0002 N·m/W
  • 每幀驅動衝量定為 min((derived_torque_nm / wheel_radius_m) × dt, total_mass_kg × (derived_top_speed_mps - forward_speed_mps)); 速度已達上限時為 0。這使提高起跑扭矩不會讓該幀跨越 derived top speed。
  • box 期 ROLLING_FRICTION_APPROX = 0.05 保持不變;待真輪軸/接觸模型落地時另開校準, 不在本次藉由全域降摩擦改寫操控。
  • box 期尚無輪胎 joint/接觸牽引求解器;fluid sensor 命中 grip_losssticky 時,取最小 grip_modifier,同時縮放可傳遞扭矩與地表可達前向速度。sticky 既有的每幀速度衰減仍 獨立套用。這避免提高起跑扭矩後每幀立刻補回油面衰減,也不把 velocity_decay_per_sec 偷換成極速上限。
  • 校準門檻固定為:正確掛載的 control 12 件整車在平面 4 秒位移大於 0.25 m;最弱 speed 12 件整車由靜止在 7.38% 起跑坡 6 秒正向位移大於 0.25 m;800 W 基準車仍不得超過 derived top speed 的 10% 測試容差。

後果與影響

合法公版配置能在三條正式賽道的起跑條件下離開起點,且高扭矩不再以離散 timestep 穿越 極速邊界。代價是 VehicleSim 必須保留總質量以計算 impulse cap;這是物理共識行為變更, 主 repo 與 pinning vendored constants/interfaces 必須同步,並由確定性與 rollback 測試覆蓋。 水/油 sensor 在簡化 drivetrain 下也會穩定降低前向速度;測試必須在仍接觸地板時量測車體 前向分量,不得把越界後的自由落體三維速率當成賽車極速。