Search Results for

    Show / Hide Table of Contents

    Class AssetUnloader

    Manages the destruction and cleanup of TriLib-loaded assets (e.g., Texture2D, Material, Mesh) associated with a particular GameObject. This component records references to loaded assets in AllocatedObjects and destroys them when the GameObject is destroyed.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    AssetUnloader
    Namespace: TriLibCore
    Assembly: TriLibCore.dll
    Syntax
    public class AssetUnloader : MonoBehaviour

    Fields

    AllocatedObjects

    A list of loaded Unity assets (e.g., meshes, materials, textures) for deallocation. When this component is destroyed, each allocated asset in this list is also destroyed.

    Declaration
    public List<AllocatedObject> AllocatedObjects
    Field Value
    Type Description
    List<AllocatedObject>

    CustomData

    Custom user data that can be used to store information relevant to the loading process (e.g., file paths, metadata, or other contextual objects).

    Declaration
    public object CustomData
    Field Value
    Type Description
    object

    Properties

    HasRegisteredUnloaders

    Indicates whether any AssetUnloader instances are registered globally. If true, at least one AssetUnloader is currently active in the scene.

    Declaration
    public static bool HasRegisteredUnloaders { get; }
    Property Value
    Type Description
    bool

    Id

    The unique identifier for this AssetUnloader instance. Setting this property automatically registers the instance within a global dictionary to track usage counts.

    Declaration
    public int Id { get; set; }
    Property Value
    Type Description
    int
    Remarks

    Each time the Id is set, TriLibCore.AssetUnloader.Register() is called, incrementing or initializing the usage count for that ID. If multiple AssetUnloader instances share the same ID, their references will be counted together until all instances are destroyed.

    Methods

    GetNextId()

    Returns a fresh allocation identifier, incrementing the internal counter to ensure uniqueness for each AssetUnloader.

    Declaration
    public static int GetNextId()
    Returns
    Type Description
    int

    A new, unused allocation identifier.

    Extension Methods

    IObjectExtensions.TryToDispose<T>(object)
    In this article
    Back to top TriLib documentation