After much google searching, the only forums I could find were from 2018 when the way to create and add systems to worlds were different! I am not sure If I am doing something wrong but no systems are added to my world!
private void Awake()
{
cellSimulationWorld = new CellSimulationWorld("Cell Simulation World");
cellSimulationWorld.GetOrCreateSystem<UpdateWorldTimeSystem>();
World.DefaultGameObjectInjectionWorld = cellSimulationWorld;
//Start Systems
var initializationSystemGroup = cellSimulationWorld.GetOrCreateSystem<InitializationSystemGroup>();
initializationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<BeginInitializationEntityCommandBufferSystem>());
initializationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<EndInitializationEntityCommandBufferSystem>());
//update
var simulationSystemGroup = cellSimulationWorld.GetOrCreateSystem<SimulationSystemGroup>();
simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellBoundsSystem>());
simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellBoundsSystem>());
simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellVelocitySystem>());
simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellHungerSystem>());
simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellPropertiesSystem>());
simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<CellStateSystem>());
simulationSystemGroup.AddSystemToUpdateList(cellSimulationWorld.GetOrCreateSystem<NeuralNetworkSystem>());
//Late update / rendering
var presentationSystemGroup = cellSimulationWorld.GetOrCreateSystem<PresentationSystemGroup>();
initializationSystemGroup.SortSystems();
simulationSystemGroup.SortSystems();
presentationSystemGroup.SortSystems();
}
CellSimulationWorlds is just a class that is derived from World.
When I play, the world looks like this: