Física en videojuegos

Hola, bueno hace rato no público ni nada, pero como buscando y buscando vi a varios que saben mucho de programación, tal vez me puedan/quieran ayudar, ahí va:
Estamos haciendo (para la Facu) el típico juego de proyectiles de tiro oblicuo (suponete que sea el engry birds), con gravedad. Trabajamos con sfml y en C++.

Lo que tengo es esto y noce que es lo que me está faltando para hacer andar.

Código:

//tomamos el tiempo total de la aplicación tt_total += app->getframetime (), tdelta_t = app->getframetime (), t//calculamos vix, viy, posix, posiy tvix = velocidad * cosf(ángulo), tviy = velocidad * sin(ángulo), tposix = vix * t_total, tposiy = posiy + viy * delta_t - 0.5 * (g) * (delta_t * delta_t), tbala->setposition(posix, posiy), tviy = viy - G * delta_t;


.

Bueno aclaremos un poco.

T_total: es el tiempo total de la aplicación.

Delta_t: es el tiempo descompuesto, es para usarlo como integrador numérico.

Vix: es la velocidad inicial en x.

Viy: es la velocidad inicial en y.

Posix: es la posición inicial en x.

Posiy: es la posición inicial en y.

Bala: es el sprite de una bala y la seteamos en (posix, posiy).

Viy: ahora es afectada por la gravedad lo que debería hacerla disminuir su velocidad.

Ver más sobre el tema y los comentarios en el foro