docs.unity3d.com
    Show / Hide Table of Contents

    Class TimeBudgetPerFrameDeferAgent

    Claims a certain fraction of the target frame time and keeps track of whether this time frame was surpassed.

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    TimeBudgetPerFrameDeferAgent
    Inherited Members
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(String, Single)
    MonoBehaviour.InvokeRepeating(String, Single, Single)
    MonoBehaviour.CancelInvoke(String)
    MonoBehaviour.IsInvoking(String)
    MonoBehaviour.StartCoroutine(String)
    MonoBehaviour.StartCoroutine(String, Object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(String)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(Object)
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, Component)
    Component.TryGetComponent<T>(T)
    Component.GetComponent(String)
    Component.GetComponentInChildren(Type, Boolean)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(Boolean)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, Boolean)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(Boolean)
    Component.GetComponentsInChildren<T>(Boolean, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, Boolean)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(Boolean)
    Component.GetComponentsInParent<T>(Boolean, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(String)
    Component.SendMessageUpwards(String, Object, SendMessageOptions)
    Component.SendMessageUpwards(String, Object)
    Component.SendMessageUpwards(String)
    Component.SendMessageUpwards(String, SendMessageOptions)
    Component.SendMessage(String, Object)
    Component.SendMessage(String)
    Component.SendMessage(String, Object, SendMessageOptions)
    Component.SendMessage(String, SendMessageOptions)
    Component.BroadcastMessage(String, Object, SendMessageOptions)
    Component.BroadcastMessage(String, Object)
    Component.BroadcastMessage(String)
    Component.BroadcastMessage(String, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(Object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, Boolean)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, Boolean)
    Object.Destroy(Object, Single)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, Boolean)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, Single)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectOfType<T>()
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.ToString()
    Object.name
    Object.hideFlags
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: GLTFast
    Syntax
    [DefaultExecutionOrder(-10)]
    public class TimeBudgetPerFrameDeferAgent : MonoBehaviour, IDeferAgent

    Methods

    BreakPoint()

    Conditional yield. May continue right away or yield once, based on time.

    Declaration
    public async Task BreakPoint()
    Returns
    Type Description
    Task

    If ShouldDefer() returns true, returns Task.Yield(). Otherwise returns sync

    Implements
    IDeferAgent.BreakPoint()

    BreakPoint(Single)

    Conditional yield. May continue right away or yield once, based on time and duration.

    Declaration
    public async Task BreakPoint(float duration)
    Parameters
    Type Name Description
    Single duration

    Predicted duration of upcoming processing in seconds

    Returns
    Type Description
    Task

    If ShouldDefer(Single) returns true, returns Task.Yield(). Otherwise returns sync

    Implements
    IDeferAgent.BreakPoint(Single)

    SetFrameBudget(Single)

    Defers work to the next frame if a fix time budget is used up.

    Declaration
    public void SetFrameBudget(float newFrameBudget = 0.5F)
    Parameters
    Type Name Description
    Single newFrameBudget

    Per-frame time budget as fraction of the targeted frame time

    ShouldDefer()

    This will be called at various points in the loading procedure.

    Declaration
    public bool ShouldDefer()
    Returns
    Type Description
    Boolean

    True if the remaining work of the loading procedure should be deferred to the next frame/Update loop invocation. False if work can continue.

    Implements
    IDeferAgent.ShouldDefer()

    ShouldDefer(Single)

    Indicates if upcoming work should be deferred to the next frame.

    Declaration
    public bool ShouldDefer(float duration)
    Parameters
    Type Name Description
    Single duration

    Predicted duration of upcoming processing in seconds

    Returns
    Type Description
    Boolean

    True if the remaining work of the loading procedure should be deferred to the next frame/Update loop invocation. False if work can continue.

    Implements
    IDeferAgent.ShouldDefer(Single)
    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