diff --git a/src/Builtin/Worlds.cs b/src/Builtin/Worlds.cs index 64f2499..a817c39 100644 --- a/src/Builtin/Worlds.cs +++ b/src/Builtin/Worlds.cs @@ -1,5 +1,12 @@ namespace DCFApixels.DragonECS { + //TODO использовать этот мир для холостых вызовов. чтоб все нулевые ентити стучались в него, так можно попробовать сократить число проверок + //internal sealed class EcsDeathWrold : EcsWorld + //{ + // public EcsDeathWrold(EcsPipeline pipeline) : base(pipeline) { } + //} + + public sealed class EcsDefaultWrold : EcsWorld { public EcsDefaultWrold(EcsPipeline pipeline) : base(pipeline) { } diff --git a/src/EcsGroup.cs b/src/EcsGroup.cs index a4fa31f..4c33ad2 100644 --- a/src/EcsGroup.cs +++ b/src/EcsGroup.cs @@ -10,8 +10,12 @@ namespace DCFApixels.DragonECS { private readonly EcsGroup _source; + #region Constructors [MethodImpl(MethodImplOptions.AggressiveInlining)] public EcsReadonlyGroup(EcsGroup source) => _source = source; + #endregion + + #region Properties public int Count { [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -27,10 +31,14 @@ namespace DCFApixels.DragonECS [MethodImpl(MethodImplOptions.AggressiveInlining)] get => _source.CapacitySparce; } + #endregion + + #region Methods [MethodImpl(MethodImplOptions.AggressiveInlining)] public bool Contains(int entityID) => _source.Contains(entityID); [MethodImpl(MethodImplOptions.AggressiveInlining)] public EcsGroup.Enumerator GetEnumerator() => _source.GetEnumerator(); + #endregion } // не может содержать значение 0 @@ -174,8 +182,6 @@ namespace DCFApixels.DragonECS _sparse[entityID] = 0; } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] private void AddDelayedOp(int entityID, int isAddBitFlag) { diff --git a/src/EcsPool.cs b/src/EcsPool.cs index e82d424..e268a4c 100644 --- a/src/EcsPool.cs +++ b/src/EcsPool.cs @@ -56,7 +56,6 @@ namespace DCFApixels.DragonECS { private readonly int _id; private readonly IEcsWorld _source; - // private readonly EcsGroup _entities; private int[] _mapping;// index = entity / value = itemIndex;/ value = 0 = no entity private T[] _items; //dense diff --git a/src/EcsWorld.cs b/src/EcsWorld.cs index 99a1d67..cb5e07a 100644 --- a/src/EcsWorld.cs +++ b/src/EcsWorld.cs @@ -1,10 +1,7 @@ using System; using System.Collections.Generic; -using System.Collections.ObjectModel; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; -using System.Xml; -using static UnityEditor.Progress; namespace DCFApixels.DragonECS {