docs.unity3d.com
    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.

    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.

    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 © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023