IEnumerator Start()
        {
            //默认不销毁
            DontDestroyOnLoad(gameObject);

            #region Module
            Event        = GameFrameworkMode.GetModule <EventManager>();
            State        = GameFrameworkMode.GetModule <GameStateManager>();
            Node         = GameFrameworkMode.GetModule <NodeManager>();
            Resource     = GameFrameworkMode.GetModule <ResourceManager>();
            UI           = GameFrameworkMode.GetModule <UIManager>();
            WebRequest   = GameFrameworkMode.GetModule <WebRequestManager>();
            Audio        = GameFrameworkMode.GetModule <AudioManager>();
            Localization = GameFrameworkMode.GetModule <LocalizationManager>();
            Setting      = GameFrameworkMode.GetModule <SettingManager>();
            System       = GameFrameworkMode.GetModule <SystemManager>();
            Network      = GameFrameworkMode.GetModule <NetworkManager>();
            Pool         = GameFrameworkMode.GetModule <PoolManager>();
            #endregion

            #region resource
            Resource.ResUpdateType = ResUpdateType;
            Resource.ResUpdatePath = ResUpdatePath;
            Resource.LocalPathType = LocalPathType;

            //添加对象池管理器
            GameObject gameObjectPoolHelper = new GameObject("IGameObjectPoolHelper");
            gameObjectPoolHelper.transform.SetParent(transform);
            Resource.SetGameObjectPoolHelper(gameObjectPoolHelper.AddComponent <GameObjectPoolHelper>());
            #endregion

            #region auido
            //设置音频播放
            GameObject audioPlayer = new GameObject("AudioSourcePlayer");
            audioPlayer.transform.SetParent(transform);
            //添加AduioSource
            Audio.SetDefaultAudioSource(audioPlayer.AddComponent <AudioSource>(), audioPlayer.AddComponent <AudioSource>(),
                                        audioPlayer.AddComponent <AudioSource>());
            #endregion

            #region WebRequest
            //设置帮助类
            GameObject webRequestHelper = new GameObject("IWebRequestHelper");
            webRequestHelper.transform.SetParent(transform);
            GameObject webDownloadHelper = new GameObject("IWebDownloadMonoHelper");
            webDownloadHelper.transform.SetParent(transform);
            WebRequest.SetWebRequestHelper(webRequestHelper.AddComponent <WebRquestMonoHelper>());
            WebRequest.SetWebDownloadHelper(webDownloadHelper.AddComponent <WebDownloadMonoHelper>());
            #endregion

            #region Setting
            GameObject debugHelper = transform.Find("[Graphy]").gameObject;
            Setting.SetDebuger(debugHelper);
            Setting.DebugEnable = DebugEnable;
            #endregion

            #region state
            //开启整个项目的流程
            Assembly = typeof(GameMode).Assembly;
            State.CreateContext(Assembly);
            yield return(new WaitForEndOfFrame());

            State.SetStateStart();
            #endregion
        }