refactor(physics #145): Slice 1 — rename Frame->CellFrame to avoid DatReaderWriter.Types.Frame collision
The new value type collided with DatReaderWriter.Types.Frame (used in physics-adjacent code like ShadowShapeBuilder), which the structural fix (per-file using-aliases across 6 files) would have re-incurred in every later physics slice. Renamed the TYPE to CellFrame; the Position.Frame MEMBER keeps retail's name. Restored the 5 alias-only files to their pre-Slice-1 state; synced spec + plan. Core 1522 passed / 0 failed. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
438bb681a5
commit
c980763322
8 changed files with 51 additions and 47 deletions
|
|
@ -59,16 +59,19 @@ boundary crossing.
|
|||
### 3.1 New value types (`AcDream.Core.Physics`)
|
||||
|
||||
```csharp
|
||||
public readonly record struct Frame(Vector3 Origin, Quaternion Orientation);
|
||||
// Type named CellFrame (retail "Frame") to avoid colliding with
|
||||
// DatReaderWriter.Types.Frame, which is used in physics-adjacent code.
|
||||
public readonly record struct CellFrame(Vector3 Origin, Quaternion Orientation);
|
||||
// Origin is LOCAL to ObjCellId's cell:
|
||||
// outdoor → Origin.X/Y ∈ [0,192) within the landblock; Origin.Z = height.
|
||||
// indoor → Origin is the EnvCell-relative placement the BSP path already uses.
|
||||
|
||||
public readonly record struct Position(uint ObjCellId, Frame Frame);
|
||||
public readonly record struct Position(uint ObjCellId, CellFrame Frame); // member keeps retail's name
|
||||
```
|
||||
|
||||
One `Position` type covers indoor and outdoor (retail uniformity). `PhysicsBody.Position` becomes a
|
||||
`Position` and is **the source of truth.**
|
||||
`Position` and is **the source of truth.** (The value type is `CellFrame`; the `Position.Frame` member
|
||||
keeps retail's name. `Frame` collided with `DatReaderWriter.Types.Frame` — renamed during Slice 1.)
|
||||
|
||||
### 3.2 The seam: `_liveCenter` is render-only
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue