fix(physics): resolve the earliest substep contact
Return exact path progress with each fixed-point line and circle candidate. Evaluate the complete recovered physical object set and apply the nearest contact, matching the selection logic in the original collision dispatcher instead of stopping at the lowest matching object id. This prevents dense assemblies from choosing a later wall or circle merely because its record appears earlier in the table. Test Plan: - `cargo test --all-targets` -- 45 passed - `cargo clippy --all-targets -- -D warnings` -- passed - `cargo build --profile production` -- passed - collision-progress ordering test -- passed - `git diff --cached --check` -- passed
This commit is contained in:
@@ -150,3 +150,8 @@ the associated magnetic gate; there is no recovered 1,500-per-target plus
|
||||
5,000 completion rule. Records 140-147 carry their exact 1,000 through 3,000
|
||||
scores and use the same enter-once contact bit, which clears after the ball
|
||||
leaves their radius.
|
||||
|
||||
The collision scan at `1000:c79c` does not resolve the first matching object id.
|
||||
It retains the smallest path-progress value while traversing all 175 records,
|
||||
then applies that response from the previous position. The Rust fixed-point
|
||||
solver now follows that ordering for recovered type-1 and type-2 objects.
|
||||
|
||||
Reference in New Issue
Block a user