He avanzado un poco en el videojuego "Annunaki" (hecho en BASIC usando 8BP) y quiero compartir avances y un consejo de programación.
Os quiero contar la diferencia entre:
c = c + 1: IF c=4 THEN c=1
y
c = c mod 3 +1
A primera vista parecen lo mismo, pero si estamos programando en BASIC debemos ser muy cuidadosos. La primera opción consume 2.6 milisegundos mientras que la segunda consume solo 1.84 ms
Un buen programador debe elegir la segunda opción. Pensad que vuestro videojuego esta lleno de instrucciones y si cada buena elección representa un ahorro de 1 ms o medio milisegundo , cuando se acumulan instrucciones puede haber una gran diferencia, sobre todo en juegos de arcade que requieren velocidad. Intentad siempre reducir complejidad computacional (número de instrucciones) y elegirlas bien (las que consuman menor tiempo). Programar es un arte.
Para medir el tiempo que consume un comando usad un programa como este:
10 MEMORY 26999
11 DEFINT a-z
12 c%=0: a=2
40 a!= TIME
50 FOR i=1 TO 1000
60 AQUI PONEIS LA INSTRUCCION QUE QUEREIS MEDIR
70 NEXT
80 b!=TIME
90 PRINT (b!-a!)
100 c!=1000/((b!-a!)*1/300)
110 PRINT c, "fps"
120 d!=c!/60
130 PRINT "puedes ejecutar ",d!, "comandos por barrido (1/50 seg)"
140 PRINT "el comando tarda ";((b!-a!)/300 -0.47);"milisegundos"
y ahora, un aperitivo, de lo que se puede hacer con 8BP y un poco de BASIC (imagen y video)
Esto promete!
ResponderEliminar