120fps in mobiele ontwikkeling — wat is het, ProMotion-functies en optimalisatie

Auteur: IT Sectr Gepubliceerd: 2026-04-01 Leestijd: 8 min

120fps — een framerate van 120 frames per seconde, beschikbaar op displays met een verversingssnelheid van 120 Hz, waarbij elk frame 8,3 ms duurt. Volgens Apple WWDC 2023 Session schakelt ProMotion automatisch de frequentie van 24 tot 120 Hz voor een balans tussen vloeiendheid en energieverbruik. 8,3 ms — dit is twee keer minder dan het standaardbudget, wat serieuze optimalisatie van rendering vereist.

Belangrijkste punten

  • 120fps — framerate van 120 frames per seconde met een renderbudget van 8,3 ms per frame
  • ProMotion — Apple-technologie met dynamische frequentie van 24 tot 120 Hz
  • LTPO-displays — panelen met laagtemperatuur polykristallijn oxide, ondersteunen 1–120 Hz
  • Frame pacing — gelijkmatigheid van frameweergave, kritisch bij 120fps
  • Optimalisatie voor 120fps vereist twee keer zo efficiënte code als voor 60fps

Wat is 120fps

120fps — een verdubbelde framerate ten opzichte van de standaard, waarbij het display het beeld 120 keer per seconde ververst. Elk frame heeft een tijdbudget van 8,33 ms — de helft van 60fps. Dit betekent dat de GPU en CPU de graphics twee keer zo snel moeten verwerken en alle algoritmen die in 16,7 ms werken, halen bij 120fps alleen de deadline met dubbele efficiëntie.

Het eerste mobiele apparaat met een 120 Hz display was de Razer Phone (2017) met een IGZO-paneel van Sharp. Apple introduceerde 120 Hz in de iPad Pro (2017) onder de naam ProMotion, en in de iPhone — pas in 2021 in de iPhone 13 Pro. Op Android werd 120 Hz vanaf 2020 gangbaar: Samsung Galaxy S20, OnePlus 8 Pro, Xiaomi Mi 10. Tegenwoordig is 90–120 Hz de standaard voor flagship-apparaten en maakt LTPO-technologie dynamische frequentiewisseling mogelijk.

De perceptie van 120fps door de gebruiker verschilt van 60fps niet zozeer door de afwezigheid van haperingen, maar door het gevoel van directe respons — cursor, scrollen, animaties volgen de vinger met minimale vertraging. Dit gevoel wordt vaak omschreven als een „vloeibaar" of „olieachtig" scherm. Na gebruik van 120 Hz wordt terugkeer naar 60 Hz subjectief ervaren als vertraging, zelfs als er objectief geen frames worden overgeslagen.

Hoe werken 120 Hz displays

Een 120 Hz display ververst fysiek de pixels 120 keer per seconde en stuurt een signaal via de MIPI DSI/DPI-bus met dubbele frequentie. Elke pixel krijgt elke 8,3 ms een nieuwe helderheidswaarde. Voor OLED-panelen betekent dit dat de emissietijd van elke subpixel wordt verkort, wat een helderdere achtergrondverlichting vereist om dezelfde beeldhelderheid te behouden.

LTPO-technologie

LTPO (Low-Temperature Polycrystalline Oxide) — een technologie voor de productie van OLED-displays die LTPS (hoge schakelsnelheid) en IGZO (laag energieverbruik in statische toestand) combineert. LTPO stelt het display in staat om de verversingssnelheid dynamisch te wijzigen van 1 tot 120 Hz zonder extra energiekosten. In de Always-On Display-modus daalt de frequentie naar 1 Hz, bij scrollen stijgt deze naar 120 Hz. Dit geeft een besparing van tot 30% energie in vergelijking met displays die constant op 120 Hz werken.

Frame Pacing bij 120fps

Frame pacing — de gelijkmatigheid van intervallen tussen frames, de belangrijkste parameter bij 120fps. Als bij 60fps een verschil van 2–3 ms tussen frames onmerkbaar is, vormt hetzelfde absolute verschil bij 120fps 25% van de frametijd en wordt het ervaren als haperen. Voor vloeiende 120fps moet elk frame binnen 8,3 ms ±1 ms vallen. Hulpmiddelen zoals FrameRate in Xcode Instruments tonen niet alleen de gemiddelde FPS, maar ook een histogram van intervallen voor het beoordelen van frame pacing.

