Comment un téléphone compte ses propres loopings
Looping n'a besoin ni de caméra ni d'arbitre : le téléphone mesure son propre lancer. Voici ce qui se passe entre le moment où il quitte ta main et celui où le score s'affiche.
Deux capteurs que tout téléphone embarque
Un accéléromètre mesure les forces que le téléphone subit. Posé sur une table, il lit l'attraction de la pesanteur, environ 9,8 m/s². Un gyroscope mesure la vitesse à laquelle le téléphone tourne autour de chacun de ses trois axes, en degrés par seconde.
Les deux ont été mis dans les téléphones pour faire pivoter l'écran, compter les pas et stabiliser les photos. Looping les lit depuis le navigateur, des dizaines de fois par seconde.
Repérer le vol
À l'instant où le téléphone quitte ta main, plus rien ne le pousse. Il est en chute libre, à la montée comme à la descente, et l'accéléromètre ne lit presque plus rien. Ce silence soudain est la signature d'un vol. Il se termine par un pic net, quand une main ou le matelas arrête le téléphone.
Un téléphone qui tourne brouille l'image : son accéléromètre n'est pas exactement en son centre, et la rotation elle-même appuie dessus. Le jeu ne cherche donc pas un simple zéro. Il vérifie que ce que lit l'accéléromètre est exactement ce qu'explique la rotation mesurée par le gyroscope. Un téléphone secoué dans la main, ou lancé en toupie sur une table, ne passe pas ce test.
Un vol doit durer au moins 0,3 seconde pour compter : une dizaine de centimètres de haut, assez pour distinguer un lancer d'un sursaut de la main.
Compter les tours
Pendant le vol, le gyroscope donne la vitesse de rotation de nombreuses fois par seconde. Multiplie chaque lecture par la durée qu'elle couvre, additionne le tout, et tu obtiens l'angle total parcouru par le téléphone, quel que soit l'axe : cul par-dessus tête (un flip), autour de sa longueur (un tonneau) ou à plat comme une toupie (une vrille).
Un looping, c'est 360°. Le nombre affiché est celui des tours complets, et un tour compte à partir de 80 % : ceux qui regardent un lancer voient environ un cinquième de tour de plus que le vol libre n'en contient, parce que le téléphone tourne déjà dans la main au lâcher et encore à la réception. Le classement, lui, se joue sur l'angle total, au degré près.
D'où vient la hauteur
Le jeu ne voit pas le plafond : il chronomètre le vol. Un objet lancé vers le haut et rattrapé à la même hauteur passe la moitié de son temps de vol à monter et l'autre à descendre, ce qui donne la hauteur : 0,5 s en l'air, c'est environ 30 cm ; 0,75 s, environ 70 cm ; une seconde, environ 1,2 m.
C'est une estimation. Rattrape le téléphone plus bas que tu ne l'as lancé et le chiffre te flatte un peu.
Quand le capteur ne suit plus
Tout gyroscope a un plafond : une vitesse de rotation au-delà de laquelle il répond toujours le même nombre. Nous avons mesuré environ 1 150 °/s sur certains téléphones Android, 2 300 °/s sur d'autres et 4 000 °/s sur un iPhone récent, soit onze tours par seconde.
Quand un lancer dépasse le plafond, le jeu n'invente pas les tours qui manquent. Il garde le minimum qu'il a réellement mesuré et le dit sur le résultat, ou refuse le lancer quand il ne peut rien garantir. Un score peut être en dessous de la vérité ; il n'est jamais au-dessus.
Pourquoi c'est le serveur qui tient le score
Ton téléphone enregistre le lancer ; il ne le juge pas. Les mesures brutes partent au serveur du jeu, qui calcule le score avec les mêmes règles pour tout le monde et vérifie qu'elles décrivent un vrai vol libre. Un enregistrement ne peut compter qu'une fois.
C'est ce qui rend un classement fiable : personne ne peut envoyer un nombre, seulement un lancer. Sans réseau, le lancer est gardé sur le téléphone (jusqu'à douze, pendant sept jours) et compté au retour de la connexion.
Ce que le jeu lit, et ce qu'il ne lit pas
Looping lit les capteurs de mouvement et rien d'autre : ni caméra, ni micro, ni position. Ce qui est enregistré, et pour combien de temps, est écrit dans les mentions légales.
Jouer à LoopingPour aller plus loin
English Français Español Português Deutsch Italiano Nederlands Polski Türkçe Русский Українська العربية हिन्दी বাংলা Bahasa Indonesia Tiếng Việt ไทย 日本語 한국어 中文