Desarrollo de Juegos en Flash



Muchos diseñadores y programadores suelen subestimar a los videojuegos, considerándolos un mero pasatiempo infantil desprovisto de toda seriedad. Sin embargo, pocas aplicaciones logran explotar al máximo las capacidades de diseño y desarrollo de una herramienta como un juego lo hace.

Consideremos un simple juego de plataformas, donde se requiere entre otras cosas de un desplazamiento (scroll) del fondo a medida que el personaje se mueve por el escenario, una capacidad para detectar colisiones, aplicaciones físicas (velocidad, aceleración, fricción, gravedad), manejo de eventos de sonido, música de fondo y efectos visuales de todo tipo. Y esto en el más simple de los casos. Podríamos hablar de un juego de "avanzada", donde se empleara sonido panorámico, generación de entornos en tiempo real, música funcional que respondiera a determinados eventos, o complejos algoritmos de inteligencia artificial que rigeran el comportamiento de los enemigos.

Décadas atrás, los pioneros en la programación de videojuegos debieron hacer uso de su ingenio para lograr que juegos creíbles y dinámicos pudieran ejecutarse en sistemas de escasa memoria y capacidad de procesamiento. Las limitaciones eran enormes, y se hacía necesario un planteamiento riguroso y austero, enfocado principalmente a un objetivo en concreto: la jugabilidad. Actualmente, Flash se presenta como una plataforma ideal para el desarrollo de todo tipo de juegos, debido entre otras cosas a una integración perfectamente simbiótica del diseño con la programación. Flash ha acercado al usuario medio el mundo del desarrollo de juegos, un privilegio que hace unos años estaba reservado a programadores con un alto nivel y experiencia en lenguajes como Java o C.

Bases y referencias


Existen en la red numerosos ejemplos y tutoriales sobre el desarrollo de juegos basados en tiles (mosaicos). Básicamente se trata de aprovechar la potencia de Actionscript para generar todos los componentes visuales de un juego en base a pequeños bloques que pueden iterarse dentro de una matriz, con el correspondiente ahorro de memoria y procesamiento que esto implica. La técnica no es nueva para nadie, ya que más de una vez hemos usado un pequeño cuadro en formato de mapa de bits para llenar toda una pantalla, en el caso del fondo de una página web o sin ir más lejos, en el papel tapiz de nuestro sistema operativo.



Actualmente, y gracias a la posibilidad de utilizar verdaderas técnicas de programación orientada a objetos en la versión 2.0 de Actionscript, es posible estructurar un juego en diferentes clases, obteniendo códigos más flexibles y fáciles de modificar. La herencia, una de las principales características de la P.O.O, permite al programador ahorrarse enormes cantidades de código en el momento de establecer el comportamiento y las propiedades de los diferentes componentes de un juego. Retomando el ejemplo de un juego de plataformas, se podría crear para el mismo una clase genérica denominada "personaje" y generar luego las subclases "héroe" y "enemigo", cada una de ellas con características propias, pero que a la vez heredaran propiedades comunes de la clase principal. Con sólo editar la clase "personaje", el programador podría modificar y establecer estos comportamientos comunes sin necesidad de editar cada una de las clases.


Sonic recreado en Flash


Aprovechando todas estas ventajas, y teniendo siempre en cuenta que el mejor resultado proviene de una combinación efectiva de estética y rendimiento, el desarrollo de juegos en Flash se convierte en un campo propicio para la experimentación y el aprendizaje avanzado del lenguaje Actionscript y sus técnicas de programación soportadas, al mismo tiempo que se presenta como una brillante oportunidad para aprender o mejorar el manejo de herramientas y conceptos de diseño gráfico y multimedia.



Enlaces recomendados


Técnicas de desarrollo

http://www.video-animation.com/flash_18.php
http://www.cartoonsmart.com/gaming.html

http://www.gotoandplay.it/
http://www.flipcode.com/
http://oos.moxiecode.com/
http://www.tonypa.pri.ee/tbw/flas.html

Juegos online

http://www.ferryhalim.com/orisinal/
http://www.yamago.net/
http://www.flasharcade.com/
http://www.2flashgames.com/
http://www.addictinggames.com/
http://www.ebaumsworld.com/games.shtml
http://www.t45ol.com/index_us.php








Nombre:

Email:

Comentario: