The identity a snapshot is valid for (§34).
Deliberately structural, so PhysicsWorld's PhysicsSnapshot — and a ReplayRecording itself — both satisfy it without either package importing the other.
PhysicsWorld
PhysicsSnapshot
Readonly
PhysicsSolverAdapter.name, e.g. "rapier2d".
PhysicsSolverAdapter.name
"rapier2d"
PhysicsSolverAdapter.version.
PhysicsSolverAdapter.version
The identity a snapshot is valid for (§34).
Deliberately structural, so
PhysicsWorld'sPhysicsSnapshot— and a ReplayRecording itself — both satisfy it without either package importing the other.