async void LoadScene(string name, Guid bundleId) { if (bundleId == Guid.Empty) { await UnityEngine.SceneManagement.SceneManager.LoadSceneAsync(_scene.GetSceneName().Result, LoadSceneMode.Additive); _server.NotifySceneLoaded(_clientId, _sceneId, Test.Instance.Username).Wait(); } else { string scene = await RootComponents.Instance.AssetLoader.LoadSceneFromWebAsync(bundleId, name); if (!String.IsNullOrEmpty(scene)) { await SceneManager.LoadSceneAsync(scene, LoadSceneMode.Additive); _server.NotifySceneLoaded(_clientId, _sceneId, Test.Instance.Username).Wait(); } else { _log.Error("Can't load scene:" + name); } } }
public ClientConnection(IConnection server, Guid clientId, Guid sceneId) { _server = server; _clientId = clientId; _sceneId = sceneId; _spawnedObjects = new Dictionary <Guid, IGameObject>(); _scene = _server.RegisterClient(_clientId, _sceneId, CreateObserver <IConnectionObserver>()).Result; string scenename = _scene.GetSceneName().Result; Guid scenebunle = _scene.GetBundleId().Result; UnityMainThreadDispatcher.Instance().Enqueue(() => { LoadScene(scenename, scenebunle); }); // Debug.Log(_scene.GetSceneName().Result + "Name of scnce"); }