swift
// iOS — detectie van 120 Hz display via CADisplayLink
func checkDisplayRefreshRate() {
    let link = CADisplayLink(target: self,
                                  selector: #selector(step))
    if let preferredRate = link?.preferredFrameRateRange {
        print("Max. frequentie: \(preferredRate.maximum) Hz")
    }
}

ProMotion in iOS

ProMotion — het handelsmerk van Apple voor displays met adaptieve verversingssnelheid tot 120 Hz. Voor het eerst geïntroduceerd in de iPad Pro 10,5 (2017), daarna verschenen in de iPhone 13 Pro (2021) en MacBook Pro (2021). ProMotion is niet alleen 120 Hz — het is intelligent frequentiebeheer: het systeem analyseert het type inhoud en schakelt de frequentie voor een optimale balans tussen prestaties en energieverbruik.

ProMotion-werkingsmodi

ProMotion ondersteunt vier modi: 24 Hz voor statische inhoud en video van 24fps, 30 Hz voor video van 30fps, 60 Hz voor UI-navigatie en 120 Hz voor scrollen en games. Het schakelen tussen modi gebeurt in één frame (8,3 ms) en is onmerkbaar voor de gebruiker. De ontwikkelaar kan de frequentiekeuze beïnvloeden via preferredFrameRateRange in CADisplayLink, maar de uiteindelijke beslissing wordt genomen door het systeem op basis van inhoudsanalyse.

API voor ontwikkelaars

Apple biedt API's voor het werken met ProMotion vanaf iOS 15. CADisplayLink.preferredFrameRateRange stelt je in staat een voorkeursfrequentiebereik in te stellen. UIScene.ActivationConditions kan de frequentie beïnvloeden bij overgangen tussen scènes. Voor Metal-rendering moet CAMetalLayer.displaySyncEnabled true zijn voor synchronisatie met ProMotion. Als de app niet is geoptimaliseerd voor 120fps, schakelt iOS deze automatisch naar 60 Hz, wat zichtbaar is in Xcode in het gedeelte GPU Report.

swift
// iOS — 120fps aanvragen voor gamemodus
let displayLink = CADisplayLink(
    target: self,
    selector: #selector(gameLoop)
)
if #available(iOS 15.0, *) {
    displayLink?.preferredFrameRateRange =
        CAFrameRateRange(minimum: 80,
                          maximum: 120,
                          preferred: 120)
}
displayLink?.add(to: .current,
                    forMode: .default)

Optimalisatie voor 120fps

Optimalisatie voor 120fps — is niet alleen het twee keer versnellen van code, maar het heroverwegen van de renderarchitectuur. Operaties die binnen 16,7 ms vielen bij 60fps moeten nu binnen 8,3 ms worden uitgevoerd. Dit heeft invloed op alle fasen van de pijplijn: CPU-voorbereiding, GPU-rendering en systeemaanroepen.

Vermindering van draw calls voor 120fps

Bij 120fps moet het aantal draw calls per frame twee keer lager zijn dan bij 60fps om dezelfde GPU-belasting te behouden. Als bij 60fps 400 draw calls zijn toegestaan, dan bij 120fps — niet meer dan 200. Gebruik textuuratlassen, mesh-samenvoeging en GPU-instancing om het aantal weergaveaanroepen te verminderen. Gebruik op Metal Indirect Command Buffers, op Vulkan Secondary Command Buffers voor parallel schrijven van commando's.

Shaders — een andere kritische factor. Complexe pixelshaders met meerdere textuurbemonsteringen en wiskundige bewerkingen kunnen gemakkelijk het budget van 8,3 ms overschrijden. Gebruik shaders met lage precisie (half in plaats van float), verminder het aantal instructies en textuursamples. Op mobiele GPU's (Apple A17, Snapdragon 8 Gen 3) duurt elke textuurbemonstering 2–4 cycli en bij 120fps kan dit een knelpunt worden.

CPU en Main Thread

Bij 120fps moet de main thread het frame binnen 4–5 ms voorbereiden om de GPU tijd te geven voor rendering. Elke synchrone operatie op de main thread — database lezen, JSON-parsing, afbeeldingen laden — veroorzaakt haperingen. Verplaats alle zware operaties naar achtergrondthreads, gebruik asynchrone API's en threadpools. In iOS moet DispatchQueue met qualityOfService .userInteractive alleen worden gereserveerd voor kritische rendercode.

Component120fps budget60fps budget
CPU (main thread)4 ms8 ms
GPU-rendering4 ms8 ms
Composiet0,3 ms0,7 ms
VSync-wachttijd0–2 ms0–5 ms

