Implementando a gravidade no jogo 2D simples
Estou fazendo um jogo simples, algo como mario, com um personagem fixo em uma posição e o chão se movendo para a esquerda, dando a ilusão de movimento do personagem. O solo é feito de blocos retangulares definidos pelas coordenadas superior esquerda e inferior direita:
private int surfaceMatrix[][] = {
{0, 100, 300, 0} // block having 100 height and 300 width
};
Pular é apenas mudar a coordenada y do personagem enquanto move a superfície para a esquerda, para que o salto pareça invertidoV
carta.
O restante do código - animação, sprites em movimento - é muito semelhante ahttp://zetcode.com/tutorials/javagamestutorial/movingsprites/
Quero que o salto seja mais real, então minha pergunta é: como posso implementar a gravidade aqui? Eu teria que usar dx do chão, e dy do personagem para fazer isso, tudo bem?
Qual seria a velocidade aqui? Pixels por segundo ...?
Como fazer isso?