docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class SimulatorAdaptivePerformanceSubsystem.SimulatorProvider

    The Simulator Provider controls Subsystems needed to access Adaptive Performance features and the systems lifecycle.

    Inheritance
    object
    SubsystemProvider
    SubsystemProvider<AdaptivePerformanceSubsystem>
    AdaptivePerformanceSubsystem.APProvider
    SimulatorAdaptivePerformanceSubsystem.SimulatorProvider
    Implements
    IApplicationLifecycle
    IDevicePerformanceLevelControl
    Inherited Members
    AdaptivePerformanceSubsystem.APProvider.m_Running
    AdaptivePerformanceSubsystem.APProvider.running
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEditor.AdaptivePerformance.Simulator.Editor
    Assembly: Unity.AdaptivePerformance.Simulator.Editor.dll
    Syntax
    public class SimulatorAdaptivePerformanceSubsystem.SimulatorProvider : AdaptivePerformanceSubsystem.APProvider, IApplicationLifecycle, IDevicePerformanceLevelControl

    Constructors

    SimulatorProvider()

    Main constructor, used to initialize the provider capabilities.

    Declaration
    public SimulatorProvider()

    Properties

    AcceptsPerformanceLevel

    Required to simulate performance changes. To change AutomaticPerformanceControl, you have to set AcceptsPerformanceLevel to true. See PerformanceLevelControlAvailable.

    Declaration
    public virtual bool AcceptsPerformanceLevel { get; set; }
    Property Value
    Type Description
    bool

    ApplicationLifecycle

    Returns the application lifecycle.

    Declaration
    public override IApplicationLifecycle ApplicationLifecycle { get; }
    Property Value
    Type Description
    IApplicationLifecycle
    Overrides
    AdaptivePerformanceSubsystem.APProvider.ApplicationLifecycle

    Capabilities

    Returns the capabilities of the provider.

    Declaration
    public override Feature Capabilities { get; set; }
    Property Value
    Type Description
    Feature
    Overrides
    AdaptivePerformanceSubsystem.APProvider.Capabilities

    ChangeFlags

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see ChangeFlags.

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

    CpuPerformanceBoost

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see CpuPerformanceBoost.

    Declaration
    public virtual bool CpuPerformanceBoost { get; set; }
    Property Value
    Type Description
    bool

    CpuPerformanceLevel

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see CpuPerformanceLevel.

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

    GpuPerformanceBoost

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see GpuPerformanceBoost.

    Declaration
    public virtual bool GpuPerformanceBoost { get; set; }
    Property Value
    Type Description
    bool

    GpuPerformanceLevel

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see GpuPerformanceLevel.

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

    Initialized

    Returns the initialization status of the system.

    Declaration
    public override bool Initialized { get; set; }
    Property Value
    Type Description
    bool
    Overrides
    AdaptivePerformanceSubsystem.APProvider.Initialized

    MaxCpuPerformanceLevel

    See MaxCpuPerformanceLevel.

    Declaration
    public int MaxCpuPerformanceLevel { get; }
    Property Value
    Type Description
    int

    MaxGpuPerformanceLevel

    See MaxGpuPerformanceLevel.

    Declaration
    public int MaxGpuPerformanceLevel { get; }
    Property Value
    Type Description
    int

    NextCpuFrameTime

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see CpuFrameTime.

    Declaration
    public virtual float NextCpuFrameTime { get; set; }
    Property Value
    Type Description
    float

    NextGpuFrameTime

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see GpuFrameTime.

    Declaration
    public virtual float NextGpuFrameTime { get; set; }
    Property Value
    Type Description
    float

    NextOverallFrameTime

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see OverallFrameTime.

    Declaration
    public virtual float NextOverallFrameTime { get; set; }
    Property Value
    Type Description
    float

    PerformanceLevelControl

    Returns the performance level control.

    Declaration
    public override IDevicePerformanceLevelControl PerformanceLevelControl { get; }
    Property Value
    Type Description
    IDevicePerformanceLevelControl
    Overrides
    AdaptivePerformanceSubsystem.APProvider.PerformanceLevelControl

    PerformanceMode

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see PerformanceMode.

    Declaration
    public virtual PerformanceMode PerformanceMode { get; set; }
    Property Value
    Type Description
    PerformanceMode

    Stats

    Returns the stats of the provider.

    Declaration
    public override string Stats { get; }
    Property Value
    Type Description
    string
    Overrides
    AdaptivePerformanceSubsystem.APProvider.Stats

    TemperatureLevel

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see TemperatureLevel.

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

    TemperatureTrend

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see TemperatureTrend.

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

    Version

    The current version of the Device Simulator Adaptive Performance Subsystem. Matches the version of the Adaptive Performance Subsystem. See Version.

    Declaration
    public override Version Version { get; }
    Property Value
    Type Description
    Version
    Overrides
    AdaptivePerformanceSubsystem.APProvider.Version

    WarningLevel

    This property is a wrapper around an internal PerformanceDataRecord object. For more details, see WarningLevel.

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

    Methods

    ApplicationPause()

    Callback that is called when the application goes into a pause state.

    Declaration
    public void ApplicationPause()

    ApplicationResume()

    Callback that is called when the application resumes after being paused.

    Declaration
    public void ApplicationResume()

    Destroy()

    Cleanup when the subsystem object is destroyed.

    Declaration
    public override void Destroy()
    Overrides
    UnityEngine.SubsystemsImplementation.SubsystemProvider<UnityEngine.AdaptivePerformance.Provider.AdaptivePerformanceSubsystem>.Destroy()

    EnableCpuBoost()

    Enable the boost mode for the CPU.

    Declaration
    public bool EnableCpuBoost()
    Returns
    Type Description
    bool

    Returns if CPU boost mode was successfully enabled.

    EnableGpuBoost()

    Enable the boost mode for the GPU.

    Declaration
    public bool EnableGpuBoost()
    Returns
    Type Description
    bool

    Returns if GPU boost mode was successfully enabled.

    SetClusterInfo(ClusterInfo)

    Helper for the device simulator to change cluster info settings. Those settings are usually changed by a device directly.

    Declaration
    public virtual void SetClusterInfo(ClusterInfo clusterInfo)
    Parameters
    Type Name Description
    ClusterInfo clusterInfo

    New Cluster Info values.

    SetPerformanceLevel(ref int, ref int)

    Set the performance level for both the CPU and GPU.

    Declaration
    public bool SetPerformanceLevel(ref int cpuLevel, ref int gpuLevel)
    Parameters
    Type Name Description
    int cpuLevel

    The CPU performance level to request.

    int gpuLevel

    The GPU performance level to request.

    Returns
    Type Description
    bool

    Returns if the levels were successfully set.

    Start()

    Perform initialization of the subsystem.

    Declaration
    public override void Start()
    Overrides
    UnityEngine.SubsystemsImplementation.SubsystemProvider<UnityEngine.AdaptivePerformance.Provider.AdaptivePerformanceSubsystem>.Start()

    Stop()

    Stop running the subsystem.

    Declaration
    public override void Stop()
    Overrides
    UnityEngine.SubsystemsImplementation.SubsystemProvider<UnityEngine.AdaptivePerformance.Provider.AdaptivePerformanceSubsystem>.Stop()

    TryInitialize()

    Simulator subsystem try to initialize initializes successfully.

    Declaration
    protected override bool TryInitialize()
    Returns
    Type Description
    bool

    true if initialized

    Overrides
    UnityEngine.SubsystemsImplementation.SubsystemProvider<UnityEngine.AdaptivePerformance.Provider.AdaptivePerformanceSubsystem>.TryInitialize()

    Update()

    Update current results and flags.

    Declaration
    public override PerformanceDataRecord Update()
    Returns
    Type Description
    PerformanceDataRecord

    The latest PerformanceDataRecord object.

    Overrides
    AdaptivePerformanceSubsystem.APProvider.Update()

    Implements

    IApplicationLifecycle
    IDevicePerformanceLevelControl
    In This Article
    Back to top
    Copyright © 2025 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)