A racing game has to feel smooth. If the frame rate drops just as a rival swings at you, the fight stops being fair. And most people in India don't play on flagship phones. So a lot of our time goes into one question: does Sadak Fury run well on an everyday Android phone?
Our main test phone for this is a OnePlus Nord CE 2 Lite, a mid-range phone with a Snapdragon 695. When we first put all six states on it, it managed 26 to 37 frames per second, and sometimes dropped to a 30 fps cap. Here is how we got it to 54 to 60 fps on the lowest graphics level, across all six states.
Where the time was going
Profiling showed three big costs:
- The landscape. Each state's hills were one big mesh of hundreds of thousands of triangles, and the phone drew all of it whether you could see it or not.
- Plants. Distant foliage was drawn as full plants. One tea estate alone cost around 11 million triangles a frame. Nobody can count tea bushes at 120 km/h.
- The ground shader. Our painted ground looked lovely and cost about 14 ms a frame on this phone. At 60 fps a whole frame only has 16.7 ms.
What we changed
Terrain in tiles. The landscape is now cut into 250 m tiles, and only the tiles in view are drawn, a fraction of the whole.
Props culled one by one. Lamp posts, stalls, trees and walls are hidden individually when they're off screen, instead of in big groups.
Impostors for distant plants. Far-away plants become flat painted cards that look the same from a distance at a tiny fraction of the cost. Up close, you still get the real thing.
A cheaper ground. On lower graphics levels the ground uses a simpler shader that keeps the painted colours and drops the expensive detail.
Lighter town buildings far away. Each town building has a simpler far version, used beyond a set distance for each graphics level.
Smaller crowds when needed. The front row of fans at the start and finish always stays. On lower levels the back rows thin out, and the side fans disappear once you're at speed.
AUTO: picking the right level for your phone
Sadak Fury has four graphics levels, MAX, HIGH, MED and LOW, plus AUTO, which is the default. We didn't want players digging through settings just to get a smooth race, so AUTO makes the choice itself:
- It makes a first guess from your phone's graphics chip, memory and processor cores.
- It watches the frame rate during the countdown, and can step down before the race even starts.
- If the game struggles during a race, it drops a level.
- If there's plenty of headroom, it tries a level up and keeps it only if the game holds steady.
- It remembers what works on your phone, so the next race starts at the right level straight away.
Step 4 has a story behind it. Our first version stepped up whenever the graphics chip looked lightly loaded. It turned out phones slow their graphics chips down when there's little work to do, so a "lightly loaded" chip told us nothing. Now AUTO tests a step up for real, and if the step fails it waits longer before trying again.
There was a second lesson on the Nord: it kept flipping between 60 and 30 fps. The fix was patience. AUTO now waits for a few seconds of genuinely low frame rate before dropping to 30.
Loading faster
Each road is built when you start a race, and at first that froze the screen for several seconds. Now the world is built step by step behind a loading screen, so the game stays responsive while it loads.
Smaller where it counts
Download size matters on a phone too. For example, the painted skies of Himachal and West Bengal were imported at 4096 pixels, which added 8 MB each to the Android package. At 2048 they look the same on a phone screen, so they're 2048 now.
The basics
- Sadak Fury runs on Android 8.0 or newer and iOS 15 or newer.
- It plays in landscape, and the screen stays awake for the whole race.
- The whole game plays offline. No connection needed, so no lag spikes from the network.
Performance isn't a one-time job. Every new road and feature gets the same check on the same phones before it ships. If your phone struggles, the support page has tips, and we'd love to hear which phone you play on.



