docs.unity3d.com
    Show / Hide Table of Contents

    Struct PerformanceDataRecord

    The performance data record stores all information about the thermal and performance status and uses it to deliver it from the provider subsystem to Adaptive Performance for further processing.

    Namespace: UnityEngine.AdaptivePerformance.Provider
    Syntax
    public struct PerformanceDataRecord

    Properties

    ChangeFlags

    A bitset of features which indicate if their value changed in the last frame or at startup. Unsupported features will never change. Fields not changing always have valid data as long as its capability is supported.

    Declaration
    public Feature ChangeFlags { readonly get; set; }
    Property Value
    Type Description
    Feature

    Bitset

    CpuFrameTime

    The time in seconds spent by the CPU for rendering the last complete frame. Has changed when CpuFrameTime bit is set in ChangeFlags.

    Declaration
    public float CpuFrameTime { readonly get; set; }
    Property Value
    Type Description
    Single

    CpuPerformanceLevel

    The currently active CPU performance level. This is typically the value previously set with SetPerformanceLevel(Int32, Int32) once the levels are successfully applied. Adaptive performance may also change this level on its own. This typically happens when the device is thermal throttling or when SetPerformanceLevel(Int32, Int32) failed. CPU performance level has a value in the range of [MinCpuPerformanceLevel, MaxCpuPerformanceLevel] or UnknownPerformanceLevel. A value of UnknownPerformanceLevel means that Adaptive Performance took control of performance levels. CPU performance level has changed when CpuPerformanceLevel bit is set in ChangeFlags.

    Declaration
    public int CpuPerformanceLevel { readonly get; set; }
    Property Value
    Type Description
    Int32

    GpuFrameTime

    The time in seconds spent by the GPU for rendering the last complete frame. Has changed when GpuFrameTime bit is set in ChangeFlags.

    Declaration
    public float GpuFrameTime { readonly get; set; }
    Property Value
    Type Description
    Single

    GpuPerformanceLevel

    The currently active GPU performance level. This is typically the value previously set with SetPerformanceLevel(Int32, Int32) once the levels are successfully applied. Adaptive performance may also change this level on its own. This typically happens when the device is thermal throttling or when SetPerformanceLevel(Int32, Int32) failed. GPU performance level has a value in the range of [MinCpuPerformanceLevel, MaxGpuPerformanceLevel] or UnknownPerformanceLevel. A value of UnknownPerformanceLevel means that Adaptive Performance took control of performance levels. GPU performance level has changed when GpuPerformanceLevel bit is set in ChangeFlags.

    Declaration
    public int GpuPerformanceLevel { readonly get; set; }
    Property Value
    Type Description
    Int32

    OverallFrameTime

    The total time in seconds spent for the frame. Has changed when OverallFrameTime bit is set in ChangeFlags.

    Declaration
    public float OverallFrameTime { readonly get; set; }
    Property Value
    Type Description
    Single

    PerformanceLevelControlAvailable

    true if performance levels may currently be controlled manually and aren't controlled by Adaptive Performance or the operating system. Has changed when PerformanceLevelControl bit is set in ChangeFlags.

    Declaration
    public bool PerformanceLevelControlAvailable { readonly get; set; }
    Property Value
    Type Description
    Boolean

    TemperatureLevel

    The current normalized temperature level in the range of [0.0, 1.0] or -1.0 when not supported or available right now. A level of 1.0 means that the device is thermal throttling. The temperature level has changed when the TemperatureLevel bit is set in ChangeFlags.

    Declaration
    public float TemperatureLevel { readonly get; set; }
    Property Value
    Type Description
    Single

    Temperature level in the range of [0.0, 1.0] or -1.0

    TemperatureTrend

    The current temperature trend in the range of [-1.0, 1.0] that is a metric of temperature change over time. The temperature trend is constant at 0.0 in case the feature is not supported. The temperature trend has changed when TemperatureTrend bit is set in ChangeFlags.

    Declaration
    public float TemperatureTrend { readonly get; set; }
    Property Value
    Type Description
    Single

    Temperature trend in the range of [-1.0, 1.0]

    WarningLevel

    The current warning level as documented in WarningLevel The warning level has changed when WarningLevel bit is set in ChangeFlags.

    Declaration
    public WarningLevel WarningLevel { readonly get; set; }
    Property Value
    Type Description
    WarningLevel

    The current warning level

    Back to top
    Terms of use
    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