PDA

Ver la versión completa : Juego PC a GP32



newton
05/09/2005, 22:06
Digamos que tengo un juego para PC realizado en C++ + SDL, que complicaciones podria encontrarme para portarlo a la GP32 aparte de los gráficos? :)

Eskema
05/09/2005, 23:34
La verdad yo no he usado el c++ pero segun tengo entendido no da muy buen rendimiento en la gp y es mejor usar el c.
Por lo demas, usar 320x240 y 8 bits, no creo q tengas q retocar mucho el codigo.
De paso aprovecho para preguntar ¿como cargar los graficos sin ponerlos como fichero .h?
Si lo pongo tal q asi no me cargan:
fondo=SDL_LoadBMP("gp:\\gpmm\\fondo_juego.bmp");

¿Que hago mal?

Aiken
05/09/2005, 23:53
Si el juego tiene codigo ensamblador, o rutinas que excriben directamente a la vga, o cualquier cosa asi rarilla.

Por ejemplo, la GP32 trabaja con los graficos girados 90º, asi que necesitaras una rutina que convierta la salida del programa del pc a girados 90º

Y como te digo cosas de ensamblador o escriban directamente a la vga, resolucion 320x240 max y poco mas.

Si esta en SDL, pues casi todo deberia funcionar sin muchos cambios, solo la resolucion a 320x240, y que el sdl de gp32 no soporta mp3 o ogg para el sonido ;)

Aiken

oankali
06/09/2005, 11:39
La verdad yo no he usado el c++ pero segun tengo entendido no da muy buen rendimiento en la gp y es mejor usar el c.
Por lo demas, usar 320x240 y 8 bits, no creo q tengas q retocar mucho el codigo.
De paso aprovecho para preguntar ¿como cargar los graficos sin ponerlos como fichero .h?
Si lo pongo tal q asi no me cargan:
fondo=SDL_LoadBMP("gp:\\gpmm\\fondo_juego.bmp");

¿Que hago mal?

¿Has inicializado la SMC con SmcInit()?

Oankali.

Gammenon
06/09/2005, 11:45
Saludos
Yo he cargado sin problemas bmp y xm con las SDL de chui de esta forma:


fondo=SDL_LoadBMP("datos/fondo_juego.bmp");

Siendo "datos" un directorio o carpeta que este junto al fxe en gpmm.

Espero que te sirva :)

Eskema
06/09/2005, 19:13
Si ya me extrañaba que no funcionara la forma de carga, sobraba el gp:\\
Ahora tengo otro problemilla (torpe que es uno) ¿hace falta algo especial para los controles?
Tengo este codigo, pero el muñeco no se mueve ¿?
Siendo teclas una variable de tipo Uint8

teclas = SDL_GetKeyState(NULL);
if( teclas[SDLK_ESCAPE] )
terminar = 1; //salimos
if(teclas[SDLK_LEFT])
graficox +=2;
if(teclas[SDLK_RIGHT])
graficox -=2;

rect_personaje.x=graficox;
rect_personaje.y=graficoy;
rect_personaje.w=personaje1->w;
rect_personaje.h=personaje1->h;
SDL_BlitSurface(personaje1,NULL,pantalla, &rect_personaje);

y por ultimo hago el Sdl_flip para mostrar la pantalla, lo curioso es q no se mueve. ¿Hay q iniciar algo en la gp con las nuevas sdl de chui?