Bennu Game Development

Foros en Español => Sugerencias => Topic started by: panreyes on July 30, 2012, 10:16:52 AM

Title: Gestionar procesos con un scroll sin gráficos de fondo
Post by: panreyes on July 30, 2012, 10:16:52 AM
He estado un buen rato peleándome al ver que no se mostraba nada en un scroll que hago vacío. El objetivo del scroll es que gestione las coordenadas de los procesos, pero no necesito que tenga un fondo.


Si pongo esto:
start_scroll(0,0,0,0,0,15);
no funciona.


Si pongo esto otro:
start_scroll(0,0,new_map(ancho_pantalla,alto_pantalla,8),0,0,15);
Funciona perfecto. Pero ya tiene que hacer una gestión gráfica del fondo que para mí no es necesaria


[Editado]
Solucionado, gracias a la idea de KeoH y la info de Splinter!
0,0 = background map (salvo procesos que significa "no graph")[/size]0,-1 = screen (ultimo frame+modificaciones directas sobre el framebuffer de pantalla)-1,* = no grafico


Luego, para hacer exactamente lo que quería, tengo que hacer esto:
start_scroll(0,0,-1,-1,0,15);
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: KeoH on July 30, 2012, 11:57:04 AM
Yo para estos casos lo que hago es crear un grafico de 2x2 pixeles transparente y lo pongo de fondo, y q se repita infinitamente. Lo mismo con el primer plano si voy a montar un tileado. El scroll tiene solo los graficos transparentes muy pequeños y repetidos infinitamente.
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: panreyes on July 31, 2012, 11:03:37 AM
Lo pensé y lo probé. Se me ralentizó mucho más que generando un mapa con el tamaño de la pantalla :\
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: emov2k4 on July 31, 2012, 01:46:57 PM
Genera la imagen desde código con el tamaño del scroll ! este queda transparente !
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: SplinterGU on July 31, 2012, 01:49:25 PM
me gustaria saber que queres hacer realmente...
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: panreyes on July 31, 2012, 08:27:47 PM
Exactamente lo que dice el primer post.


Gestionar unos cuantos procesos con el scroll y la cámara, aunque realmente el scroll no tiene que tener ningún fondo de por si.


