| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- using System;
- using System.Collections.Generic;
- namespace ET
- {
- public static class Game
- {
- public static ThreadSynchronizationContext ThreadSynchronizationContext => ThreadSynchronizationContext.Instance;
- public static TimeInfo TimeInfo => TimeInfo.Instance;
-
- public static EventSystem EventSystem => EventSystem.Instance;
- private static Scene scene;
- public static Scene Scene
- {
- get
- {
- if (scene != null)
- {
- return scene;
- }
- scene = EntitySceneFactory.CreateScene(IdGenerater.Instance.GenerateInstanceId(), 0, SceneType.Process, "Process");
- return scene;
- }
- }
- public static ObjectPool ObjectPool => ObjectPool.Instance;
- public static IdGenerater IdGenerater => IdGenerater.Instance;
- public static Options Options => Options.Instance;
- public static List<Action> FrameFinishCallback = new List<Action>();
- public static void Update()
- {
- ThreadSynchronizationContext.Update();
- TimeInfo.Update();
- EventSystem.Update();
- }
-
- public static void LateUpdate()
- {
- EventSystem.LateUpdate();
- }
- public static void FrameFinish()
- {
- foreach (Action action in FrameFinishCallback)
- {
- action.Invoke();
- }
- FrameFinishCallback.Clear();
- }
- public static void Close()
- {
- scene?.Dispose();
- scene = null;
- MonoPool.Instance.Dispose();
- EventSystem.Instance.Dispose();
- IdGenerater.Instance.Dispose();
- }
- }
- }
|