Adaptive Performance Package

We released Adaptive Performance and Samsung Android 2.0.0 Preview 8 today which comes with many changes. Please read the changelog below for details. The installation in Adaptive Performance 2.0 is different to 1.0 due to the new provider system. During the preview there are additional steps required and we prepared a guide as well as a Video guide. Please see the quick installation guide below. Changes in Adaptive Performance 2.0:

  • Samples to show off different Adaptive Performance features.
  • Indexer API which allows to create custom Scalers and a number of sample Scalers.
  • Settings for Unified Settings Menu with provider installation via Settings.
  • Adaptive Performance Simulator and Device Simulator extension to simulate Adaptive Performance events in the editor using the Device Simulator package.
  • Verified support for 2020.2 and minimum support 2019 LTS+. Please use Adaptive Performance 1.x for earlier versions supporting 2018.3+.

Quick Installation Guide:

  • Install Android Support for Unity. Unity needs Android Support to build to your Samsung device.

  • Switch Platform to Android in the Build Settings window.

  • (During 2.0.0-preview) Use the Unity Package Manager and install the Adaptive Performance Samsung Android package which includes the subsystem. The Unity Package Manager then automatically installs the Adaptive Performance package as a dependency for you as well.

  • Install and activate the Adaptive Performance Samsung Android provider in Adaptive Performance Settings.

  • If you want to use the Device Simulator Extension, you also have to activate the Adaptive Performance Simulator provider in the Adaptive Performance Settings.

  • Note*: Due to the workflow during preview, the first installation of the Simulator Provider might fail and the Adaptive Performance package will be downgraded to 1.1.6. You will have to upgrade the Adaptive Performance Package again to Preview 8. After you have to activate the Simulator provider in the Adaptive Performance Settings one more time.

  • For a more detailed guide please see the Setup Video below.

Please also read the Installation Guide in the manual, which has additional details.

Setup Video Guide:

1 Like

We released Adaptive Performance and Samsung Android 2.0.0 Preview 10 today which comes with many fixes and updates to VRR. Please read the changelog below for details. The installation in Adaptive Performance 2.0 is different to 1.0 due to the new provider system. Please see the quick installation guide below. Changes in Adaptive Performance 2.0:

  • Samples to show off different Adaptive Performance features.

  • A number of sample Scalers

  • Adaptive Framerate and Adaptive VRR

  • Adaptive Resolution

  • Adaptive Performance Simulator and Device Simulator extension to simulate Adaptive Performance VRR events in the editor using the Device Simulator package.

  • Fixes to VRR support.

Quick Installation Guide:

  • Install Android Support for Unity. Unity needs Android Support to build to your Samsung device.

  • Switch Platform to Android in the Build Settings window.

  • (During 2.0.0-preview) Use the Unity Package Manager and install the Adaptive Performance Samsung Android package which includes the subsystem. The Unity Package Manager then automatically installs the Adaptive Performance package as a dependency for you as well.

  • Install and activate the Adaptive Performance Samsung Android provider in Adaptive Performance Settings.

  • If you want to use the Device Simulator Extension, you also have to activate the Adaptive Performance Simulator provider in the Adaptive Performance Settings.

Please also read the Installation Guide in the manual, which has additional details.

How to check the version of Samsung GameSDK?
When I try to integrate Adaptive performance module (I prefer to use stable releases and I use
“com.unity.adaptiveperformance.samsung.android”: “1.1.6”)
When I start my game on S10e I get the following message:

[Samsung GameSDK] GameSDK 3.1 is not supported and will not be initialized, Adaptive Performance will not be used.

The message means it’s on GameSDK 3.1 and you will need update the device to get GameSDK 3.2. You can check the version via Samsung GameSDK but not via Device Settings afaik.

But my device is updated and I don’t have any updates for now.
Can I use Adaptive Performance on my device somehow (maybe using older module version or something like that)?

I use 1.1.6, and according to the documentation it should work fine:

Yes, for GameSDK 3.0 and older you can use Adaptive Performance 1.x. Adaptive Performance 2.0 removes support for anything before 3.2.

But I use 1.1.6 and it doesn’t work:

[Samsung GameSDK] GameSDK 3.1 is not supported and will not be initialized, Adaptive Performance will not be used.

That’s correct, 1.1.3 still works with GameSDK 3.1, however, we do recommend to use the latest version 1.1.6 for any shipped title and use 1.1.3 only for testing until the carrier of your device updates the device with GameSDK 3.2.

Ok, thank you, I’ll try.

We released Adaptive Performance and Samsung Android 2.0.0 Preview 11 today which comes with many fixes and updates to the Indexer and Scalers. Please read the changelog below for details. The installation in Adaptive Performance 2.0 is different to 1.0 due to the new provider system. Please see the quick installation guide below. Changes in Adaptive Performance 2.0:

  • Samples to show off different Adaptive Performance features.

  • Settings for Scalers

  • A number of sample Scalers

  • Adaptive Sorting

  • Adaptive Batching

  • Adaptive Shadowmap Resolution

  • Adaptive Shadow Distance

  • Adaptive Shadow Quality

  • Adaptive Shadow Cascades

  • Adaptive LOD

  • Adaptive MSAA

  • Fixes to VRR support.

