Gestionar procesos con un scroll sin gráficos de fondo

Started by panreyes, July 30, 2012, 10:16:52 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

panreyes

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);

KeoH

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.

panreyes

Lo pensé y lo probé. Se me ralentizó mucho más que generando un mapa con el tamaño de la pantalla :\

emov2k4

Genera la imagen desde código con el tamaño del scroll ! este queda transparente !

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

panreyes

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 :)

SplinterGU

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.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

panreyes

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.

FreeYourMind

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

panreyes

Free, si le pones 0 como gráfico, la región del scroll será de 0x0 píxeles

FreeYourMind

me refiero a tu grafico vacio, si es un grafico nulo sólo esta creando esa región, no esta pintando nada

Yawin

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.
Sigue el desarrollo de mi motor RPG: https://www.youtube.com/watch?v=TbsDq3RHU7g

process main()
       begin
           loop
               pedo();
               frame;
            end
       end

panreyes

Pues no lo entiendo :\


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

Yawin

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.
Sigue el desarrollo de mi motor RPG: https://www.youtube.com/watch?v=TbsDq3RHU7g

process main()
       begin
           loop
               pedo();
               frame;
            end
       end

FreeYourMind

#14
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!]