docs.unity.cn
    Show / Hide Table of Contents

    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 leftChunk of the entity and components to swap. Must be in the range [0,leftChunk.Count).

    ArchetypeChunk rightChunk

    The chunk containing the other entity to swap. This chunk can be the same as the leftChunk. It also does not need to be in the same World as leftChunk.

    Int32 rightIndex

    The index within the rightChunk of the entity and components to swap. Must be in the range [0,rightChunk.Count).

    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.

    Back to top Copyright © 2022 Unity Technologies
    Generated by DocFX
    on Wednesday, July 6, 2022
    Terms of use