Quick Installation Guide:

  • Install Android Support for Unity. Unity needs Android Support to build to your Samsung device.
  • Switch Platform to Android in the Build Settings window.
  • Use the Unity Package Manager and install the Adaptive Performance
  • Install and activate the Adaptive Performance Samsung Android provider in Adaptive Performance Settings.
  • If you want to use the Device Simulator Extension, you also have to activate the Adaptive Performance Simulator provider in the Adaptive Performance Settings.

Please also read the Installation Guide in the manual, which has additional details.

Will it work on Huawei and other brands?

Not at this moment with the shipped providers.

We released Adaptive Performance and Samsung Android 1.1.9 and 1.2.0 today which comes with bug fixes, dependency changes and updates. Please read the changelog for details. 1.1.9 and 1.2.0 have the following fixes:

  • Automatic Performance Mode: lower CPU and GPU levels at the same time instead of one at a time to increase efficiency and higher power savings.
  • Fixed Automatic Performance Control flag to respect the function and not be read only anymore.
  • Thermal Mitigation Logic changes in GameSDK 3.2 and it was updated in SetFreqLevels() to react to the correct return values.
  • Automatic Performance Mode: gpuUtilizationThreshold increased from 0.7 to 0.9 to increase effeciency.
  • Automatic Performance Mode: gpuFactor increased from 0.72 to 0.92 to increase effeciency.
  • Automatic Performance Mode: Increase GPU Active time Ratio.
  • Changed Documentation to make clear that changing CPU and GPU levels is risky and the Automatic Performance Mode should be used instead.
  • Exchanged GameSDK wrapper with updated version removing GameSDK 3.1 support.
  • Automatic Performance Control does not lower CPU lower than 1 on GameSDK 3.2 workaround.
  • Add workaround to send temperature warning when the device starts as warm already as currently no events are sent.

1.2.0 has the same changes as 1.1.9 but it also updates a dependency: The Subsystem Registration was updated from 1.0.6 to 1.1.0. This updates the minimum supported version to Unity 2019.4. It fixes an issue where you get compilation errors if you disable the built-in module Subsystems in your project and you install Adaptive Performance afterwards. This is an issue in Unity 2019.4+. A workaround is to enable the the Subsystem module again before installing Adaptive Performance. This means, the Support Matrix looks like:

Unity 2018 LTS : Adaptive Performance and Samsung Android 1.1.9
Unity 2019 LTS+: Adaptive Performance and Samsung Android 1.2.0

We are happy to announce that Adaptive Performance 2.0.0 and Samsung Android 2.0.0 are now available. This verified release comes with many new features to improve your device performance. It comes with samples which can be use on the Samsung device but also in the Unity Editor in combination with the Device Simulator:

  • Samples to show off all Adaptive Performance features.

  • Editor settings for all features.

  • All features of Adaptive Performance 1.0. including Automatic Performance mode, Bottleneck and Thermal state detection.

  • Device Simulator Extension

  • A number of Scalers utilizing the Indexer

  • Adaptive Framerate

  • Adaptive VRR

  • Adaptive Resolution

  • Adaptive Sorting

  • Adaptive Batching

  • Adaptive Shadowmap Resolution

  • Adaptive Shadow Distance

  • Adaptive Shadow Quality

  • Adaptive Shadow Cascades

  • Adaptive LOD

  • Adaptive MSAA

  • Variable Refresh Rate Support.

Quick Installation Guide:

  • Use the Unity Package Manager and install the Adaptive Performance.
  • Install and activate the Adaptive Performance Samsung Android provider in the Adaptive Performance Settings.
  • If you want to use the Device Simulator Extension, you also have to activate the Adaptive Performance Simulator provider in the Adaptive Performance Settings and install the Device Simulator Package.
  • Install Android Support for Unity. Unity needs Android Support to build to your Samsung device.
  • Switch Platform to Android in the Build Settings window.

Please also read the Installation Guide in the manual, which has additional details.

For additional information and upgrade guides, please see the first post.

We released Adaptive Performance and Samsung Android 2.0.1 today which comes with bug fixes, and updates. Please read the change log linked above for details.

We released Adaptive Performance and Samsung Android 2.0.2 today which comes with bug fixes when you use Unity < 2020.2. Please read the change log linked above for details.

We also release Samsung Android 1.2.1 today which replaces a broken 1.2.0 - please upgrade to Samsung Android 1.2.1 if you use 1.2.0. In case you use Unity 2018, please stay/downgrade to 1.1.9.

There is additional APIs in Android 11 which we evaluate at the moment. Most Thermal APIs, required for Adaptive Performance, are still missing on Android and iOS. We monitor the APIs closely and hopefully will be able to support more platforms in future. For now, if you use Adaptive Performance, it should be easy to adapt it for other platforms once they are available.

1 Like

It might be helpful if you need to check device thermal state: iOS / Android

2 Likes

We released Adaptive Performance and Samsung Android 1.1.10 and 1.2.2 last week which comes with bug fixes. Please read the change log linked for details.

https://docs.unity3d.com/Packages/com.unity.adaptiveperformance@1.1/changelog/CHANGELOG.html
https://docs.unity3d.com/Packages/com.unity.adaptiveperformance.samsung.android@1.1/changelog/CHANGELOG.
html
Changelog | Adaptive Performance | 1.2.3
Changelog | Adaptive Performance Samsung Android | 1.2.3