All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
[4.0.2] - 2022-11-08
- Adjusted the loader and subsystem initialization process to allow for falling back to another subsystem if init is not successful.
[4.0.1] - 2022-06-15
- Fix bug where Adaptive Performance Samsung Provider is not deinitialized properly after not being successfully initialized due to lack of Samsung GameSDK.
- Improved handling for GameSDK APIs that may not be available on certain devices.
[4.0.0] - 2021-10-30
- Verified support for 2022.1 and minimum support 2021 LTS+.
- Additional logs during the initialization phase of the provider.
- Added additional documentation for supported devices.
[3.0.0] - 2021-05-04
- Startup Boost Mode
- Verified support for 2021.2 and minimum support 2021.2 LTS+. Please use Adaptive Performance 1.x for earlier versions supporting 2018.3+ and Adaptive Performance 2.x for earlier versions supporting 2019.4+.
[2.2.1] - 2021-06-06
- Scalers do not use switch-case to determine their value, instead use min, max scale and max level to calculate a scale and increment and apply it to their target when the level changes. VRR scaler specifically.
- Boost mode
- Cluster info
[2.1.1] - 2021-02-03
- Fix FB: 1305455 IndexOutOfRangeException error thrown on changing VRR Refresh Rate on device.
- Fix FB: 1309052 IndexOutOfRangeException error thrown on changing VRR Refresh Rate on Device Simulator.
[2.1.0] - 2020-10-12
- Updated the version defines for the device simulator to support it in 2021.1 without package.
- Updated the version to keep in sync with the main Adaptive Performance package.
[2.0.2] - 2020-08-21
- Improved Stats reporting.
- Folders and files which are not needed by Adaptive Performance from the package.
[2.0.1] - 2020-08-10
- Updated GameSDK wrapper to latest version which enhances GPU frametime information
[2.0.0] - 2020-06-05
- Variable Refresh Rate API (VRR) to support multiple vsync displays
- Verified support for 2020.2 and minimum support 2019 LTS+. Please use Adaptive Performance Samsung Android 1.x for earlier versions supporting 2018.3+.
[1.2.2] - 2021-02-05
- Fix issues where skin temperature was used on Game SDK 1.5 devices instead of PST to send initial temperature warning when devices are hot.
[1.2.1] - 2020-08-21
- Update to correct Unity Version (2019.4) and correct dependency to Adaptive Performance (1.2.0).
- Updated GameSDK wrapper to latest version which enhances GPU frametime information.
[1.2.0] - 2020-07-29
- Updates to Subsystem Registry 1.2.0 to fix installation issues if internal subystem module is disabled.
- Update minimum required Unity version to 2019.4.
[1.1.9] - 2020-07-23
- Exchanged GameSDK wrapper with updated version removing GameSDK 3.1 support.
- Thermal Mitigation Logic changes in GameSDK 3.2 and it was updated in SetFreqLevels() to react to the correct return values.
- Thermal Mitigation Logic sets Automatic Performance Control to System when not available and releases when it reaches norminal temperature levels.
- 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.1.7] - 2020-05-07
- Adaptive Performance needs to re-initialize GameSDK on resume application because some Android onForegroundchange() APIs do not detect the change (e.g. bixby) and cause Adaptive Performance to not get valid data anymore.
[1.1.6] - 2020-04-29
- GameSDK 3.2 uses a wider range of temperature levels and maximum temperature level is changed to level 10.
- GameSDK 3.2 has a different behaviour when setting frequency levels and warning level 2 (throttling) is reached and you are always in control of the CPU/GPU level.
[1.1.4] - 2020-03-26
- Game SDK 3.1 initialization due to issues in GameSDK 3.1. Any other GameSDK version is still supported.
[1.1.3] - 2020-03-18
- Avoids that callbacks in GameSDK 3.1, such as Listener.onHighTempWarning(), are not called when onRefreshRateChanged() is not implemented. This is only present on devices supporting VRR
-With GameSDK 3.1 it's not necessary to (un)register listeners during OnPause and OnResume as it's handled in the GameSDK
[1.1.2] - 2020-03-13
- Updated GameSDK from 3.0 to 3.1
- Avoid onRefreshRateChanged() crash on S20 during Motion smoothness change (60Hz <-> 120Hz) while app is in background and resumed
- GameSDK 3.1 introduced setFrequLevel callback for temperature mitigation to avoid overheating when no additional scale factors are used. This replaces SetLevelWithScene in GameSDK 3.1
[1.1.1] - 2020-02-13
- Package name from AP Samsung Android to Adaptive Performance Samsung Android as the Unity Package Manager naming limit was raised to 50 characters
[1.1.0] - 2020-01-30
- Compatibility with .net 3.5 in Unity 2018.4
[1.0.1] - 2019-08-29
- Compatibility with Subsystem API changes in Unity 2019.3
[1.0.0] - 2019-08-19
- Support for Samsung GameSDK 3.0