Crea tus Juegos con 8BPCursos

8BP: Técnica de lógicas masivas

5
(2)

Hola amigos de 8 Bits de poder, en este capitulo de nuestra entrega semanal vamos a hablar sobre la técnica de las lógicas masivas y como podemos hacer uso de la misma.

Descubre 8 Bits de Poder

A menudo vas a necesitar mover muchos sprites, sobre todo en juegos de arcade del espacio o de estilo “commando” (el clásico de Capcom de 1985).

[AMSTRAD CPC] Commando - Review & Longplay(*)
Commando para Amstrad CPC canal YouTube de Xyphoe

Técnica de lógicas masivas con 8BP

Podrías actuar por separado en las coordenadas de todos los sprites y actualizarlas usando POKE, pero resultaría muy lento, inviable si quieres fluidez de movimientos. Lo más recomendable (y sencillo) es hacer uso combinado de las funciones de movimiento automático y de movimiento relativo, que son |AUTOALL y |MOVERALL respectivamente.

La clave de lograr velocidad en muchos sprites es utilizar la técnica que he bautizado como “lógicas masivas”. Esta técnica consiste fundamentalmente en ejecutar menos lógica en cada ciclo de juego (lo que se denomina “reducir la complejidad computacional”) y para ello hay varias opciones:

  • Usar una sola lógica que afecta a muchos sprites a la vez (usando los flag de movimiento automático y/o relativo)
  • Ejecutar varias tareas, pero solo una de ellas o unas pocas en cada ciclo del juego, usando aritmética modular (u operaciones binarias) en cascada.
  • Introducir limitaciones en el juego que no sean importantes o no afecten a la jugabilidad, para reducir el numero de tareas que se ejecutan en cada ciclo de juego o simplificar las tareas de modo que se ejecuten mas rápido.
  • Como norma general, reduce el numero de instrucciones por las que pasa tu programa en cada ciclo de juego, reemplazando a veces algoritmos por precálculos o poniendo mas instrucciones para lograr (paradójicamente) que se ejecuten menos cada ciclo.

Estas ideas tienen un mismo objetivo: ejecutar menos lógica en cada ciclo, permitiendo que todos los sprites se muevan a la vez, pero tomando menos decisiones en cada ciclo del juego.

Tecnica-de-logicas-masivas

A esto se le llama “reducir la complejidad computacional”, transformando un problema de orden N (N sprites) en un problema de orden 1 (una sola lógica a ejecutar en cada fotograma).

La clave está en determinar qué lógica o lógicas ejecutar en cada ciclo. En el caso más sencillo, si tenemos N sprites simplemente ejecutaremos una de las N lógicas. Pero en casos más complejos deberemos ser astutos para determinar que lógicas conviene ejecutar.

¡Genial! en la próxima entrega semanal de 8 Bits de Poder hablaremos sobre como mover hasta 32 sprites en pantalla haciendo uso de las lógicas masivas. !Hasta la próxima semana!

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Mostrar más

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Publicaciones relacionadas

Botón volver arriba