private void _ProcessScenes(List <ISceneLoadingProgress> progresses) { var service = _sceneServiceFilter.Single().SceneService; foreach (var progress in progresses) { var controller = service.GetLoadedSceneController(progress); _InitSceneController(controller, progress.Config); } }
public void Run() { if (_loadScenesFilter.IsEmpty()) { return; } var sceneService = _sceneServiceFilter.Single().SceneService; foreach (var idx in _loadScenesFilter) { ref var loadScenes = ref _loadScenesFilter.Get1(idx); ref var activeLoadingScenes = ref World.NewEntity().Get <ActiveLoadingScenesComponent>();
private void _MarkRemoved() { if (_unloadingScenesFilter.IsEmpty()) { return; } var service = _serviceFilter.Single().SceneService; foreach (var idx in _unloadingScenesFilter) { _unloadingScenesFilter.GetEntity(idx).Get <RemoveEntityComponent>(); var controller = _unloadingScenesFilter.Get1(idx).Scene; service.Unload(controller); controller.Dispose(); } }
public void Run() { if (_filterDelay.IsEmpty()) { return; } var time = _filterTime.Single(); foreach (var index in _filterDelay) { var delay = _filterDelay.Get1(index); delay.Frames--; delay.Milliseconds -= time.TimeStep; if (delay.Frames <= 0 && delay.Milliseconds <= 0) { _filterDelay.GetEntity(index).Del <DelayComponent>(); } } }