Los esenciales

Fernando
Ikzer Dev
Published in
2 min readJan 9, 2017

Una de las ideas principales de este blog es hablar de videojuegos y de cómo hacerlos, pero antes de meterse en cosas serias es necesario comprender lo básico. Hay tres o cuatro juegos que son sencillos en extremo y que sirven para aprender conceptos básicos y para empezar a comprender las tecnologías que se van a utilizar en otros más complejos. Snake, Tetris, Brickles, Pong, Space Invaders, Asteroids… todos esos juegos arcade old-school que todos adoramos y conocemos, que se programan en 15 minutos, pero que ha han tenido que ser pensados antes. Con ellos comenzaré.

Mi versión la haré en principio con JavaScript, aprovechando algunas de las ventajas que ofrece HTML5 (lo principal: que me ahorro el compilar y se puede ver funcionando de inmediato), e igualmente de las ventajas de uno de sus frameworks esenciales: JQuery. Para estos juegos realmente JQuery no es necesario en absoluto, pero tiene implementada una abstracción para la lectura de entrada de teclado que resulta muy útil para ahorrarse un poco de código. Es decir, lo que en JavaScript “puro” sería:

if(evt.keyCode == 37 && d != “right”) d = “left”;

con JQuery se queda en:

if(key == “37” && d != “right”) d = “left”;

No es una diferencia muy importante, pero es por comodidad, trabajar con JQuery es muy fácil y una vez que uno se acostumbra hay ciertas cosas que son automáticas. Y siempre será más bonito escribir menos código.

En principio, estos son los juegos que voy a desentrañar para ir cogiendo práctica en lo que llamaré primera generación o Gen I (ya avanzaremos más):

  • Snake
  • Breakout
  • Pong
  • Tetris
  • Space Invaders
  • Arkanoid
  • Columns
  • Pacman

Todos son minijuegos muy simples, ya más adelante comenzaré con otros más elaborados, e implementaré alguno propio para describir técnicas más avanzadas.

--

--

Fernando
Ikzer Dev

Software Engineer | Game Developer @XanaStudios | @AppZheimer | Bass player | Comic fan | TeamMystic