From 6b68c14321034cef9bc6a2154eee1281f60cf200 Mon Sep 17 00:00:00 2001 From: ALEXTANG <574809918@qq.com> Date: Mon, 8 Aug 2022 17:20:24 +0800 Subject: [PATCH] Update EntitySystem.cs --- Assets/TEngine/Runtime/Entity/EntitySystem.cs | 38 ++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/Assets/TEngine/Runtime/Entity/EntitySystem.cs b/Assets/TEngine/Runtime/Entity/EntitySystem.cs index 127c60e9..6596c72c 100644 --- a/Assets/TEngine/Runtime/Entity/EntitySystem.cs +++ b/Assets/TEngine/Runtime/Entity/EntitySystem.cs @@ -47,7 +47,7 @@ namespace TEngine.EntityModule internal void RemoveEntity(Entity entity) { - Entities.Remove(entity); + Entities.Buckets[entity.Index] = false; } private T Get() where T : EcsObject, new() @@ -135,6 +135,42 @@ namespace TEngine.EntityModule }); } } + + public void FixedUpdate() + { + int count = Entities.Count; + for (int i = 0; i < count; i++) + { + if (!Entities.Buckets[i]) + { + continue; + } + + if (!Entities[i].CanFixedUpdate) + { + continue; + } + Entities[i].FixedUpdate(); + } + } + + public void LateUpdate() + { + int count = Entities.Count; + for (int i = 0; i < count; i++) + { + if (!Entities.Buckets[i]) + { + continue; + } + + if (!Entities[i].CanLateUpdates) + { + continue; + } + Entities[i].LateUpdate(); + } + } #endregion #region Dispose