BennuGD packager

Started by josebita, August 19, 2012, 11:13:44 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

josebita

#15
Quote from: emov2k4 on August 21, 2012, 07:44:30 PM
Joseba, el fpg esta sin comprimir !! puedes probar en tu dispositivo android

https://dl.dropbox.com/u/97766522/demo.apk

dentro también va el código fuente....
Gracias por pasármelo. Renombrando el demo.dcb a main.dcb funciona sin problemas en mi emulador (he probado ICS_x86/JB_arm, vienen bien los enlaces en el menú :) ).

Una cosa: lo de ponerlo en orientación horizontal no vale con set_mode(800, 480), hay que tocar alguna cosita más. Y, como siempre digo, lo ideal sería no llamar a set_mode en absoluto para que el móvil se pusiera a su resolución nativa.

Me anoto añadirle al empaquetador:
* Negarse a empaquetar si no encuentra main.dcb
* Añadir menú para elegir orientación del juego (normal/apaisado).
* Botoncito para matar ADB (si abres una máquina virtual, la matas y abres otra, a veces a las herramientas de desarrollo de Android les cuesta enterarse de que hay una nueva abierta y el empaquetado falla).
* [Pa un poquito más tarde] Descompresión automática de FPGs, FNTs y similares.

panreyes

Pégale un vistazo a mi manifest si quieres para lo del modo portrait, y con un simple gunzip podrás descomprimir los recursos.

josebita

Quote from: PiXeL on August 21, 2012, 08:42:08 PM
Pégale un vistazo a mi manifest si quieres para lo del modo portrait, y con un simple gunzip podrás descomprimir los recursos.
gracias. Lo tengo yo tb por algún sitio, pero lo miraré en tu manifest, que lo tengo más a mano :)

Y lo otro preferiría hacerlo con librerías de python: andar lanzando comandos de consola es un lío cuando uno pretende que funcione en varios sistemas. Yo diría que he encontrado las rutinas para hacerlo pero tengo que ver qué tal va.

KeoH

yo el SDK lo tengo en linux, asi q tendré q esperar para probar el BennuGD Packager cuando lo pases al pinguino xDDD porq lo tenia configurado para windows pero no se que he hecho q me lo he cargao xDD

KeoH

Joseba ... para saber la resolucion nativa del telefono ... se podria usar las funciones del mod_map (creo q era de ese modulo) que averiguan el ancho y alto de una imagen, y usarlo sobre el background?? .. asi sabrias la resolucion a la que arranca el telefono y despues hacer set_mode correctamente no?? xDD no se teorizo xDD

emov2k4

sin usar el set_mode no se me ven los graficos en pantalla del PC , pero si funciona en android !!! por fin !!! muchas gracias Joseba !

josebita

#21
Quote from: emov2k4 on August 21, 2012, 09:36:14 PM
disculpa mi ignorancia, pero si no declaro set_mode como le digo que el juego es de 32bits ? trate con graph_mode = MODE_32BITS; pero aun asi no me muestra nada en pantalla !
Yo diría que todos los móviles relativamente modernos (android 2.3 en adelante) van en modo de 32 bits.

Para lo del set_mode puedes hacer:


// Casi seguro que android es el 1003
if (OS_ID != 1003)
    set_mode();
end


Para saber las dimensiones de la pantalla:
graphic_info(0, 0, G_WIDTH);
graphic_info(0, 0, G_HEIGHT);


Las resoluciones típicas que usan la mayor parte de teléfonos y su "denominación Android" son:
    * 240x320: ldpi (mi tattoo usa ésta, pero me da la impresión de que no salen muchos teléfonos que la usen ya)
    * 320x480: mdpi
    * 480x800: ldpi es la típica de teléfonos gama media-alta


Hasta que no tengamos blitter OpenGL yo te diría que no te metieras a resoluciones más altas porque en cuanto hagas un fade y un par de scrolls va a ir MUY lento.


PD: Lo de que estuviera la pantalla en negro al hacer set_mode ¿puede ser porque estuvieras haciendo set_mode(800, 480) en lugar de set_mode(480, 800)?
PD2: La info de resoluciones la he sacado de aquí: http://developer.android.com/guide/practices/screens_support.html

KeoH

Quote from: emov2k4 on August 21, 2012, 09:41:58 PM
sin usar el set_mode no se me ven los graficos en pantalla del PC , pero si funciona en android !!! por fin !!! muchas gracias Joseba !

En PC si se ven ... a 320x240 creo q se pone por defecto. Creo q no sale si no importas la mod_video

emov2k4

gracias por las respuestas, otra duda... el mouse.left no esta activo ? no me funciona !

josebita

Quote from: emov2k4 on August 21, 2012, 10:25:17 PM
gracias por las respuestas, otra duda... el mouse.left no esta activo ? no me funciona !
importa la mod_multi.
SDL2 no establece mouse.left cuando hay un evento de tipo touch de forma que he tenido que incluir una pequeña capa de compatibilidad en la mod_multi

SplinterGU

y como lo implementas joseba?
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

josebita

Quote from: SplinterGU on August 21, 2012, 11:04:15 PM
y como lo implementas joseba?
cuando SDL manda un evento touch lo proceso normalmente en mod_multi pero además hago el glodword(mouse.left)=1 pero sólo para el primer dedo, claro.

Si hay más de uno y se quiere usar hay que usar la mod_multi normalmente.

SplinterGU

mmm... si hay varios, y solo mouse es 1 solo, cuando pulso varios a la vez, cual dedo seria mouse es indefinido... cierto?

expandiste mouse a un array? o sigue siendo una struct de 1 elemento? me refiero a que tengo mouse[0], mouse[1], etc... para cada dedo? o es mouse para 1 (sea cual sea) y luego tengo los otros accesibles a traves del api de multitouch?

o tenes mouse y luego expandiste coords x e y?

creo igual que toda expansion haria incompatibles los dcbs actuales...

como lo implementaste?

otra opcion seria una nueva estructura tipo touch[N], donde se puedan especificar los dispositivos touchs... con los siguientes miembros (al menos)

cant;
x[N];
y[N];

donde N es la cantidad maxima de coordenadas, para hacerlo generico podria ponerse 10.

pero no se, pregunto como lo implementaste, que seguramente ya me comentaste alguna vez, pero no soy bueno recordando.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Outlaw

Muchas gracias Joseba!!!!! Super karma para vos!!!!!
"Life is cheap when the bounty is high"

josebita

Quote from: Outlaw on August 21, 2012, 11:47:32 PM
Muchas gracias Joseba!!!!! Super karma para vos!!!!!
gracias :) el port aún tiene fallos importantes pero creo que lo podeis ir usando para desarrollar juegos. Aún así lo libero en binario para que podais ir usándolo y que tengais juegos chulos que enseñarme cuando saque la release definitiva :)