mirror of
https://github.com/DCFApixels/DragonECS.git
synced 2025-09-18 01:44:35 +08:00
Update EcsPool.cs
This commit is contained in:
parent
48e02602c3
commit
6f08b7a107
@ -48,6 +48,7 @@ namespace DCFApixels.DragonECS
|
|||||||
//private int[] _denseEntitiesDelayed;
|
//private int[] _denseEntitiesDelayed;
|
||||||
private int[] _table;
|
private int[] _table;
|
||||||
private int _denseEntitiesDelayedCount = 0;
|
private int _denseEntitiesDelayedCount = 0;
|
||||||
|
private int _denseEntitiesDelayedPtr = 0;
|
||||||
private bool _isDenseEntitiesDelayedValid = false;
|
private bool _isDenseEntitiesDelayedValid = false;
|
||||||
private int _recycledCount = 0;
|
private int _recycledCount = 0;
|
||||||
|
|
||||||
@ -342,12 +343,12 @@ namespace DCFApixels.DragonECS
|
|||||||
{
|
{
|
||||||
if (_isDenseEntitiesDelayedValid) { return; }
|
if (_isDenseEntitiesDelayedValid) { return; }
|
||||||
//_denseEntitiesDelayedCount = 1;
|
//_denseEntitiesDelayedCount = 1;
|
||||||
_denseEntitiesDelayedCount = 1 + _capacity;
|
_denseEntitiesDelayedCount = 1 | _capacity;
|
||||||
//_denseEntitiesDelayed[0] = 0;
|
//_denseEntitiesDelayed[0] = 0;
|
||||||
_table[_capacity] = 0;
|
_table[_capacity] = 0;
|
||||||
_recycledCount = 0;
|
_recycledCount = 0;
|
||||||
//for (int i = 1, jRight = _capacity + _itemsCount + 1; _denseEntitiesDelayedCount <= _itemsCount; i++)
|
//for (int i = 1, jRight = _capacity + _itemsCount + 1; _denseEntitiesDelayedCount <= _itemsCount; i++)
|
||||||
for (int i = 1, jRight = _capacity + _itemsCount + 1, max = _itemsCount + _capacity; _denseEntitiesDelayedCount <= max; i++)
|
for (int i = 1, jRight = _itemsCount + 1 + _capacity, max = _itemsCount | _capacity; _denseEntitiesDelayedCount <= max; i++)
|
||||||
{
|
{
|
||||||
//if (_sparseEntities[i] == 0)
|
//if (_sparseEntities[i] == 0)
|
||||||
if (_table[i] == 0)
|
if (_table[i] == 0)
|
||||||
@ -423,14 +424,14 @@ namespace DCFApixels.DragonECS
|
|||||||
{
|
{
|
||||||
_recycledCount--;
|
_recycledCount--;
|
||||||
//result = _denseEntitiesDelayed[_denseEntitiesDelayedCount];
|
//result = _denseEntitiesDelayed[_denseEntitiesDelayedCount];
|
||||||
result = _table[_denseEntitiesDelayedCount + _capacity];
|
result = _table[_denseEntitiesDelayedCount | _capacity];
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
result = _denseEntitiesDelayedCount;
|
result = _denseEntitiesDelayedCount;
|
||||||
}
|
}
|
||||||
//_denseEntitiesDelayed[_denseEntitiesDelayedCount] = entityID;
|
//_denseEntitiesDelayed[_denseEntitiesDelayedCount] = entityID;
|
||||||
_table[_denseEntitiesDelayedCount + _capacity] = entityID;
|
_table[_denseEntitiesDelayedCount | _capacity] = entityID;
|
||||||
_itemsCount++;
|
_itemsCount++;
|
||||||
_denseEntitiesDelayedCount++;
|
_denseEntitiesDelayedCount++;
|
||||||
|
|
||||||
@ -468,8 +469,9 @@ namespace DCFApixels.DragonECS
|
|||||||
}
|
}
|
||||||
_table = newTable;
|
_table = newTable;
|
||||||
|
|
||||||
_denseEntitiesDelayedCount = 0;
|
|
||||||
_capacity = newSize;
|
_capacity = newSize;
|
||||||
|
_denseEntitiesDelayedCount = 0;
|
||||||
|
//_denseEntitiesDelayedPtr = _capacity;
|
||||||
_isDenseEntitiesDelayedValid = false;
|
_isDenseEntitiesDelayedValid = false;
|
||||||
UpdateDenseEntities();
|
UpdateDenseEntities();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user