C/Visual C - ayuda moviendo el fondo sdl

   
Vista:

ayuda moviendo el fondo sdl

Publicado por jordi (7 intervenciones) el 06/07/2013 13:16:14
Tengo un codigo que improvise un poco basandome en el tutorial de lazyfoo para mover el fondo hacia abajo que funciona perfectamente, el problema, es que quiero moverlo hacia arriba y al cambiar la bgY+=10 y apply_surface( bgX , bgY - background->h, background, screen ); lo unico que consigo es que el fondo vaya hacia arriba 2 veces y deje de mostrarse, viendose un fondo blanco.
El problema principal es que no soy muy bueno con los punteros y no entiendo muy bien que significa esto de -> , por lo que me estoy liando bastante.

//The offsets of the background
int bgX = 0, bgY = 0;

//Scroll background
bgY -= 10;

//If the background has gone too far
//w = amplada
//h = altura
if( bgY <= -background->h )
{
//Reset the offset
bgY = 0;
}
/* if (bgY >= 480)
{
bgY=0;
}*/

//Show the background
apply_surface( bgX, bgY, background, screen );
apply_surface( bgX , bgY + background->h, background, screen );

Obviamente, para mover hacia arriba el fondo puedo hacer algo tan facil como:
bgY += 10;
if (bgY >= 480)
{
bgY=0;
}
apply_surface( bgX, bgY, background, screen );

Solo pasa que el fondo no se mueve de forma continua, cuando llega arriba de todo, la imagen empieza desde abajo de golpe y digamos que queda bastante mal.

No copiare todo el codigo porque es muy largo, pero vamos lo que quiero es hacer lo que ensenyan en http://lazyfoo.net/SDL_tutorials/lesson22/index.php pero moviendo el fondo hacia arriba y con otra imagen no tan patetica claro ^^, lo que pasa que no explican absolutamente nada de como hacerlo apenas t.t
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder