Class AdaptivePerformanceSubsystem
Use the Adaptive Performance Subsystem class to create your custom provider subsystem to deliver data from your provider to Adaptive Performance.
Inheritance
Inherited Members
Namespace: UnityEngine.AdaptivePerformance.Provider
Syntax
public abstract class AdaptivePerformanceSubsystem : AdaptivePerformanceSubsystemBase, ISubsystem
Constructors
AdaptivePerformanceSubsystem()
Main constructor, not used in the subsystem specifically.
Declaration
protected AdaptivePerformanceSubsystem()
Properties
ApplicationLifecycle
Application lifecycle events to be consumed by subsystem. Can be null if the subsystem does not need special handling on life-cycle events. The returned reference does not change after startup.
Declaration
public abstract IApplicationLifecycle ApplicationLifecycle { get; }
Property Value
| Type | Description |
|---|---|
| IApplicationLifecycle | Application lifecycle object |
Capabilities
Bitset of supported features. Does not change after startup.
Declaration
public Feature Capabilities { get; protected set; }
Property Value
| Type | Description |
|---|---|
| Feature | Bitset |
PerformanceLevelControl
Control CPU or GPU performance levels of the device. Can be null if the subsystem does not support controlling CPU/GPU performance levels. Is null when the PerformanceLevelControl bit is not set in Capabilities. The returned reference does not change after startup.
Declaration
public abstract IDevicePerformanceLevelControl PerformanceLevelControl { get; }
Property Value
| Type | Description |
|---|---|
| IDevicePerformanceLevelControl | Performance level control object |
Stats
Generates a human readable string of subsystem internal stats. Optional and only used for development.
Declaration
public virtual string Stats { get; }
Property Value
| Type | Description |
|---|---|
| String | String with subsystem specific statistics |
Version
Returns the version of the subsystem implementation. Can be used together with SubsystemDescriptor to identify a subsystem.
Declaration
public abstract Version Version { get; }
Property Value
| Type | Description |
|---|---|
| Version | Version number |
Methods
Update()
To be called once per frame. The returned data structure's fields are populated with the latest available data, according to the supported Capabilities.
Declaration
public abstract PerformanceDataRecord Update()
Returns
| Type | Description |
|---|---|
| PerformanceDataRecord | Data structure with the most recent performance data. |