Mobile GPUs are not small desktop GPUs. They are architecturally different, and the differences change which optimisations matter.
Tile-based rendering
Mobile GPUs render in tiles, keeping a small region of the framebuffer in fast on-chip memory. This makes them very good at opaque geometry and unusually bad at anything that forces the tile to be written out and read back — full-screen post-processing, certain render-target switches, and some transparency configurations.
Overdraw is the enemy
Because fragment shading dominates, overlapping transparent surfaces are the most reliable way to destroy mobile performance. Particle-heavy effects that are free on desktop can halve a frame rate on a phone.
Thermal throttling
A phone that hits its thermal limit reduces clock speed, and performance measured in the first thirty seconds is not the performance players get. Sustained benchmarks matter more than peak ones.
Practical budgets
- Triangles. Far lower than desktop, and the number varies enormously by target device generation.
- Draw calls. The tightest constraint on many projects. Batching and atlasing matter more here than anywhere.
- Texture memory. Often the hard ceiling. Compressed formats are mandatory, not optional.
- Shader complexity. Keep materials simple; per-pixel cost is where mobile suffers.
Texture compression
Device-specific: ASTC is the modern common denominator, with older formats still relevant depending on how far back you support. Shipping uncompressed textures to mobile is not a viable option.
For generated assets
Everything above argues for aggressive retopology and texture reduction. A reconstructed mesh at its native density is not a mobile asset in any configuration — treat the generated output as the high-poly source and build down from it.