docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class DisableAutoCreationAttribute

    Prevents a system from being automatically created and run.

    Inheritance
    object
    Attribute
    DisableAutoCreationAttribute
    Namespace: Unity.Entities
    Assembly: Unity.Entities.dll
    Syntax
    [AttributeUsage(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct, Inherited = false)]
    public sealed class DisableAutoCreationAttribute : Attribute
    Remarks

    By default, all systems (classes derived from ComponentSystemBase or ISystem) are automatically discovered, instantiated, and added to the default World when that World is created.

    Add this attribute to a system class that you do not want created automatically. Note that the attribute is not inherited by any subclasses.

    using Unity.Entities;
    
    [DisableAutoCreation]
    public partial class CustomSystem : SystemBase
    { // Implementation... }

    You can also apply this attribute to an entire assembly to prevent any system class in that assembly from being created automatically. This is useful for test assemblies containing many systems that expect to be tested in isolation.

    To declare an assembly attribute, place it in any C# file compiled into the assembly, outside the namespace declaration:

    using Unity.Entities;
    
    [assembly: DisableAutoCreation]
    namespace Tests{}
    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)