ECSOptions Class

Configuration for the hybrid ECS: entity capacity, parallelism, and fixed-timestep tuning.

public class ECSOptions

Inheritance System.Object → ECSOptions

Properties
EnableMultiThreading When true, systems execute in parallel across worker threads.
FixedTimeStepMs Fixed timestep in milliseconds for IFixedUpdateSystem and FixedUpdate(GameTime). Default (~16.667ms) gives 60 steps/s.
InitialEntityCapacity Pre-allocated entity slot count. Avoids resizing during gameplay.
MaxFixedStepsPerFrame Maximum fixed steps per frame. Caps the catch-up loop after long frames (debugger pauses, heavy loads) so the game doesn't freeze. Excess time is discarded.
ParallelEntityThreshold Entity count below which parallel processing falls back to sequential. Lower = more aggressive parallelism (good for CPU-heavy logic); higher = less thread overhead (good for lightweight components).
WorkerThreadCount Worker thread count for parallel execution. null (default) uses System.Environment.ProcessorCount. Only applies when EnableMultiThreading is true.
Methods
GetParallelOptions() Returns a cached System.Threading.Tasks.ParallelOptions instance derived from WorkerThreadCount. The cached instance is automatically invalidated when WorkerThreadCount changes.