120fps vs 60fps

Vergelijking van 120fps en 60fps beperkt zich niet tot verdubbeling van vloeiendheid. Het verschil wordt anders ervaren afhankelijk van het type inhoud. Voor scrollen en UI-animaties geeft 120fps subjectief een „responsievere" interface. Voor games komt het voordeel van 120fps tot uiting in verminderde bewegingsonscherpte en nauwkeurigere tracking van snelle objecten.

Energieverbruik — de belangrijkste afweging. 120fps verbruikt 30–50% meer energie dan 60fps bij dezelfde displayhelderheid. Dit betekent dat op een batterij van 4000 mAh een uur gamen op 120fps de batterij ongeveer 25–30% sneller leegtrekt. LTPO-displays lossen het probleem gedeeltelijk op door de frequentie in statische scènes te verlagen naar 1 Hz, maar bij actief gebruik (scrollen, games) blijft de frequentie op het maximum.

De keuze tussen 60fps en 120fps hangt af van de prioriteiten van de ontwikkelaar. Voor sociale netwerken, messengers en nieuwsapps biedt 120fps geen significant voordeel — de basisinteractie (lezen, tekstinvoer) profiteert niet van supervloeiendheid. Voor games, kaarten, grafische editors en apps met intensieve animatie wordt 120fps een concurrentievoordeel en een kwaliteitskenmerk.

Testen van 120fps vereist een speciale aanpak: standaard 60fps-metrics tonen geen problemen met frame pacing bij 120 Hz. Gebruik een hogesnelheidscamera (120+ fps) voor het vastleggen van het daadwerkelijke schermgedrag of de ingebouwde platformtools — Xcode Metal Capture voor iOS en AGI (Android GPU Inspector) voor Android. Deze tools tonen de exacte tijd van elk frame, inclusief VSync-wachttijd, en helpen bij het opsporen van microhaperingen.

Veelgestelde vragen

Is 120fps altijd beter dan 60fps?

Niet altijd. 120fps vereist twee keer zoveel energie en rekenkracht. Voor statische inhoud en eenvoudige UI is 60fps voldoende. Het voordeel van 120fps is merkbaar in dynamische scènes: scrollen, games, overgangsanimaties.

Hoe controleer ik of de app op 120fps draait?

Gebruik Xcode Instruments (sjabloon Core Animation) of Android Studio Profiler. Controleer in iOS CADisplayLink.timestamp — het interval tussen aanroepen moet ongeveer 8,3 ms zijn. Schakel in Android Show refresh rate in onder Developer Options.

Waarom trekt 120fps de batterij sneller leeg?

Het display ververst pixels twee keer zo vaak, de GPU voert twee keer zoveel renderoperaties uit, de CPU verwerkt twee keer zoveel frames. Elke bewerking verbruikt energie. LTPO-displays verlagen de frequentie in statische toestand, maar bij actief gebruik stijgt het energieverbruik evenredig met de frequentie.

Kan een app op Android op 120fps draaien?

Ja. Vanaf Android 11 ondersteunt het systeem verschillende verversingssnelheden. De ontwikkelaar kan 120 Hz aanvragen via WindowManager.setPreferredRefreshRate. Niet alle apparaten houden echter stabiel 120fps vast — optimalisatie van GPU-rendering is vereist.

Zal een gewone gebruiker het verschil tussen 60 en 120fps merken?

In een blinde test merkt de meeste gebruikers het verschil bij scrollen en animaties. Voor normaal gebruik (sociale media, video, messengers) is het verschil subjectief echter klein. Na gewenning aan 120 Hz voelt terugkeer naar 60 Hz als vertraging.

Samenvatting

  • 120fps — framerate met een budget van 8,3 ms voor supervloeiende animatie
  • ProMotion — adaptieve Apple-technologie met een bereik van 24–120 Hz
  • LTPO-displays wijzigen dynamisch de frequentie van 1 tot 120 Hz voor energiebesparing
  • Frame pacing is kritisch bij 120fps — onregelmatigheid van 2–3 ms is al merkbaar
  • Draw calls bij 120fps mogen niet meer dan 200 per frame bedragen
  • Energieverbruik van 120fps is 30–50% hoger dan van 60fps
  • De keuze voor 120fps is gerechtvaardigd voor games, kaarten en apps met intensieve animatie

We ontwikkelen een mobiele applicatie turnkey

IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.

Bespreek het project

Lees ook