Class AdaptivePerformanceSubsystem
Use the Adaptive Performance Subsystem class to create your custom provider subsystem to deliver data from your provider to Adaptive Performance.
Inherited Members
Namespace: UnityEngine.AdaptivePerformance.Provider
Syntax
public abstract class AdaptivePerformanceSubsystem : AdaptivePerformanceSubsystemBase
Constructors
AdaptivePerformanceSubsystem()
Main constructor, not used in the subsystem specifically.
Declaration
protected AdaptivePerformanceSubsystem()
Properties
ApplicationLifecycle
Application life-cycle events to be consumed by subsystem.
May be null in case 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 life-cycle 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/GPU performance levels of the device.
May be null in case the subsystem does not support controlling CPU/GPU performance levels.
null when 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. |