- 02/11/2011 15:02
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.
[code]//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;[/code]
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.
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.
[code]//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;[/code]
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.