Stage is high level concept of a world. A stage will own:
Its scene
An instance of the ECS (either new Registry or some kind of sharding in main ECS)
Box2D world instance (make multiple types of stages for each scene type)
More per-level stuff?
All interfaces for entity creation which take an Engine should instead take a Stage. Follow the ScenePool approach for managing stages. The Player concept from #206 should be updated to include a stage stack.
Open questions:
How to handle events? Put stage info in events that need it? Shard event dispatcher per-stage?
How to handle systems? Have each system update all active stage ECS instances? Shard ECS?
Stage is high level concept of a world. A stage will own:
All interfaces for entity creation which take an Engine should instead take a Stage. Follow the ScenePool approach for managing stages. The Player concept from #206 should be updated to include a stage stack.
Open questions: