SwapComponents(ArchetypeChunk, int, ArchetypeChunk, int)
Swaps the components of two entities.
Read time 1 minuteLast updated 3 days ago
Definition
- Type: Method
- Namespace: Unity.Entities
- Assembly: UnityEngine.EntitiesModule
public void SwapComponents(ArchetypeChunk leftChunk, int leftIndex, ArchetypeChunk rightChunk, int rightIndex)
Parameters
A chunk containing one of the entities to swap.
The index within the of the entity and components to swap. Must be in the range [0,leftChunk.Count).
leftChunkThe chunk containing the other entity to swap. This chunk can be the same as the . It also does not need to be in the same World as .
leftChunkleftChunkThe index within the of the entity and components to swap. Must be in the range [0,rightChunk.Count).
rightChunkRemarks
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.