docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class ComponentSystemBase

    A system provides behavior in an ECS architecture.

    Inheritance
    object
    ComponentSystemBase
    SystemBase
    Namespace: Unity.Entities
    Assembly: Unity.Entities.dll
    Syntax
    [RequireDerived]
    public abstract class ComponentSystemBase
    Remarks

    System implementations should inherit SystemBase, which is a subclass of ComponentSystemBase.

    Constructors

    Name Description
    ComponentSystemBase()

    Initializes and returns an instance of a system.

    Properties

    Name Description
    Enabled

    Controls whether this system executes when its OnUpdate function is called.

    EntityManager

    The EntityManager object of the World in which this system exists.

    EntityQueries

    The query objects cached by this system.

    GlobalSystemVersion

    The current change version number in this World.

    LastSystemVersion

    The current version of this system.

    SystemHandle

    The SystemHandle of this system.

    SystemHandleUntyped

    Obsolete. Use SystemHandle instead.

    Time

    Obsolete. Use Time or Time instead.

    World

    The World in which this system exists.

    WorldUpdateAllocator

    Retrieve world update allocator from system state.

    Methods

    Name Description
    GetBufferFromEntity<T>(bool)

    Obsolete. Use GetBufferLookup<T>(bool) instead.

    GetBufferLookup<T>(bool)

    Manually gets a BufferLookup<T> object that can access a DynamicBuffer<T>.

    GetBufferTypeHandle<T>(bool)

    Manually gets the run-time type information required to access an array of buffer components in a chunk.

    GetComponentDataFromEntity<T>(bool)

    Obsolete. Use GetComponentLookup<T>(bool) instead.

    GetComponentLookup<T>(bool)

    Manually gets a dictionary-like container containing all components of type T, keyed by Entity.

    GetComponentTypeHandle<T>(bool)

    Manually gets the run-time type information required to access an array of component data in a chunk.

    GetDynamicComponentTypeHandle(ComponentType)

    Manually gets the run-time type information required to access an array of component data in a chunk.

    GetDynamicSharedComponentTypeHandle(ComponentType)

    Manually gets the run-time type information required to access a shared component data in a chunk.

    GetEntityQuery(NativeArray<ComponentType>)

    Gets the cached query for the specified component types, if one exists; otherwise, creates a new query instance and caches it.

    GetEntityQuery(params ComponentType[])

    Gets the cached query for the specified component types, if one exists; otherwise, creates a new query instance and caches it.

    GetEntityQuery(in EntityQueryBuilder)

    Create an entity query from a query description builder.

    GetEntityQuery(params EntityQueryDesc[])

    Combines an array of query description objects into a single query.

    GetEntityStorageInfoLookup()

    Manually gets an EntityStorageInfoLookup object that can access a EntityStorageInfo.

    GetEntityTypeHandle()

    Manually gets the run-time type information required to access the array of Entity objects in a chunk.

    GetSharedComponentTypeHandle<T>()

    Manually gets the run-time type information required to access a shared component data in a chunk.

    GetSingletonBuffer<T>(bool)

    Gets the value of a singleton buffer component.

    GetSingletonEntity<T>()

    Gets the Entity instance for a singleton.

    GetSingletonRW<T>()

    Gets a reference to the singleton component, for read/write access.

    GetSingleton<T>()

    Gets the value of a singleton component.

    GetStorageInfoFromEntity()

    Obsolete. Use GetEntityStorageInfoLookup() instead.

    HasSingleton<T>()

    Checks whether a singleton component of the specified type exists.

    OnCreate()

    Called when this system is created.

    OnDestroy()

    Called when this system is destroyed.

    OnStartRunning()

    Called before the first call to OnUpdate and when a system resumes updating after being stopped or disabled.

    OnStopRunning()

    Called when this system stops running because no entities match the system's EntityQuery objects or because you change the system Enabled property to false.

    RequireAnyForUpdate(NativeArray<EntityQuery>)

    Provide a set of queries, one of which must match entities for the system to run.

    RequireAnyForUpdate(params EntityQuery[])

    Provide a set of queries, one of which must match entities for the system to run.

    RequireForUpdate(EntityQuery)

    Adds a query that must match entities for the system to run. You can add multiple required queries to a system; all of them must match at least one entity for the system to run.

    RequireForUpdate<T>()

    Require that a specific component exist for this system to run. Also includes any components added to a system. See SystemHandle for more info on that.

    RequireSingletonForUpdate<T>()

    Obsolete. Use RequireForUpdate<T>() instead.

    SetSingleton<T>(T)

    Sets the value of a singleton component.

    ShouldRunSystem()

    Reports whether this system satisfies the criteria to update. This function is used internally to determine whether the system's OnUpdate function can be skipped.

    TryGetSingletonBuffer<T>(out DynamicBuffer<T>)

    Gets the value of a singleton buffer component, and returns whether or not a singleton buffer component of the specified type exists in the World.

    TryGetSingletonEntity<T>(out Entity)

    Gets the singleton Entity, and returns whether or not a singleton Entity of the specified type exists in the World.

    TryGetSingleton<T>(out T)

    Gets the value of a singleton component, and returns whether or not a singleton component of the specified type exists in the World.

    Update()

    Executes the system immediately.

    Extension Methods

    ComponentSystemBaseManagedComponentExtensions.GetSingletonRW<T>(ComponentSystemBase)
    ComponentSystemBaseManagedComponentExtensions.GetSingleton<T>(ComponentSystemBase)
    ComponentSystemBaseManagedComponentExtensions.SetSingleton<T>(ComponentSystemBase, T)
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)