Yo soy un pardillo, pq nunca he utilizado el método, pero como te expliqué,
CREO que el principio es este:
Para empezar, creo que lo que quieres utilizar son copy's y no sprites (con
sprites es mucho más facil, más rápido pero te quedan peores gráficos y tiene
algunas limitaciones).
-Debes utilizar 2 páginas del screen5 para la acción (supongamos la 0 y la 1)
-Colocas todo lo que quieras mostrar en las 2 páginas (pero los elementos
móviles solo en la 0)
-Muestras la página 0
-Una vez calcules la nueva posición de todos los elementos móviles de la
pantalla, colócalos en la página 1 (sin dejar de visualizar la 0).
-Visualiza ahora la página 1 (donde ya hay hechos todos los cambios, o sea,
que lo que guarrees no se ve hasta que cambies de página. Así no hay parpadeo.
-Restaura el fondo de la página 0, calcula la nueva posición de todos los
elementos móviles de la pantalla y colócalos en la página 1 (sin dejar de
visualizar la 0).
Y así sucesivamente. Espero que la explicación te sirva de algo.
Asi es como se hace. Lo mas normal para restaurar el fondo es copiar
previamente el fondo a un buffer, para despues volverlo a poner. Algunas
optimizaciones para conseguir mas velocidad pueden ser las siguientes:
- Colocar todo tambien en la pagina 2 y restaurar el fondo desde esta.
Esta opcion solo es valida si te sobra mucha VRAM que no suele ser el caso
casi nunca.
- Remapear el fondo del personaje. Si el fondo esta definido mediante
patrones puedes volver a escribir los patrones que hay debajo del
personaje. Esta opcion puede ser un poco mas lenta que la anterior debido
a que el vdp tarda mas tiempo en hacer varios copys pequeños que uno
grande, y ademas normalmente se tendran que copiar mas bytes que la
anterior.
Roberto Vargas.