escrol automatico

Started by Futu-block, September 30, 2011, 09:02:40 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Futu-block

ahí donde queria yo llegar, no se puede y con otros editores grafico que he usado antes si...

pensé que poniendo una cosa como graph_repeat(x); o algo asi si se podia y nos saltamos todo el protocolo del scrol.

para solucionarlo (una imagen que se repite infinitas veces en horizontal y al mismo tiempo tiene un movimiento horizontal) tendremos que coger una imagen del doble de ancho (aunque no necesariamente) de la resolucion horizontal de la pantalla, con tantos dibujos (tiles) como nos permita ese ancho;
iniciamos centrando la imagen en la pantalla y desplazamos al gusto, cuando haya pasado practicamente la imagen entera volvemos a centrar la imagen como hicimos en el inicio y repetimos...

esta es una cosa de la que solia abusar pensando en que habia una formula que me ahorrara todo este jaleo; pero igual me curro una funcion...

lamento los malos entendidos

SplinterGU

bennugd no es un editor grafico...

lo que estas planteando es mucho mas complicado que usar el scroll... y posiblemente menos optimo.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Futu-block

ya veré lo que hago, por lo pront se que no se puede, que no existia lo que queria...

BoMbErLiNk

Puedes hacer lo de las nubes con 2 procesos y un par de lineas de código.

Si la pantalla es de 320 pixeles, el gráfico de las nubes también debe ser de como mínimo 320 pixeles de ancho.
Pones que un proceso empiece en x 0 y el otro en x 320, es muy sencillo, solo debes tener en cuenta que como el centro virtual de la imagen esta en el centro, 160 pixeles, en la posición x 0 se te quedará cubriendo la mitad de la pantalla y la otra mitad fuera y lo mismo para el otro proceso pero por el otro lado de la pantalla, formando una pantalla completa entre los 2.

Si el sentido de desplazamiento es para la izquierda, tendrás que cambiar la X del proceso cuando este completamente fuera de la pantalla, en -160 y tendrás que ponerlo en 320+160, pues el otro proceso en ese instante estara ocupando toda la pantalla.
Para mejorar la precisión de la función puedes calcular el ancho para marcar los limites y así no estar limitado a un ancho fijo.

Futu-block



es buena idea, para eso queria crear una funcion, creo que incluso se podria crear un modulo duplicando el grafico en cuestion; pero si pongo el grafico el doble de ancho me ahorro un proceso, como he comentado antes:

Quote from: Futublock on October 01, 2011, 08:31:28 PM
para solucionarlo (una imagen que se repite infinitas veces en horizontal y al mismo tiempo tiene un movimiento horizontal) tendremos que coger una imagen del doble de ancho (aunque no necesariamente) de la resolucion horizontal de la pantalla, con tantos dibujos (tiles) como nos permita ese ancho;
iniciamos centrando la imagen en la pantalla y desplazamos al gusto, cuando haya pasado practicamente la imagen entera volvemos a centrar la imagen como hicimos en el inicio y repetimos...

esta es una cosa de la que solia abusar pensando en que habia una formula que me ahorrara todo este jaleo; pero igual me curro una funcion...

lamento los malos entendidos

tambien se podria hacer creando y matando procesos pero eso gasta mucha ''luz'' :D

BoMbErLiNk

Bueno en realidad 2 procesos es lo mínimo que puedes pedir para hacer un scroll cíclico manual horizontal, a no ser que quieras tirar de map_block_copy o alguna otra solución, pero el map block va a ser bastante más lento que 2 simples procesos.

Lo de tener 1 solo mapa y tratar de hacerlo cíclico para que coincidan por pixel en pleno movimiento va a ser un poco laborioso (que no difícil), porque solo te valdrá para ese gráfico/scroll concreto y tendras que trabajar el siguiente como nuevo, además ocupará más memoria.

Yawin

Sigo sin entender porqué no se puede emplear un scroll para lo que quiere futu.
Sigue el desarrollo de mi motor RPG: https://www.youtube.com/watch?v=TbsDq3RHU7g

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

SplinterGU

Quote from: Yawin on October 03, 2011, 10:17:02 AM
Sigo sin entender porqué no se puede emplear un scroll para lo que quiere futu.

se puede emplear tranquilamente, solo que futu no quiere... segun intepreto, piensa que es muy dificil...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

KeoH

Futu es un gran tio ... eso si .... muy dificil de entender xDDDDD

Futu-block

bueno, :facepalm: decidem como se hace para enterarme de una vez...

gecko

inicias un scroll con la imagen que queres repetir, y moves el scroll a mano :D :D

asi de simple! :P
Torres Baldi Studio
http://torresbaldi.com