Skip to content

palincat/gama

Repository files navigation

GAMA Ultra 4K Banner



Overview

     

Graphics API Manager for Android (GAMA) is an application that lets you switch the GPU rendering API on your Android device without requiring root access

While optimized for the Samsung Galaxy S23 lineup, this project is compatible with any modern Android device and aims to provide:

  • ❄️ Lower-running temps
  • 🔋 An improved battery life
  • 🔓 Zero risk - Root is not needed; 100% Knox-safe!
  • 🛠️ User-friendliness - Simple yet beautiful UI to switch APIs without complex terminal commands

Resources

  • 📱 Does Vulkan work on my device?
    • Vulkan support can vary between Android devices and One UI versions, so performance may differ, especially on versions below One UI 7 (Android 15). You’re always welcome to give it a try though! If something doesn’t work as expected, a quick reboot will bring everything back to normal.
    • If your device is not listed, please kindly follow this link where you will be able to fill out a form - The relevant, collected data will be added to the spreadsheet
    • All data is user-reported.
  • ☕ If you want to support the development of GAMA, consider donating!

Stargazers over time Stargazers over time



Get started on your platform



GAMA on Android

Prerequisites

Installation & Usage

  • Install Shizuku on your device and start the service
  • Install the latest GAMA APK on your device.
  • Open GAMA. The app will detect Shizuku and request permission to run commands - grant permission.
    • If GAMA displays "Permission needed⚠️"
      • Open Shizuku and select the second option from the top labeled Authorized Applications
      • Make sure the toggle next to GAMA is turned on.
      • Clear GAMA from your Recents menu so the app can refresh and check for permissions again.
  • Click on either:
    • Vulkan - Lower temps, Better battery
    • OpenGL - Fallback option

Heads up: You’ll need to run this script after every phone reboot.

Note: Vulkan might not run perfectly on every Android device due to the wide variety of hardware and Android skins, but it’s worth giving it a try! If your phone freezes or shows a black screen, just hold VOLUME DOWN + POWER to force a restart. GAMA forces Vulkan rendering using the setprop command (shell setprop debug.hwui.renderer). This change is temporary; Vulkan will only stay active until your next reboot. Simply restarting your device will revert any changes made by GAMA!

Automation via Tasker

  • GAMA supports automation via Tasker. See the setup guide to get started.

Photos



Caveats

🔸 Some apps won't run under Vulkan
A great majority of apps installed on your device will run under Vulkan flawlessly. If an app reverts to OpenGL, it's normal behavior and there's nothing to worry about — the app simply doesn't like Vulkan, and it probably also runs under OpenGL on S24/S25/S26-series!

🔸 Good Lock modules get deactivated (sometimes)
If OneUI detects that System UI has crashed multiple times in a short period, it may assume that a Good Lock module is responsible. Since these modules integrate deeply with System UI, OneUI may automatically disable all Good Lock modules to prevent what it believes to be a continuous crash loop.

In most cases, however, the Good Lock modules themselves are not actually the cause if you're using GAMA. The issue is usually triggered when the user switched APIs repeatedly in quick succession, which causes System UI to soft-crash several times (GAMA needs to soft-crash System UI in order to successfully apply the selected API).

To avoid this, try not to change APIs too quickly one after another.

If OneUI has already disabled your Good Lock modules, simply re-enable them in the Good Lock app and restart your device. After the reboot, the previously disabled modules should function normally! You can now apply Vulkan via GAMA, but please, do it cautiously.

🔸 The Aggressive Profile
Using the Aggressive profile for stopping background apps is, dare I say, kind of nuclear, and you shouldn't really use it... but if you do plan on using it, please be aware of the side effects:
  • Resets Defaults - Your default browser and keyboard will be reset.

    • It's intended behaviour. You will need to manually set everything back up. Sorry for the inconvenience!
  • Connectivity Loss - Loss of WiFi-Calling / VoLTE capability.

    • Go to Settings > Connections > SIM manager, then toggle SIM 1/2 off and on again.
    • Thanks to Fun-Flight4427 and ActualMountain7899 for the fix.

... and probably some other stuff we haven't documented yet.

About

Graphics API Manager for Android (GAMA)

Resources

License

Stars

Watchers

Forks

Contributors