歷史記錄 · 2026-10-26¶
重大重構里程碑¶
2026-10-26 ─ cylinder collider 質量性質座標系修正(issue 001078)¶
tire/roller 與 weapon rotor 的 cylinder collider 擺在 shape 中心並轉到軸向,但交給 Rapier 的來源質心與慣量主軸仍是 part frame 值,Rapier 以 collider-local 解讀,使輪胎軸向慣量只剩 約 0.65 倍、導輪質心偏軸 0.5–1.2 mm。runtime 改在建 cylinder collider 時把質心與主軸換到 collider frame(c′=R⁻¹·(c − shape 中心)、frame′=R⁻¹·frame);凸 hull collider 擺在 part pose,原值不變。新增 hinge body 與 weapon payload body 的 Rapier 讀回測試,對照平行軸合成 期望值。修正改變 canonical determinism 場景的狀態,golden 重基線另待裁決。
2026-10-26 ─ 鉸接輪組被包覆內件只承載質量(issue 001074 延伸研究)¶
公版八車成團時,胎與導輪的 collider 占每車 51–59%,其中胎 Hub 與導輪 InnerSleeve/BearingHousing/
SealRings 完全包在外圈滾動圓柱內,卻仍參與 broad phase、CCD 與 speculative 接觸。derive 在既有內件
退回凸 hull 判定之後,再判定同部件中每個 admitted 點都落在某顆帶 cylinder shape 外圈內(容差
ENCLOSED_PROXY_TOLERANCE_M=10 µm)的 proxy,烘入 contact: "none";admission 逐件重判。runtime
不為這些件建 collider,質量性質換到 hinge body frame、以平行軸定理合成後計入該 body,總質量、
質心與慣量不變;磨耗容量不併入外圈,熱仍以 part 計,磁靶只計建了 collider 的磁性 proxy。八車
world step P50/P95 約減半,heavy 三場完賽率與基線無顯著差;導輪撞牆由隱藏幾何造成的反彈改為
貼牆滑行。公版 tire-01~03 的 Hub 與 roller-01~03 的三件內件皆為只承載質量;determinism golden
場景不受影響。
決策檔:D-20261026-01
2026-10-26 ─ 細分停損計數範圍、脆弱警告門檻、即時包覆報告與段縫閘分格¶
- 細分停損維持世界層計數:D-20261025-01
決定段由「同一車輛」改為世界層:全世界任一車需細分即計數,達門檻時全世界該幀接受初始分段試算。
Rapier 原生
jointConstraintErrors只回傳全世界最大誤差,分車需 vendor 變更或逐關節讀取成本。 觸發時全場同幀精度略降,決定性與公平不受影響;八車可能誤觸發,playtest 觀察後再評估分車。PhysicsEngine.boundedStallDiagnostics()對外提供停損觸發幀數、接受超出容差幀數與最長連續細分幀數。 - 脆弱警告門檻:
PROJECTILE_FRAGILE_WARN_BURST_ENERGY_J由 0.5 改為 1.0 J(公版實測最大撞擊 0.37 J, 依車重上限 500 g 對公版 heavy 339 g 放大、乘 2 倍安全係數約 1.1 J);新增參考值PROJECTILE_FRAGILE_REFERENCE_IMPACT_ENERGY_J(0.37 J),編輯器在每顆彈的估計旁一併顯示。 - 即時包覆報告:physics-manifest 匯出
deriveRollingPartProxies,與 derive 共用同一份 proxy 推導與 包覆判定;tire/roller 的「滾動外圈包覆」報告在編輯當下即顯示,不必先定稿。 - 段縫品質閘分格:B 地面斜向 15°/45° 碰牆前斜跨格線,001078 修正使軌跡在碰縫時與基線分歧,改歸 騎縫格;另增「斜向 15° 不壓縫」與「斜向 30° 不壓縫(替代 45°;45° 在半車道內判準窗不足 60 幀)」, 前提為窗內全部樣本未碰地面縫,守「不碰縫時分段與單顆逐位元同」。B 地面直行 0° 在研究閘 600 幀內 漂移、第 290 幀壓上 x=0 縱向格線後與基線分歧,同樣改歸騎縫格,另增「直行 0° 不壓縫」(兩種模式皆 180 幀)。試算拒絕只計全部執行都還在場上的幀(與地面格判準窗同一判定、基線與分段同規則):A 牆端 的車滑出牆端離場後,拒絕來自旋轉中的輪胎關節、與切分無關;其餘牆格不離場、統計窗等於全程。抬車 (ΔY < 1 cm)改用同一個在場上統計窗(全部格;地面格不截在首次碰牆):A 牆端滑出牆端後失去牆支撐, 側壓使車在地面塊內側傾或越過場地外緣,車心升高,單顆與分段擴大樣本都有超過 1 cm 者,與牆段無關 (issue 001081)。判準數字不變(D-20261021-01)。
2026-10-26 ─ hard CCD 持續接觸改掃核心球(issue 001050;001049、001079、001046 同代)¶
正式 hard CCD 把每幀位移截斷在首次撞擊,滾動接地的車幾乎每幀被截,車速低於指令、軌跡對微擾極敏感。
新 kernel 代(父代 001038,wasm 07d16785)以整合參數共識欄位 ccd_persistent_contact_policy 承載持續
接觸規則:步首已貼在一起的 pair,固定目標先以完整形狀求 TOI、命中異面(≥ 30°)才接受,否則改掃
collider 形狀質心的核心球(半徑取 0.25 × ccd_thickness 與 0.5 × 內切半徑的較小者);動態目標只掃
核心球。設定由 PHYSICS_CCD_PERSISTENT_CONTACT_POLICY = 1 在 bounded profile 後回填,進快照並於
restore 原子驗證。同一代修正 piece-group warm start 換手(反序時切向 world 衝量取反號、力臂對調;
broad phase 移除的 leader cluster 交給新 leader)。旗標關閉時與父代步進逐位元相同(canonical golden
revision-17、公版三場地八車 120 幀逐幀狀態雜湊),快照只多 4 bytes 設定欄位;新 wasm f2afeeba。
runtime 另修 cylinder collider 撞擊面積以 part frame 查表(001079),takeSnapshot 改為純讀取、停用與
退休路徑當下重算質量快取(001046)。穿牆守門 105 次集合 0 次穿過並入常駐單元測試。canonical golden、
conformance 快照雜湊、分段品質閘與效能預算的新值待維護者核可後更新。
決策檔:D-20261026-02