refactor(runtime): own projectile simulation
Move projectile component identity, prediction invalidation, spatial worksets, authoritative corrections, and the retail physics step into AcDream.Runtime. Keep App as the DAT-shape and presentation adapter so ACE outcomes and visible behavior remain unchanged.
This commit is contained in:
parent
fce8e7b18e
commit
2aee33569f
19 changed files with 1255 additions and 335 deletions
|
|
@ -1,5 +1,6 @@
|
|||
using AcDream.App.Streaming;
|
||||
using AcDream.App.World;
|
||||
using AcDream.Core.Physics;
|
||||
using AcDream.Runtime.Entities;
|
||||
|
||||
namespace AcDream.App.Tests;
|
||||
|
|
@ -20,6 +21,18 @@ internal static class LiveEntityRuntimeFixture
|
|||
return new LiveEntityRuntime(spatial, resources, lifetime);
|
||||
}
|
||||
|
||||
public static LiveEntityRuntime Create(
|
||||
GpuWorldState spatial,
|
||||
ILiveEntityResourceLifecycle resources,
|
||||
PhysicsEngine physicsEngine,
|
||||
uint firstLocalEntityId = RuntimeEntityDirectory.FirstLocalEntityId)
|
||||
{
|
||||
var lifetime = new RuntimeEntityObjectLifetime(
|
||||
physicsEngine,
|
||||
firstLocalEntityId);
|
||||
return new LiveEntityRuntime(spatial, resources, lifetime);
|
||||
}
|
||||
|
||||
public static LiveEntityRuntime Create(
|
||||
GpuWorldState spatial,
|
||||
ILiveEntityResourceLifecycle resources,
|
||||
|
|
@ -47,4 +60,21 @@ internal static class LiveEntityRuntimeFixture
|
|||
runtimeComponentLifecycle,
|
||||
lifetime);
|
||||
}
|
||||
|
||||
public static LiveEntityRuntime Create(
|
||||
GpuWorldState spatial,
|
||||
ILiveEntityResourceLifecycle resources,
|
||||
ILiveEntityRuntimeComponentLifecycle runtimeComponentLifecycle,
|
||||
PhysicsEngine physicsEngine,
|
||||
uint firstLocalEntityId = RuntimeEntityDirectory.FirstLocalEntityId)
|
||||
{
|
||||
var lifetime = new RuntimeEntityObjectLifetime(
|
||||
physicsEngine,
|
||||
firstLocalEntityId);
|
||||
return new LiveEntityRuntime(
|
||||
spatial,
|
||||
resources,
|
||||
runtimeComponentLifecycle,
|
||||
lifetime);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue