Bennu Game Development

Foros en Español => Plataformas => Raspberry PI => Mensaje iniciado por: butcher en Junio 25, 2016, 07:55:26 pm

Título: Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 25, 2016, 07:55:26 pm
Edito: actualizado a v333 - gracias SplinterGU

Hola a todos, traigo novedades  :D

Con la version 332 de bennu funciona el scale en rpi.

Leí que drumpi habia reportado un problema con el escalado, un puntero que reservaba memoria de más o algo parecido si leí bien, y splintergu lo ha arreglado (gracias eres el mejor!!)

He probado con el sorr, ahora funcionan todos los modos de escalado que permite, aunque no estaria mal probarlo en algun juego mas para asegurarnos.

En principio con esto ya funciona el SorR al 100% en raspberry y podemos darlo por cerrado  ;D y pasar a hacer otras cosas

Adjunto binario de la version 332

Un saludo
Título: Re:Actualización - version 332 del port BennuGD para Raspberry
Publicado por: SplinterGU en Junio 26, 2016, 02:10:41 am
creo que no subi el fix del escalado todavia... :P
Título: Re:Actualización - version 332 del port BennuGD para Raspberry
Publicado por: SplinterGU en Junio 26, 2016, 02:19:11 am
ahora si, hay r333
Título: Re:Actualización - version 332 del port BennuGD para Raspberry
Publicado por: SplinterGU en Junio 26, 2016, 02:19:26 am
gracias butcher!
Título: Re:Actualización - version 332 del port BennuGD para Raspberry
Publicado por: butcher en Junio 26, 2016, 08:29:33 am
Gracias a ti! Con la version 332 funciona (que raro, algun cambio debe haber que haga que funcione), pero voy a compilar la 333, asi lo tenemos actualizado a la ultima version.

Un saludo
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 26, 2016, 09:49:56 am
Hecho, ya tenemos la v333

Se agradece si alguien puede probar y reportar bugs

Saludos!
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: Drumpi en Junio 26, 2016, 01:12:34 pm
Yo voy a intentar hacer un paquete con el Echo v1.3.1 en cuanto vea que todo funciona y que he hecho los añadidos que tenía pendientes (quiero ponerle las cosas que no pude por falta de tiempo en el concurso, y a ver si puedo solucionar el tema de los mandos con ejes).
Lo que no tengo es Rasp donde probar, así que tendré algo con lo que probar el port pero no podré hacer la prueba :P
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: SplinterGU en Junio 26, 2016, 03:45:19 pm
a vos!
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 26, 2016, 06:53:18 pm
Edito: actualizado a v333 - gracias SplinterGU

Hola a todos, traigo novedades  :D

Con la version 332 de bennu funciona el scale en rpi.

Leí que drumpi habia reportado un problema con el escalado, un puntero que reservaba memoria de más o algo parecido si leí bien, y splintergu lo ha arreglado (gracias eres el mejor!!)

He probado con el sorr, ahora funcionan todos los modos de escalado que permite, aunque no estaria mal probarlo en algun juego mas para asegurarnos.

En principio con esto ya funciona el SorR al 100% en raspberry y podemos darlo por cerrado  ;D y pasar a hacer otras cosas

Adjunto binario de la version 332

Un saludo
Muchas gracias , voy a probar Anarkade, ahora debería funcionar en pantalla completa :D
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 27, 2016, 01:06:44 pm
Acabo de probar Anarkade y no funciona, se abre la ventana de Bennu pero queda todo negro y parece que se cuelga.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 27, 2016, 02:19:35 pm
Acabo de probar Anarkade y no funciona, se abre la ventana de Bennu pero queda todo negro y parece que se cuelga.

Vaya por dios.. Esto me pasa porque las pruebas solo las hago con el Sorr.

Con esta version el sorr ya funciona en todos los modos de pantalla, lo he probado y requeteprobado, pero es cierto que no he probado con otros juegos.


Tienes algun trozo de anarkade u otro juego que funcione con el mismo modo de pantalla? Para poder hacer las pruebas con el. Puedo depurarlo y ver que ocurre (en esta version de bennu vuelven a estar disponibles las opciones de depuracion con el parametro -d )

Aunque yo normalmente depuro con gdb:

gdb --args bgdi-333 SorR.dat

Si tienes un entorno X11 en la raspberry puedes ver la depuracion con ese parametro.

Que modo de pantalla usas exactamente? Resolucion, profundidad, modo de scale... Usas la salida hdmi de la raspberry verdad?

Tampoco descarto algun problema con las librerias. Por si acaso ejecuta esto como root para actualizar:

apt-get update && apt-get upgrade

Un saludo
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 27, 2016, 02:48:44 pm
Esta es la config de pantalla que uso :D


Quizas sea alguno de los flags de renderizado, eso no lo usaba antes.


Código: [Seleccionar]

scale_mode = SCALE_NORMAL2X;


set_mode(640, 360, 16, MODE_FULLSCREEN + MODE_HARDWARE + MODE_WAITVSYNC);
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 27, 2016, 03:34:57 pm
Esta es la config de pantalla que uso :D


Quizas sea alguno de los flags de renderizado, eso no lo usaba antes.


Código: [Seleccionar]

scale_mode = SCALE_NORMAL2X;


set_mode(640, 360, 16, MODE_FULLSCREEN + MODE_HARDWARE + MODE_WAITVSYNC);

Gracias, lo pruebo en cuanto pueda. Puede que necesite un .prg que venga con esa configuracion, pero voy a intentar hacerlo yo mismo

Saludos
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 27, 2016, 04:23:30 pm
Hola

Aunque estoy aquí a 31º (literal) he bajado al ordenador y lo he probado. Parece que funcionan bien las flags MODE_FULLSCREEN +MODE_HARDWARE + MODE_WAITVSYNC. Estoy usando este código (también puedes descargarlo adjunto):

PROGRAM videojuego;
import "mod_key";
import "mod_wm";
import "mod_video";

Private
    int i;
Process Main()

BEGIN
   set_mode(640, 400, 16, MODE_FULLSCREEN + MODE_HARDWARE + MODE_WAITVSYNC);
   load_fpg ( "fpg/sonic.fpg" );      
   graph = 0;   
   x = 320;   
   y = 180; //No se por que bennu centra en medio del sprite en lugar de en la esquina superior izquierda
   i = 1;
   LOOP      
      graph = i;
      i = i + 1; // no se si en bennu se puede usar i++
      IF ( i > 100 )
         i = 1;
      END
      IF ( key ( _ESC ) )      
         exit ( 0 );      
      END            
      FRAME;         
   END         
END   

Si ejecutas el codigo veras a un sonic(tm) moviendose en el centro de la pantalla :)

Necesito alguna pista más para saber qué esta fallando......
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 27, 2016, 04:32:54 pm
Será entonces la combinacion de la resolucion que estoy usando + el SCALE?
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 27, 2016, 05:17:57 pm
Será entonces la combinacion de la resolucion que estoy usando + el SCALE?

Anda que he olvidado añadir el scale

Jajajaja  :o ;D ;D ;D ;D  :-[

Voy a probarlo, luego te aviso
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 27, 2016, 05:30:49 pm
Ya está probado

Me funciona con:

set_mode(640, 360, 16, MODE_FULLSCREEN + MODE_HARDWARE + MODE_WAITVSYNC + MODE_2XSCALE);

Nótese que estoy usando MODE_2XSCALE en lugar SCALE_NORMAL2X (no se si es lo mismo pero supongo que si). Va algo más lento, pero funciona. ¿Lo estás llamando directamente desde el set_mode, o primero estableces el set_mode y más tarde el scale? ¿Podrías probar a añadir MODE_2XSCALE a tu llamada set_ mode para probar?

Un saludo
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 27, 2016, 07:18:25 pm
Pues, me puse a hacer pruebas y resulta que tengo el mismo bug en Windows cuando uso el MODE_2XSCALE.


Edit: Encontre el problema :D


Al parecer es un bug en Bennu, si antes de hacer el set mode ese de arriba, tengo la siguiente linea:


Código: [Seleccionar]
scale_resolution = null;

se rompe todo
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 27, 2016, 09:59:19 pm
Veo que hay diferencias entre el port de windows y el de raspberry:


en Windows, cuando se usa scale_mode graphic_info ( 0,BACKGROUND , G_width ) retorna el doble del ancho del fondo, mientras que en raspberry, el valor retornado es el correcto.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 27, 2016, 10:12:52 pm
A proposito, sigue sin ejecutarse en pantalla completa :S
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 27, 2016, 10:28:40 pm
A proposito, sigue sin ejecutarse en pantalla completa :S

No entiendo por que el sorr se ve a pantalla completa y otros juegos no... Mañana haré más pruebas, pero si tuvieras un rato libre me vendría bien saber qué configuracion de framebuffer tiene tu raspberry. Si puedes ejecuta en la linea de comandos:

tvservice -s

Y postea el resultado  :D tambien me vendria bien si me confirmases si usas la salida de video compuesto o el hdmi como salida de video. Voy a replicar tu configuracion para hacer las pruebas

Saludos!
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 27, 2016, 10:48:14 pm
A proposito, sigue sin ejecutarse en pantalla completa :S

No entiendo por que el sorr se ve a pantalla completa y otros juegos no... Mañana haré más pruebas, pero si tuvieras un rato libre me vendría bien saber qué configuracion de framebuffer tiene tu raspberry. Si puedes ejecuta en la linea de comandos:

tvservice -s

Y postea el resultado  :D tambien me vendria bien si me confirmases si usas la salida de video compuesto o el hdmi como salida de video. Voy a replicar tu configuracion para hacer las pruebas

Saludos!
El comando dice

State 0x12000a HDMI CEA 16 RGB lim 16:9, 1920x1080 @ 60.00Hz, progressive

Y si, estoy usando HDMI
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 28, 2016, 09:29:59 am
A proposito, sigue sin ejecutarse en pantalla completa :S

No entiendo por que el sorr se ve a pantalla completa y otros juegos no... Mañana haré más pruebas, pero si tuvieras un rato libre me vendría bien saber qué configuracion de framebuffer tiene tu raspberry. Si puedes ejecuta en la linea de comandos:

tvservice -s

Y postea el resultado  :D tambien me vendria bien si me confirmases si usas la salida de video compuesto o el hdmi como salida de video. Voy a replicar tu configuracion para hacer las pruebas

Saludos!
El comando dice

State 0x12000a HDMI CEA 16 RGB lim 16:9, 1920x1080 @ 60.00Hz, progressive

Y si, estoy usando HDMI

Gracias por mandarme esto  :D Estoy probando en la misma resolucion y en principio lo veo a pantalla completa, es cierto que hay franjas negras a ambos lados pero porque el juego que pruebo es 4:3 , y noto unas pequeñas franjas arriba y abajo, pero de no más de un par de centímetros. Tienes alguna captura de pantalla de cómo se ve tu juego?
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 28, 2016, 01:44:34 pm
es cierto que hay franjas negras a ambos lados pero porque el juego que pruebo es 4:3 , y noto unas pequeñas franjas arriba y abajo, pero de no más de un par de centímetros


Mas tarde te saco una foto de como se ve. Mientras, te comento que las franjas en mi juego se ven bastante anchas. Quizas tenga que ver con la resolucion que estoy usando?
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 28, 2016, 03:10:38 pm
es cierto que hay franjas negras a ambos lados pero porque el juego que pruebo es 4:3 , y noto unas pequeñas franjas arriba y abajo, pero de no más de un par de centímetros


Mas tarde te saco una foto de como se ve. Mientras, te comento que las franjas en mi juego se ven bastante anchas. Quizas tenga que ver con la resolucion que estoy usando?

En teoria he replicado tus parametros, el juego a 640x320 con scale normal 2x, y la raspberry a 1920x1080 60hz progresivo. A los lados si tendra unas buenas franjas porque 640x320 es 4:3, pero arriba y abajo deberia haber poca o ninguna franja. Faltaria comprobar el monitor, pero seria raro que ese fuera el problema.

Subi hace tiempo un dcb que mostraba una imagen a pantalla completa, a ver si lo encuentro y lo usamos para ver como de grandes son los margenes.

Tambien podemos probar a cambiar el tamaño del framebuffer para que coincida con el tamaño del juego, ejecutando

fbset -xres 640 -yres 320

antes de ejecutar el juego, a ver que hace. A lo mejor a splintergu se le ocurre cual podria ser la causa.

Tambientengo que investigar si bennu tiene alguna funcion para redimensionar de 4:3 a 16:9, aunque sea rompiendo la relacion de aspecto.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 28, 2016, 04:05:47 pm
pero mi resolucion no es 320, es 360
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: SplinterGU en Junio 28, 2016, 06:16:14 pm
pero mi resolucion no es 320, es 360

360 x por cuanto?

pensa que el monitor no puede poner la resolucion que uno quiera, y si mantenes el aspectratio y no coincide te van a quedar bandas negras en los costados o arriba y abajo.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 28, 2016, 06:50:33 pm
Es verdad, pensaba que el height era 320 y es 360. Entonces si es 16:9. He visto en la wiki que se puede forzar el strech mediante la variable

scale_resolution_aspectratio=SRA_STRETCH;

Quiza mereceria la pena probarlo por si acaso resuelve el problema. Lo he extraido de aqui

http://wiki.bennugd.org/index.php?title=Scale_resolution_aspectratio
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 28, 2016, 07:46:48 pm
pero mi resolucion no es 320, es 360

360 x por cuanto?

pensa que el monitor no puede poner la resolucion que uno quiera, y si mantenes el aspectratio y no coincide te van a quedar bandas negras en los costados o arriba y abajo.


es 640 x 360, no lo puse completo porque el ya lo esta usando. Entiendo perfectamente que si no tiene la misma proporcion va a utilizar las bandas negras, pero (ignorando el hecho de que SI estoy usando la misma proporcion) no tiene sentido que las bandas las ponga vertical Y horizontalmente.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 28, 2016, 07:48:38 pm
Es verdad, pensaba que el height era 320 y es 360. Entonces si es 16:9. He visto en la wiki que se puede forzar el strech mediante la variable

scale_resolution_aspectratio=SRA_STRETCH;

Quiza mereceria la pena probarlo por si acaso resuelve el problema. Lo he extraido de aqui

http://wiki.bennugd.org/index.php?title=Scale_resolution_aspectratio (http://wiki.bennugd.org/index.php?title=Scale_resolution_aspectratio)


Lo voy a probar, pero tengo entendido que esa variable tiene efecto unicamente cuando se usa scale_resolution, no scale_mode.



Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 28, 2016, 07:52:15 pm
Es verdad, pensaba que el height era 320 y es 360. Entonces si es 16:9. He visto en la wiki que se puede forzar el strech mediante la variable

scale_resolution_aspectratio=SRA_STRETCH;

Quiza mereceria la pena probarlo por si acaso resuelve el problema. Lo he extraido de aqui

http://wiki.bennugd.org/index.php?title=Scale_resolution_aspectratio (http://wiki.bennugd.org/index.php?title=Scale_resolution_aspectratio)


Lo voy a probar, pero tengo entendido que esa variable tiene efecto unicamente cuando se usa scale_resolution, no scale_mode.

Si puedes prueba tambien a cambiar el framebuffer con

fbset -xres 640 -yres 360

o

fbset -xres 1280 -yres 720

para ver si hay alguna diferencia.

Te cambiará la resolucion de la raspberry pero cuando reinicies volvera a la normalidad
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: SplinterGU en Junio 28, 2016, 08:49:47 pm
pero mi resolucion no es 320, es 360

360 x por cuanto?

pensa que el monitor no puede poner la resolucion que uno quiera, y si mantenes el aspectratio y no coincide te van a quedar bandas negras en los costados o arriba y abajo.


es 640 x 360, no lo puse completo porque el ya lo esta usando. Entiendo perfectamente que si no tiene la misma proporcion va a utilizar las bandas negras, pero (ignorando el hecho de que SI estoy usando la misma proporcion) no tiene sentido que las bandas las ponga vertical Y horizontalmente.

claro, tiene sentido en esa resolucion bandas verticales, ya que el modo seria 640x480, y vos estas usando 360 de los 480.

Perdon, tenes razon, no deberia haber bandas verticales.

por otro lado, puede ser una cuestion del hardware, a setmodes extraños a veces hace cosas raras...

proba lo siguiente

scale_resolution=06400480;

antes del set_mode(640,360)
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 29, 2016, 01:18:53 pm
Perdón, no pude probar todo porque me esta andando muy mal despues de unas pruebas que estaba haciendo con la resolucion, y ahora tengo que ver que es lo que rompe todo. Pero voy poniendo lo que encontre, hasta ahora, parece que set_mode no esta cambiando la resolucion de la pantalla:


* cambiar la config de resolucion al OS antes de correr el juego SI tiene efectos en como se muestran las bandas negras alrededor del juego. A menos resolucion, menores las bandas (uno pensaria que el escalado no esta funcionando, pero en realidad es que no se cambia la resolucion de la pantalla, entonces el juego escalado siempre se muestra en el centro)
* Otra prueba de que la resolucion no cambia, es que graphic_info(0,background,g_WIDTH); retorna siempre el ancho de la resolucion del SO y no de la resolcion del juego.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: butcher en Junio 29, 2016, 03:47:32 pm
Perdón, no pude probar todo porque me esta andando muy mal despues de unas pruebas que estaba haciendo con la resolucion, y ahora tengo que ver que es lo que rompe todo. Pero voy poniendo lo que encontre, hasta ahora, parece que set_mode no esta cambiando la resolucion de la pantalla:


* cambiar la config de resolucion al OS antes de correr el juego SI tiene efectos en como se muestran las bandas negras alrededor del juego. A menos resolucion, menores las bandas (uno pensaria que el escalado no esta funcionando, pero en realidad es que no se cambia la resolucion de la pantalla, entonces el juego escalado siempre se muestra en el centro)
* Otra prueba de que la resolucion no cambia, es que graphic_info(0,background,g_WIDTH); retorna siempre el ancho de la resolucion del SO y no de la resolcion del juego.

Esto que me dices me da una pista. La raspberry es un poco tozuda en el uso de resoluciones HD. Si fuera posible, me gustaria probar a desactivar un parametro del arranque. Como usuario root, tendrías que editar el archivo de configuracion de arranque ejecutando:

nano /boot/config.txt

Y al final del archivo añadir:

disable_overscan=1

Despues pulsas Crtl+X para guardar, te pide confirmacion y dices 'si' y reiniciar la raspberry.

Con esa linea le indicamos a la raspberry que intente siempre ir a fullscreen sin bordes. Merecería la pena darle una oportunidad. Si esto ya no funciona me retiro del mundo de la informatica y me dedico en exclusiva a cultivar mis fresas, aunque este año saben bastante insipidas.

Un saludo

Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Junio 30, 2016, 03:30:05 pm
Bueno, no he podido probar lo del disable overscan, pero he probado setear el juego en 640 x 360 sin escalado, para ver si a esa resolucion el juego se ejecutaba a pantalla completa, y no lo hace, set_mode sigue sin cambiar la resolucion de la pantalla, sin importar si la resolucion es chica o no. El juego siempre se ejecuta en el centro de la pantalla, las bandas negras simplemente son la diferencia entre la resolcion del juego con la resolucion del OS.


por el momento, me conformo con cambiar la resolucion del OS antes de entrar al juego. De esa forma, seteando la resolucion a la que va a correr el juego, las bandas negras son minimas.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: panreyes en Octubre 20, 2016, 12:58:00 pm
Holas!

Estoy probando BennuGD en Raspberry PI, ya que PixTudio se le queda grande por ahora. Por ahora, el port de La pesadilla de Ripollés para GP2X funciona bastante bien. Voy a probar algo más grande.

JaViS, ¿podrías añadir este hilo a la web como plataforma no oficial?
Lo digo para que esté más a mano en un futuro.
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Octubre 20, 2016, 07:55:05 pm
Te refieres a la pagina de Downloads? http://www.bennugd.org/node/2
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: panreyes en Octubre 20, 2016, 08:04:50 pm
Sí, esa ahí me refería (no estaba antes, ¿no? xD)
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: JaViS en Octubre 21, 2016, 02:42:13 pm
No estaba, lo agregue ayer
Título: Re:Actualización - version 333 del port BennuGD para Raspberry
Publicado por: XeNoMoRPH en Abril 02, 2017, 06:24:32 am
Buenos dias , según he leido en los primeros post del hilo .. parece que habeis logrado ejecutar el SORR en varias resoluciones .. vereis .. yo estaba probando también con mi PI3 , tengo instalado Retropie v4.2 con EmulationStation , es la última versión que ha salido , el caso es que , si me funciona el juego , con el fichero bgdi-330 ... pero en la pantalla de selección del modo de video  ... solo puedo jugar en modo de video normal a pantalla completa .. me gustaría poder seleccionar con "scanlines" .. si hago eso .. cuando empieza el video-intro del juego se sale al menú de EmulationStation ... he intentado cambiar el fichero  bgdi-330 por este nuevo que publicasteis aqui en su dia: bgdi-333 , pero si  hago eso .. el juego no me arranca tan si quiera .. lo ejecuto desde el Frontend EmulationStation.