Estou trabalhando em um jogo para iPhone 2D usando Corona (versão de teste, portanto não posso usar seus fóruns). O jogo envolve o personagem caindo no céu, e eu estou tentando implementar um "salto duplo" para o personagem, para que ele seja capaz de pular enquanto cai. Estou usando a biblioteca de física de Corona para que o personagem caia, e até agora o melhor método para fazê-lo pular é usar o método de impulso vertical
object:applyLinearImpulse(0, -0.4, object.x, object.y)
O problema que enfrento é que, quando o personagem está apenas começando (a velocidade vertical é baixa), ele pula muito alto e, quando cai há algum tempo (a velocidade vertical é alta), o salto é insignificante. Eu estou supondo que a melhor solução é usar algum tipo de equação com a velocidade como entrada para fazer o salto o mesmo, independentemente da velocidade, mas não consigo descobrir qual seria essa equação.
Ok, então esse é o meu pensamento. A questão final é: como exatamente você implementa um salto duplo com a física? Existe uma equação adequada para o meu problema? Devo adotar uma abordagem diferente? Isso já foi feito antes em jogos como Smash Bros, então existe uma solução repetível, certo?