Search Unity

Official Adaptive Performance Package

Discussion in 'Android' started by David-Berger, Mar 28, 2019.

  1. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Hi all,

    During GDC 2019 we announced and release Adaptive Performance and would love to hear your feedback and help you integrate it into your projects.

    For detailed information please also read the blog post and the package documentation.

    If you have questions or feedback please post below. For bug reports, please use the Unity built-in bug reporter.

    Enjoy and let us know if you use it for something great, we always love to hear about success stories.

    -db

    Breaking News:

    We are happy to announce that Adaptive Performance 4.0.0 and Samsung Android 4.0.0 are now available. This verified release comes with some new features to improve your device performance. It comes with more samples as well which can be use on the Samsung device but also in the Unity Editor in combination with the Device Simulator:
    • Adaptive Layer Culling
    • Custom Scaler
    • Adaptive Decals
    • Adaptive Physics
    • Visual Scripting support
    • Additional samples
    Adaptive Performance Talks

    Unite Now 2020 - all of Duty Mobile & Adaptive Performance
    Unite Now features a talk about Adaptive Performance called: Build Better AAA Mobile Games with Adaptive Performance



    Call of Duty Mobile & Adaptive Performance
    During Samsung Developer Conference 2019 Samsung and Unity presented Call of Duty Mobile optimizations using Adaptive Performance to increase the stability of the game on Samsung devices.



    Call of Duty Mobile & Adaptive Performance
    During Unite Copenhagen 2019 Samsung presented Call of Duty Mobile optimizations using Adaptive Performance to increase the stability of the game on Samsung devices.



    GDC 2019 and Megacity
    During GDC we gave several talks about adaptive performance. Please see the GDC Vault Samsung talk, which includes Adaptive Performance, here. Alternatively, please see the talk from the Unity Booth on our youtube channel here.




    Presentations

    You can find a slidedeck which describes details of Adaptive Performance here.

    Version History

    The current version (5.0.0) of Adaptive Performance is compatible with the following versions of the Unity Editor:
    • Unity 2023.1+
    The old version (4.0.0) of Adaptive Performance is compatible with the following versions of the Unity Editor:
    • Unity 2021.2+
    The old version (3.0.2) of Adaptive Performance is compatible with the following versions of the Unity Editor:
    • Unity 2021.2+
    The old version (2.2.3) of Adaptive Performance is compatible with the following versions of the Unity Editor:
    • Unity 2019 LTS+
    The old version (1.2.0) of Adaptive Performance is compatible with the following versions of the Unity Editor:
    • 2019 LTS+
    The old version (1.1.9) of Adaptive Performance is compatible with the following versions of the Unity Editor:
    • 2018 LTS+
     
  2. castana1962

    castana1962

    Joined:
    Apr 10, 2013
    Posts:
    400
    Hi
    I am very interested in using Adaptive Performance for VR projects, for it, Is it VR Ready?
    Thanks for your time
    Regards
    Alejandro
     
  3. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Thanks, Alejandro,

    as mentioned in the blog the current preview targets Samsung Galaxy devices and is optimized for the Samsung S10 with more devices of the Samsung Galaxy family to follow. Our goal is to enable as many devices as possible to use Adaptive Performance in the future. The package is open source and you/anyone can take a look at the implementation at any time and add custom provider if necessary. What VR environment are you planning to use?
     
    castana1962 likes this.
  4. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Looking hot. Very cool feature!

    ...

    I know desktops and consoles aren't the target markets but it seems quite handy to be able to see if the bottleneck is GPU or CPU at runtime for any platform, this information seems like something other platforms could use too?
     
    Peter77 likes this.
  5. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    True! It would be very handy to have that info available during runtime on any platform. In Adaptive Performance, we currently use the GPU frametime exposed by the Samsung GameSDK and compare it with CPU time to implement the feedback for the events (simplified). This is not optimal and can be improved, but that's what we use right now. Depending on information on other platforms this could be implemented similarly. Said that, the package is open source and it's designed to add any data provider you wish, so it should be possible to extend it, even if we don't support the target platform yet.
     
    hippocoder likes this.
  6. castana1962

    castana1962

    Joined:
    Apr 10, 2013
    Posts:
    400
    Hi David
    First thanks to answer me so fast !!!
    On the other hand and answering your question, I am developing VR project for Oculus ( Rift/Go and hopeful Quest soon since that I think that this one will create a VR massive market) and HTC Vive/Valve.
    Since I think that the 3D Environment/Assets used in VR project are Low Poly( low quality), I am looking for some way to improve the VR Quality and its Performance and I would like to build them with DOTS and Adaptive Performance (taking as reference Megacity project).
    To be honest with you, It is very hard for me learn Adaptive Performance and ECS since that there are not many tutorials
    that teach us more deeply about both topics ( I saw some GDC 2019 conferences about them but unfortunate I cannot find them in the Unity Youtube Channel)
    Thanks to let me tell you about my VR projects and sorry for my little English
    Cheers
    Alejandro
     
  7. slime73

    slime73

    Joined:
    May 14, 2017
    Posts:
    107
    Have you looked into integrating it with Unity's existing FrameTiming APIs?
    https://docs.unity3d.com/ScriptReference/FrameTiming.html
    https://docs.unity3d.com/ScriptReference/FrameTimingManager.GetLatestTimings.html
     
  8. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    That's very good use-case, looking at VR and the need for stable framerate makes it a great scenario to add providers to utilize their APIs.

    Many of the tech in DOTs is still in preview and will be improved and get tutorials over time. Talking about Adaptive Performance this is the same, but everything you want to look into is in AdaptivePerformanceController in Megacity which controls the LODs. The main areas you might be interested in are mentioned in the blogpost such as thermal and bottleneck events handlers. The slides of my presentation about Adaptive Performance from GDC are linked in the blogpost as well. Once we have it on youtube, I'll link them here as well.

    For Megacity we have the landing page https://unity.com/megacity which includes several talks from Unite which are quite good to learn about the tech. But as it's still in preview and a lot of APIs and systems still change and get improved, so some talks might be dated.

    I hope that helps to get you started!
     
    castana1962 likes this.
  9. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    The APIs are platform/graphics API dependent but were appropriate we might integrate them. Those APIs have been created for dynamic resolution, which is a feature we would love to integrate into Adaptive Performance as well, probably as high-level Component.
     
  10. castana1962

    castana1962

    Joined:
    Apr 10, 2013
    Posts:
    400
    Hi David
    Thanks for your help and your advice
    Best Regards
    Alejandro
     
  11. roberto_sc

    roberto_sc

    Joined:
    Dec 13, 2010
    Posts:
    144
    Very interesting!
    Where's the open source project? I couldn't find it on Unity GitHub. Thanks.
     
  12. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    It's a package, you can simply take the package content from its install location (Library/PackageCache) after installing it and add it to your local project e.g. into the local Package folder in your project root. See also the packages documentation here. Let me know how it goes!
     
  13. roberto_sc

    roberto_sc

    Joined:
    Dec 13, 2010
    Posts:
    144
    I wanted the repo to check if anyone is doing something on the iOS side.
     
  14. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    There's no public repo. You can easily integrate an iOS provider yourself. However, iOS currently only exposes thermal events, but no temperature trends or skin temperatures and does not provide the functionality to adjust CPU or GPU frequency.
     
  15. Prodigga

    Prodigga

    Joined:
    Apr 13, 2011
    Posts:
    1,123
    Cool concept, but only one single device is supported thanks to a very specific SDK found on that manufacturers devices? What is plan of attack for rolling this feature out to all mobile devices from a variety of manufacturers? As cool as this feature is, it is a bit hard to adopt when there is no guarantee that this will ever fully work on anything other than Galaxy devices..? I love the ideas here though. Being able to tell the CPU and GPU to chill out when in the menu's, and being able to adjust performance on the fly to avoid overheating - all sounds great.

    For now, we'll just tick on 'Sustained Performance' and try out best to hit 60fps even with the lower CPU/GPU power.
     
  16. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We hear you and yes, we believe in adaptive performance and that it would be very valuable on many platforms. However, it requires functionality only OEMs can expose those (or override them) and we want to ensure our API is right for the use-case Unity developer face.
     
  17. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Hi all,

    We have released a new version of Adaptive Performance. We made several changes to the API and package structure and hope it makes it more intuitive to use in the future. If you are new to Adaptive Performance, simply download the Adaptive Performance Samsung (Android) package via Unity Package Manager, it will install the Adaptive Performance package automatically as a dependency.

    Note: If you have installed a preview version of Adaptive Performance before 0.2.0-preview.1 you will need to manually uninstall the Adaptive Performance package before installing the latest Adaptive Performance Samsung (Android) package through the Package Manager. Please see the first post which we updated with some uninstall notes.

    What’s new in 0.2.0-preview.1?
    • Overhaul of the API and split into several interfaces for easier access and future binary compatibility.
    • Split of package into Adaptive Performance package and Adaptive Performance Samsung (Android) subsystem package.
    • CPU frame time added
    • Configurable logging frequency added
    • Added a AutoPerformanceLevelController which updates CPU and GPU level automatically based on the target framerate.
     
  18. VagantB

    VagantB

    Joined:
    May 28, 2019
    Posts:
    6
    Hi,
    is there a way to use Adaptive Performance on a Samsung Galaxy Tab S4,
    we would like to try it in our specific project.
     
  19. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    No. Currently, Adaptive Performance is available on Galaxy S10. We work on expanding it to more devices in future.
     
  20. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Hi all,

    We have released Adaptive Performance 1.0.0 and moved it out of preview.

    If you are new to Adaptive Performance, simply download the AP Samsung Android 1.0.0 package via Unity Package Manager, it will install the Adaptive Performance package automatically as a dependency.

    If you are upgrading from Adaptive Performance 0.2.0-preview.1 you will need to update both packages; Adaptive Performance and AP Samsung Android manually from 0.2.0-preview.1 to 1.0.0.

    Screen Shot 2019-08-21 at 2.36.56 PM copy.png

    Note: If you have installed a preview version of Adaptive Performance before 0.2.0-preview.1 you will need to manually uninstall the Adaptive Performance package before installing the latest AP Samsung Android package through the Package Manager. Please see the first post which we updated with some uninstall notes.

    What’s new in 1.0.0?
    • Compatibility with On Demand Rendering (Unity 2019.3 feature)
    • Added compatibility for Samsung GameSDK 3.0
    • Fix GPU time evaluation resulting in unknown bottlenecks in rare cases when using Samsung GameSDK 1.5
     
  21. Davood_Kharmanzar

    Davood_Kharmanzar

    Joined:
    Sep 20, 2017
    Posts:
    411
    hello,

    what is difference between "com.unity.mobile.adaptiveperformance" and "com.unity.adaptiveperformance" ? mobile and other platforms??

    or we can using "com.unity.mobile.adaptiveperformance" on all platforms?
     
  22. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Hey, thanks for the question,

    TLDR; com.unity.mobile.adaptiveperformance is a deprecated preview package and you want to use com.unity.adaptiveperformance now and depending on platforms, a specific platform provider such as com.unity.adaptiveperformance.samsung.android.


    We have a note in the first post to explain the transition, but I'll extend it to make it more clear by adding the bundle id name changes. You want to uninstall all previous packages (com.unity.mobile.adaptiveperformance) and install the new packages (com.unity.adaptiveperformance.samsung.android and com.unity.adaptiveperformance). Please let me know if that helps. Here's the note:


    Note: If you have installed a preview version of Adaptive Performance before 0.2.0-preview.1 you will need to manually uninstall the Adaptive Performance package (com.unity.mobile.adaptiveperformance) before installing the latest version through the Adaptive Performance Samsung (Android) package (com.unity.adaptiveperformance.samsung.android and com.unity.adaptiveperformance) as we had to make updates to the API and package structure which made it impossible to auto-update the package due to namespace changes (from com.unity.mobile.adaptiveperformance to com.unity.adaptiveperformance).
     
  23. Davood_Kharmanzar

    Davood_Kharmanzar

    Joined:
    Sep 20, 2017
    Posts:
    411
    nice :]
    so ... its possible to using this new on all platforms?? awesome ...

    and have to rewrite like this?

    Code (CSharp):
    1.  
    2. using UnityEngine.AdaptivePerformance;
    3.  
    4. public class blablabla : MonoBehaviour
    5. {
    6.     IAdaptivePerformance performance;
    7.  
    8.     void Start()
    9.     {
    10.         performance = Holder.Instance;
    11.         performance.ThermalStatus.ThermalEvent += OnThermalEvent;
    12.     }
    13.  
    14.     void OnThermalEvent(ThermalMetrics item)
    15.     {
    16.         switch (item.WarningLevel)
    17.         {
    18.             case WarningLevel.NoWarning:
    19.                 BLABLABLA;
    20.                 break;
    21.             case WarningLevel.ThrottlingImminent:
    22.                 BLABLABLA;
    23.                 break;
    24.             case WarningLevel.Throttling:
    25.                 BLABLABLA;
    26.                 break;
    27.         }
    28.     }
    29. }
     
  24. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    The code is correct. That's the changes you will need. I attached the AdaptivePerformanceController.cs used in Megacity demo project and updated to 1.0.0 package APIs.

    The Adaptive Performance package (com.unity.adaptiveperformance) can run on any platform, but currently, there is only a Samsung provider available (com.unity.adaptiveperformance.samsung.android). But we are looking into offering additional provider packages in future.

    Hope this helps!
     

    Attached Files:

    Davood_Kharmanzar likes this.
  25. Shirzad

    Shirzad

    Joined:
    Dec 8, 2016
    Posts:
    13
    Thank you David!
     
  26. VagantB

    VagantB

    Joined:
    May 28, 2019
    Posts:
    6
    Hello David,
    is Adaptive Performance now working on all Samsung Devices?
    we mostly work with samsung tabs and would try it in our next project.

    thank you, for your time
     
  27. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Currently, it's only supported on Samsung S10, but stay for more news soon.
     
  28. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Call of Duty Mobile & Adaptive Performance
    During Unite Copenhagen 2019 Samsung presented Call of Duty Mobile optimizations using Adaptive Performance to increase the stability of the game on Samsung devices. The recording is available now and you can watch it here:

     
  29. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Please be advised that a new version of Adaptive Performance (1.0.1) and the Samsung Provider (1.0.1) have been released. These versions are required if you are using Unity 2020.1a6+ or 2019.3b6+, if you are using older version of Unity, it's not required to update to the newest package. If you are using an earlier version of 2019.3 beta or 2020.1 alpha you should not update to 1.0.1 as it will not work.
     
  30. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We released 2.0.0-preview.1 of Adaptive Performance today, which brings the Device Simulator extension for Adaptive Performance to simulate thermal and bottleneck events in the editor using the new device simulator so you can test your implementation already in the editor without deploying to the device!

    Simulate throttling events, thermal level and trends:
    AP_Thermal.png

    Simulate bottleneck events, auto control mode and CPU/GPU levels.
    AP_Bottleneck.png

    Installation:
    1. Open Unity Package Manager
    2. Enable "Show preview packages" in the Advanced menu.
    3. Update or Install Adaptive Performance package to 2.0.0-preview.1
    4. Install the Device Simulator package (preview)
    5. The Simulator view will show the Adaptive Performance section as soon as the preview is installed and the Simulator view is opened.
    Note: Currently the simulation only works in Play Mode and states will not be saved. Being able to set the values before going into play mode will come in an later version.

    Packman.png

    There's more planned for the simulator, so please stay tuned and as always, we would love to hear your feedback! Happy developing!

    Edit: Corrected the package version
     
    Last edited: Jan 8, 2020
    eizenhorn likes this.
  31. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    Hi all,
    we have a new presentation available and overworked the first post to reflect all changes better. Hope you enjoy the talk!

    Call of Duty Mobile & Adaptive Performance
    During Samsung Developer Conference 2019 Samsung and Unity presented Call of Duty Mobile optimizations using Adaptive Performance to increase the stability of the game on Samsung devices.

     
  32. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    1.1.0-preview.3 is available now which fixes UI issues in the Device Simulator extension and fixes a bug which would not show CPU/GPU timings in the Simulator when you go into play mode.

    Also a little vide on how Thermal Throttling Simulation works in the Editor
    ezgif-6-9531830706ab.gif
     
  33. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We recently release Adaptive Performance 1.1.0-preview.4 and removed the device simulator extension as it requires breaking changes which can not be introduced to 1.x.x but it comes with additional fixes.

    We also release Adaptive Performance 2.0.0-preview.1 which adds the device simulator extension.

    This should help to update the verified packages in future without introducing API breaking changes.

    What does this mean for support?

    Adaptive Performance Packages:
    • 1.x.x supports Unity 2019 LTS as verified package
    • 2.x.x supports Unity 2020 LTS (planned) as verified package
     
    Last edited: Jan 8, 2020
  34. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We release Adaptive Performance 1.1.0 today which brings fixes and improvements. It will be verified with one of the next 2019.3 releases but is available for upgrade today!
     
    DeathPro likes this.
  35. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We released Adaptive Performance 2.0.0 Preview 2 today which comes with optimizations to the device simulator extension.

    Give it a try and let us know if it increases your workflow of testing Adaptive Performance in the Editor! :cool:
     
  36. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We released Adaptive Performance Samsung Android 1.1.2 today which comes with very important bugfixes and updates. It is compatible with Adaptive Performance 1.1.0.

    Please update to this package if you target the new Samsung Galaxy S20 devices.
    • Update to GameSDK 3.1
    • Bugfix which avoid onRefreshRateChanged() crash on S20 during Motion smoothness change (60Hz <-> 120Hz) (while app is in background)
    • Improvement with GameSDK 3.1 SetFrequLevel callback for temperature mitigation to avoid overheating when no additional scale factors are used. This replaces SetLevelWithScene in GameSDK 3.1
     
  37. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We released Adaptive Performance Samsung Android 1.1.3 today which comes with very important bugfixes and updates. It is compatible with Adaptive Performance 1.1.0.

    Please update to this package if you target the new Samsung Galaxy S20 devices.

    • Bugfix - which 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
    • Improvement - with GameSDK 3.1 it's not necessary to (un)register listeners during OnPause and OnResume as it's handled in the GameSDK
     
  38. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We released Adaptive Performance Samsung Android 1.1.4 today which comes with a critical fix which removes GameSDK 3.1 support. It support GameSDK 1.5, 1.6, 2.0 and 3.0. It is compatible with Adaptive Performance 1.1.0.

    Please update to this package if you target the new Samsung Galaxy S20 devices or any Galaxy Device with GameSDK 3.1 support such as Galaxy devices receiving Android 10 (Q) updates.

    • Removed Game SDK 3.1 initialization due to issues in GameSDK 3.1. Any other GameSDK version is still supported.
     
  39. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We released Adaptive Performance 2.0.0 Preview 4 today which comes with VRR (Variable Refresh Rate) support.

    Currently Supported Devices:
    • Galaxy S20 with GameSDK 3.2 (April update)
    Unity Editor:
    • Unity 2020.2.0a7+
    • Unity 2020.1.0b5+
    • Unity 2019.3.11f1+
    As always, give it a try and let us know if it helps you to adapt your game to variable refresh rates on Samsung Galaxy Devices!
     
  40. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    We released Adaptive Performance and Samsung Android 1.1.6 today which comes with changes in the GameSDK 3.2 support. Please read the changelog for details.
    • 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.
     
  41. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    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:
     
    tteneder likes this.
  42. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    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.
     
  43. AGulev-k

    AGulev-k

    Joined:
    Jan 16, 2020
    Posts:
    8
    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.
     
  44. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    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.
     
  45. AGulev-k

    AGulev-k

    Joined:
    Jan 16, 2020
    Posts:
    8
    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)?
     
  46. AGulev-k

    AGulev-k

    Joined:
    Jan 16, 2020
    Posts:
    8
    I use 1.1.6, and according to the documentation it should work fine:
    upload_2020-7-6_15-42-41.png
     
  47. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    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.
     
  48. AGulev-k

    AGulev-k

    Joined:
    Jan 16, 2020
    Posts:
    8
    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.
     
  49. David-Berger

    David-Berger

    Unity Technologies

    Joined:
    Jul 16, 2014
    Posts:
    745
    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.
     
  50. AGulev-k

    AGulev-k

    Joined:
    Jan 16, 2020
    Posts:
    8
    Ok, thank you, I'll try.