Como um celular conta os próprios loopings
O Looping não precisa de câmera nem de árbitro: o celular mede o próprio lançamento. Veja o que acontece entre o momento em que ele sai da sua mão e o momento em que a pontuação aparece.
Dois sensores que todo celular tem
Um acelerômetro mede as forças que o celular sente. Parado em cima de uma mesa, ele lê a atração da gravidade, cerca de 9,8 m/s². Um giroscópio mede a velocidade com que o celular gira em torno de cada um dos seus três eixos, em graus por segundo.
Os dois foram parar nos celulares para girar a tela, contar passos e estabilizar as fotos. O Looping lê esses sensores pelo navegador, dezenas de vezes por segundo.
Perceber o voo
No instante em que o celular sai da sua mão, nada mais o empurra. Ele está em queda livre, tanto na subida quanto na descida, e o acelerômetro não lê quase nada. Esse silêncio repentino é a assinatura de um voo. Ele termina com um pico seco, quando uma mão ou o colchão segura o celular.
Um celular girando embaralha a leitura: o acelerômetro não fica exatamente no centro do aparelho, então o próprio giro faz pressão sobre ele. Por isso o jogo não procura um simples zero. Ele confere se o que o acelerômetro lê é exatamente o que o giro medido pelo giroscópio explica. Um celular sacudido na mão, ou girado em cima de uma mesa, não passa nesse teste.
Um voo precisa durar pelo menos 0,3 segundo para contar: uns onze centímetros de subida, o suficiente para distinguir um lançamento de um tique da mão.
Contar as voltas
Durante o voo, o giroscópio informa a velocidade de giro muitas vezes por segundo. Multiplique cada leitura pelo tempo que ela cobre, some tudo e você tem o ângulo total que o celular girou, seja qual for o eixo: virando sobre si mesmo como uma moeda (uma cambalhota), em torno do eixo mais comprido (um tonel) ou deitado como um pião (um giro plano).
Um looping são 360°. O número na tela é o de voltas completas, e uma volta conta a partir de 80%. Quem assiste a um lançamento vê cerca de um quinto de volta a mais do que o voo livre contém, porque o celular já está girando na mão na hora de soltar e continua girando na hora de pegar. Já o ranking é decidido pelo ângulo total, até o último grau.
De onde vem a altura
O jogo não enxerga o teto: ele cronometra o voo. Um objeto jogado para cima e pego na mesma altura passa metade do tempo no ar subindo e a outra metade descendo, e é daí que sai a altura: 0,5 s no ar dá cerca de 30 cm; 0,75 s, cerca de 70 cm; um segundo, cerca de 1,2 m.
É uma estimativa. Se você pegar o celular mais baixo do que lançou, o número fica um pouco generoso com você.
Quando o sensor não dá conta
Todo giroscópio tem um teto: uma velocidade de giro acima da qual ele responde sempre o mesmo número. Medimos cerca de 1.150 °/s em alguns celulares Android, 2.300 °/s em outros e 4.000 °/s em um iPhone recente, ou seja, onze voltas por segundo.
Quando um lançamento passa do teto, o jogo não inventa as voltas que faltam. Ele fica com o mínimo que mediu de verdade e avisa no resultado, ou recusa o lançamento quando não pode garantir nada. Uma pontuação pode ficar abaixo da verdade; acima, nunca.
Por que é o servidor que cuida da pontuação
Seu celular grava o lançamento; ele não o julga. As medições brutas vão para o servidor do jogo, que calcula a pontuação com as mesmas regras para todo mundo e confere se elas descrevem um voo livre de verdade. Uma gravação só pode contar uma vez.
É isso que torna um ranking confiável: ninguém consegue enviar um número, só um lançamento. Sem rede, o lançamento fica guardado no celular (até doze, por sete dias) e é contado quando a conexão volta.
O que o jogo lê e o que ele não lê
O Looping lê os sensores de movimento e mais nada: nada de câmera, de microfone ou de localização. O que é registrado, e por quanto tempo, está escrito no aviso legal.
Jogar LoopingSaiba mais
English Français Español Português Deutsch Italiano Nederlands Polski Türkçe Русский Українська العربية हिन्दी বাংলা Bahasa Indonesia Tiếng Việt ไทย 日本語 한국어 中文