Method SwapComponents
SwapComponents(ArchetypeChunk, Int32, ArchetypeChunk, Int32)
Swaps the components of two entities.
Declaration
public void SwapComponents(ArchetypeChunk leftChunk, int leftIndex, ArchetypeChunk rightChunk, int rightIndex)
Parameters
Type | Name | Description |
---|---|---|
ArchetypeChunk | leftChunk | A chunk containing one of the entities to swap. |
Int32 | leftIndex | The index within the |
ArchetypeChunk | rightChunk | The chunk containing the other entity to swap. This chunk can be the same as
the |
Int32 | rightIndex | The index within the |
Remarks
The entities must have the same components. However, this function can swap the components of entities in different worlds, so they do not need to have identical archetype instances.
Important: This function creates a sync point, which means that the EntityManager waits for all currently running Jobs to complete before swapping the components and no additional Jobs can start before the function is finished. A sync point can cause a drop in performance because the ECS framework may not be able to make use of the processing power of all available cores.