Si te interesa, descárgate el SVN de pixjuegos (http://code.google.com/p/pixjuegos) y compila el pixfrogger2 :)
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: SplinterGU on July 31, 2012, 09:09:53 PM
es que me pareces quieres hacer una chapuza, el modulo es scroll, y gestiona el scroll de un grafico de fondo... tu estas buscando camaras y procesos que siguen a otros procesos?

o sigo sin entender la necesidad...

me lo descargare.
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: panreyes on August 30, 2012, 09:57:04 AM
Es una chapuza, pero, ¿se puede hacer?


Voy a intentar explicarme mejor una vez más:
No necesito la gestión de gráficos de fondo y foreground del scroll, pero si que quiero su gestión de cámara y posicionamiento de procesos en sus coordenadas.


Hay unas ranas que suben y atraviesan unos caminos, que van desapareciendo por abajo y reapareciendo por arriba. Para hacerlo cómodo lo hago con un scroll, pero realmente sólo lo hago por el posicionamiento y la cámara, no por los gráficos del scroll. La cosa es, ahora mismo inicializo el scroll de esta forma:


start_scroll(0,0,new_map(4,4,8),0,0,15);


Para crear un scroll que cubra toda la pantalla, con bucles horizontal y vertical, y con un gráfico vacío.


Tal como está ahora tiene que hacer la gestión de redibujar continuamente ese gráfico vacío y sus diferentes repeticiones a lo largo de todo el scroll visible, y los FPS que malgasta me vendrían muy bien en ports como el de Android. Me gustaría poder hacer esto:


start_scroll(0,0,0,0,0,15);


El objetivo es: que gestione todo, haga una región del scroll de toda la pantalla, con bucle horizontal y vertical, PERO que no tenga que malgastar tiempo de cpu redibujando un fondo inútil.
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: FreeYourMind on August 30, 2012, 10:37:48 AM
no creo que malgastes muchos fp's al dibujar algo que no existe! Yo miraria el src de bennu en el pintado para ver si realmente gasta al cpu en esa funcion si el grafico no existe.

De todas formas es facil de comprobarlo, comparas el fps con scrolls vacios y sin ellos a ver si hay diferencias
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: panreyes on August 30, 2012, 11:20:13 AM
Free, si le pones 0 como gráfico, la región del scroll será de 0x0 píxeles
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: FreeYourMind on August 30, 2012, 12:39:47 PM
me refiero a tu grafico vacio, si es un grafico nulo sólo esta creando esa región, no esta pintando nada
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: Yawin on August 30, 2012, 03:51:17 PM
En mi motor de tiles medio acabado, uso un scroll sin gráfico para gestionar el tema de la cámara que se mueve y no sacrifica fps.
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: panreyes on August 30, 2012, 04:15:05 PM
Pues no lo entiendo :\


Yo si hago un scroll con gráfico 0 no se me muestra para nada.
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: Yawin on August 30, 2012, 04:19:05 PM
Claro, si no le pones gráfico, qué va a mostrar?
Yo lo utilizo para no tener que programar todo el motor de seguimiento al proceso con la cámara asignada.
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: FreeYourMind on August 30, 2012, 04:42:46 PM
Quote from: PiXeL on August 30, 2012, 04:15:05 PM
Pues no lo entiendo :\


Yo si hago un scroll con gráfico 0 no se me muestra para nada.

[editado: por sos groso! sabelo!]

(http://i277.photobucket.com/albums/kk60/cabri_taringa/WWE02BuenPost.png)
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: KeoH on August 30, 2012, 06:26:24 PM
Quote from: PiXeL on August 30, 2012, 04:15:05 PM
Pues no lo entiendo :\


Yo si hago un scroll con gráfico 0 no se me muestra para nada.

Pero si en el scroll le pones q use un grafico cuyo graph es 0 y cuyo file es 0 ... no estas usando el Background?? xD
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: Yawin on August 30, 2012, 06:45:20 PM
Claro, pero los archivos .fpg suelen empezar por 1 xDD
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: panreyes on August 30, 2012, 11:44:47 PM
Quote from: KeoH on August 30, 2012, 06:26:24 PM
Pero si en el scroll le pones q use un grafico cuyo graph es 0 y cuyo file es 0 ... no estas usando el Background?? xD


Acabo de cagar un ladrillo :|


He iniciado el scroll con los "gráficos" -1 y -1, y, en la versión HD, he conseguido una mejora de fps notable, de 12 a 19 :D


[EDITADO]
AFUA!!! :D Y en la versión MD ya va a 25fps sin frameskip! GENIALÉRRIMO!!
Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: SplinterGU on August 31, 2012, 12:53:09 AM
perdon por no seguir el tema... (atencion kloppix para la wikipedia)

0,0 = background map (salvo procesos que significa "no graph")
0,-1 = screen (ultimo frame+modificaciones directas sobre el framebuffer de pantalla)
-1,* = no grafico

Title: Re:Gestionar procesos con un scroll sin gráficos de fondo
Post by: Kloppix on August 31, 2012, 11:08:06 PM
No lo he agregado a la Wiki pero no por flojo sino porque estoy perdido  :(

No estoy seguro si comprendí lo que quiere hacer Pixel. No entiendo a que se refiere con que start_scroll(0,0,new_map(4,4,8),0,0,15) funciona mientras que start_scroll(0,0,0,0,0,15) no. Me refiero a que debería dar el mismo resultado. Tampoco vi diferencia en los fps al utilizar -1. Claro, todo esto fue con código propio.  Mañana me bajo el frogger2 y me pongo a experimentar.