refactor(app): key live projections by runtime identity
Move materialized live-object sidecars and presentation worksets to exact RuntimeEntityKey ownership. Runtime remains the only GUID/incarnation/local-ID authority while hydration, animation, effects, lights, equipped children, renderer resources, visibility, liveness, and teardown resolve exact projection identities. Preserve synchronous callbacks, local-ID allocation order, and current rendering behavior.
This commit is contained in:
parent
e18df84437
commit
420e5eea70
73 changed files with 2939 additions and 1715 deletions
|
|
@ -501,13 +501,15 @@ public sealed class SelectionInteractionControllerTests
|
|||
public void OldRemovalClearsCapturedPickupButDoesNotClearReplacementSelection()
|
||||
{
|
||||
var h = new Harness();
|
||||
h.SetApproach(closeRange: true, localEntityId: 101u);
|
||||
var oldRecord = LiveEntityTestFixture.CreateExactProjectionRecord(
|
||||
Spawn(Target, instance: 1));
|
||||
uint localEntityId = oldRecord.LocalEntityId!.Value;
|
||||
h.SetApproach(closeRange: true, localEntityId: localEntityId);
|
||||
h.Selection.Select(Target, SelectionChangeSource.World);
|
||||
Assert.True(h.Items.PlaceWorldItemInBackpack(Target));
|
||||
var oldRecord = new LiveEntityRecord(Spawn(Target, instance: 1));
|
||||
oldRecord.WorldEntity = new WorldEntity
|
||||
{
|
||||
Id = 101u,
|
||||
Id = localEntityId,
|
||||
ServerGuid = Target,
|
||||
SourceGfxObjOrSetupId = 0x0200_0001u,
|
||||
Position = Vector3.Zero,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue