protected override void OnCreate() { loadedscenes = new Dictionary <Scenes, SceneInstance>(); cacheScenes = new FixedQueue <SceneInstance>(CacheSize); loadingScenes = new Dictionary <Scenes, IObservable <SceneInstance> >(); unloadingScenes = new Dictionary <Scenes, IObservable <Unit> >(); history = new List <ISceneArgument>(); waitEntityIds = new HashSet <int>(); // キャッシュ許容数を超えたらアンロード. cacheScenes.OnExtrudedAsObservable() .Subscribe(x => UnloadCacheScene(x)) .AddTo(Disposable); }