Method SwapComponents
SwapComponents(ArchetypeChunk, int, ArchetypeChunk, int)
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. |
int | leftIndex | The index within the |
ArchetypeChunk | rightChunk | The chunk containing the other entity to swap. This chunk can be the same as
the |
int | 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 method creates a sync point, which means that the EntityManager waits for all currently running jobs to complete before swapping the component. No additional jobs can start before the method is finished. A sync point can cause a drop in performance because the ECS framework might not be able to use the processing power of all available cores.