Skip to content

refactor(simulation): isolate per-scene world state - #26

Merged
czlin7 merged 1 commit into
developfrom
refactor/simulation-world
Sep 15, 2026
Merged

czlin7 merged 1 commit into
developfrom
refactor/simulation-world

Conversation

@czlin7

@czlin7 czlin7 commented Sep 15, 2026

Copy link
Copy Markdown
Owner

Summary

  • introduce SimulationWorld as the owner of entity, component, and system managers
  • move simulation system registration and update orchestration out of SimulationEngine / Scene_Simulation
  • make EntityManager dependencies explicit non-null references
  • remove unused per-frame spatial-hash work and stale ECS dependencies from the engine/scene layers

Why

This separates application infrastructure from simulation state so each simulation scene owns an isolated world instead of sharing mutable ECS state through SimulationEngine.

Validation

  • local Debug build completed successfully
  • foundation tests passed
  • application smoke-tested through menu, simulation load, entity movement, return to menu, and reopening simulation

Move ECS state ownership out of SimulationEngine and into a dedicated SimulationWorld owned by each simulation scene.

Centralize entity maintenance and system execution in SimulationWorld, make EntityManager dependencies non-null references, remove unused spatial-hash work, and clean up related dependencies.
@czlin7
czlin7 merged commit e409fa6 into develop Sep 15, 2026
3 checks passed
@czlin7
czlin7 deleted the refactor/simulation-world branch September 15, 2026 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant