fix(physics): activate collision generations atomically
This commit is contained in:
parent
3e0f3b6206
commit
be94bc9b06
18 changed files with 1402 additions and 80 deletions
|
|
@ -10,6 +10,14 @@ as "delete everything and start over." A partial retail transition port exists:
|
|||
- `TransitionTypes` carries the active `SpherePath`, `CollisionInfo`,
|
||||
transition, step, contact, and partial slide logic.
|
||||
- `PhysicsDataCache` loads GfxObj, Setup, and CellStruct physics data.
|
||||
- Landblock streaming never edits the live collision world incrementally.
|
||||
`PreparedLandblockCollisionGeneration` owns an off-side cache, CellGraph,
|
||||
engine snapshot, buildings, statics, and versioned dynamic-owner refloods;
|
||||
`RuntimePhysicsState.CommitCollisionGeneration` validates freshness and
|
||||
activates the complete generation on the single update thread. A dirty live
|
||||
owner returns to the App cursor for refresh. The old generation remains
|
||||
queryable until that commit. See
|
||||
`docs/research/2026-07-31-atomic-collision-generation.md`.
|
||||
- `ShadowObjectRegistry` gives the resolver a broadphase over nearby objects.
|
||||
- `TerrainSurface` uses triangle-aware terrain contact.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue