What problem does it solve?
Prevents structural changes made inside scheduled DOTS jobs from causing crashes, one-frame delays, duplicated mutations, or non-deterministic replays by routing all ECB writes to the correct recorder/playback phase.
Core Features & Use Cases
- Playback-phase selection: Chooses the right Begin*/End* EntityCommandBufferSystem based on which system will read the post-change state.
- Deterministic ParallelWriter sorting: Enforces
[ChunkIndexInQuery] sort keys for stable playback ordering when using AsParallelWriter().
- Recording vs playback correctness: Establishes when to record, when playback happens automatically, and which anti-patterns to avoid for safe, single-frame structural updates.
- Practical job patterns: Provides senior-grade templates for
IJobEntity/IJobChunk ECB usage, including Enabled flips and entity lifecycle operations.
Quick Start
Use dots-ecb-orchestration to record your AddComponent/RemoveComponent/Instantiate/DestroyEntity or Enabled changes inside IJobEntity jobs and let the appropriate ECB system play them back at the phase your readers need.