PROGRAMACIÓN DE VIDEOJUEGOS:

Pensar en programar un video-juego a principios de los años 90 implicaba muchos conocimientos del lenguaje C, C++ y sus variantes del mercado. Si nos remontamos todavía un poco más en el tiempo, alrededor de los años 70 y 80, son muchos más aún los conocimientos que había que tener para diseñar una interfaz, dado que no había discos de almacenamiento, con lo cual todo lo que se programaba iba directamente a las placas de memorias, que no eran otra cosa que chips. Assembler era el lenguaje elegido por aquel entonces para escribir el código de los videojuegos. Pero el tiempo pasa, y hoy en día todo es rotundamente distinto de lo que fue en sus inicios.
En la actualidad, a la hora de programar juegos, contamos con herramientas gráficas que nos permiten acelerar procesos de desarrollo, plugins o SDK para lenguajes de programación conocidos que nos facilitan muchas cosas. Además, hay especialistas en distintas áreas, que harán que el desarrollo de un videojuego llegue al público para el cual se planificó; y hasta tenemos centros de enseñanza de programación y creación de videojuegos, con certificaciones no oficiales y oficiales, lo cual hace mucho más interesante la cuestión de aprendizaje. Tampoco podemos dejar de considerar el crecimiento que esta rama informática vivió en el último lustro. En 2005, el mercado de videojuegos logró ventas por 32,6 billones de dólares, mientras que para principios de 2011 ya se había duplicado esta cifra, con ingresos de 65,9 billones de dólares.
CONDIMENTOS PARA UNA RECETA EXITOSA
Al inicio de esta era, un equipo de desarrollo de videojuegos contaba con no más de tres o cuatro personas. Hoy, dada la complejidad y la realidad que tienen los juegos, un proyecto de videojuego puede requerir entre 20 y 300 personas, y también se llegan a invertir sumas de dinero cercanas a cualquier superproducción de Hollywood. Para llevar a cabo un videojue-go que busque un lugar en este mercado tan surtido, se debe tener en cuenta una serie de parámetros específicos por cumplir, como así también es preciso pensar en desarrollarlo para más de una plataforma.
Debemos considerar, además, que determinados mercados requieren de una inversión previa, como el de Apple, para el cual hay que suscribirse como desarrollador, y nuestra aplicación, una vez terminada, debe pasar por un análisis de la empresa para saber si puede ser incluida en su AppStore.
UN ABANICO DE MERCADOS
Hasta no hace muchos años, el mercado de los videojuegos se limitaba a las computadoras de escritorio. Las consolas de videojuegos generalmente tenían sus propios desarrollos y, a lo sumo, una o dos empresas que tercerizaban juegos para las principales compañías. Sin embargo, los portales sociales, el avance de la nanotecnología y la mejora de los teléfonos celulares lograron ampliar el mercado hasta rincones impensados. Hoy podemos encontrar videojuegos para PC, portales web, Facebook, teléfonos celulares, reproductores MP4, tablets y consolas como Nintendo, PlayStation y XBox, y sus derivados portátiles. Tratar de abarcar todas estas posibilidades es casi imposible, ya que el mercado de celulares, a su vez, se divide en diferentes sistemas operativos, con lo cual cada uno de ellos lleva especificaciones distintas que aprender.
HAY EQUIPO
El equipo de desarrollo de un videojuego se divide en varios sectores, los cuales veremos en detalle a continuación:
? Programadores: es el equipo encargado de codificar la aplicación, trasladar las ideas de movimientos y efectos del juego a
la realidad y, a su vez, de aprender a manejar las APIs de cada plataforma donde el juego se ejecutará. Los principales lenguajes de programación utilizados por las grandes compañías son C++, C# y sus variantes. Para las plataformas online de video-juegos y para los juegos multiplataforma se elige JavaScript y Java, respectivamente.
? Artistas y diseñadores: el trabajo que llevan adelante estos chicos implica plasmar en la realidad los ambientes que un gamer espera encontrar en el videojuego elegido. Son quienes piensan y crean todo el arte relacionado al juego: personajes, armas y niveles; y también, quienes idean los efectos especiales que se generan durante la partida, que luego deben trasladar a los programadores para que ellos los hagan realidad mediante el código de la aplicación. El software comúnmente usado por estos artistas abarca las aplicaciones de modelado en 3D y los packs de animaciones, que incluyen 3DS Max, Maya, Lightwave y Softlmage XSI.
? Escritores: tienen la difícil tarea de redactar la historia y el guión completo que sustenta al videojuego. También deben idear los ambientes y escribir el manual del juego. Generalmente, esta rama de escritores se desempeña de manera freelance, dado que muchos buscan especializarse dentro de un campo de videojuegos limitado. Un mismo escritor no suele escribir el guión de una batalla espacial y de un videojuego relacionado con el deporte.
? Ingenieros de sonido: esta área se ocupa de darle vida y realismo a una escena del videojuego. Las personas encargadas de hacerlo suelen tener un panorama de cómo se desarrollará la partida, para ir pensando, ubicando y creando la música relacionada con ella. Luego, deben ir viendo los avances en programación para poder ir personalizando, agregando o quitando sonidos, como también crear la música de fondo que ambienta la partida de cada nivel.
? Team leaders: los líderes de equipo son quienes dirigen la orquesta total del resto de los equipos. Se entrevistan con los escritores y artistas, y llevan el concepto formado a los diseñadores y programadores para facilitar lo más posible las tareas de estos últimos. También deben tener un feedback constante con el equipo de marketing, que hará el trabajo fino de publicitar el videojuego.
DAR LOS PRIMEROS PASOS
Si buscamos ser programadores de video-juegos, no podremos lanzarnos de lleno en este mercado a programar un juego estilo Quake sin antes haber dado un pan-tallazo general de los distintos tipos de temáticas que existen. Debemos comenzar a ver y experimentar la programación con juegos básicos como Pong, Pac-man o Breakout, y luego ir explorando horizontes con algo más de complejidad, como una aventura estilo Donkey Kong o Super Mario. Después, es posible saltar en un tercer nivel a desarrollar una aplicación de carreras o un juego estilo Doom, y por último, llegar a desarrollar complejas aventuras, como Crisis o PES. En todas estas plataformas encontramos algo en común: la física. Conocer bien las matemáticas y los efectos que provocan fricción, saltos, caídas libres, colisiones, explosiones y movimientos de partículas son los principales componentes que todo juego tiene en mayor o menor escala.
HERRAMIENTAS DE MERCADO
Dada la globalización que Internet trajo en todo el mundo, y los avances en cuanto a tecnología se refiere, hoy podemos contar con herramientas sencillas para desarrollar desde simples videojuegos hasta completas aventuras gráficas. Veamos a continuación lo que el mercado nos ofrece.
GAME MAKER
Esta aplicación nació por accidente de la mano del profesor Mark Overmars, quien la desarrolló íntegramente en Delphi, en un principio, como herramienta didáctica para las cátedras de diseño de videojuegos. Luego acopló en su interior un complemento de programación, para poder explicar mejor cómo se desarrolla un videojuego en cuanto a física. La primera versión fue liberada en 1999, y actualmente se encuentra por la 8.1, que se puede descargar y probar en forma gratuita desde la Web. La versión Pro de esta herramienta incluye desarrollo de escenarios 3D, y explota a fondo el uso de su propio lenguaje de programación, GML, el cual se asimila mucho a C++ y promedia su licencia en unos 50 dólares. Si bien Game Maker es criticada en la mayoría de los foros o portales que manejan la temática del desarrollo de juegos, destacamos esta herramienta porque fue creada por un profesor en la materia y no, por una empresa comercial.
RPG MAKER
Esta aplicación llegó al mercado en su versión RPG Maker 95. Permite crear nuestros propios videojuegos de rol, e incluye de fábrica un RunTime Package, con gráficos para mapas, personajes, sonidos, efectos y demás recursos destinados a crear nuestros propios juegos. Existe una comunidad muy grande en torno a esta App, donde se comparten las creaciones de los usuarios para que otros puedan aprovecharlas en sus trabajos. Las versiones para Windows de esta aplicación incluyen una importante base de datos prearmada con eventos básicos personalizables, los cuales podremos aplicar a nuestros desarrollos para lograr cualquier tipo de juego, hasta los de plataforma, como Legend of Zelda y Super Mario Bros. Su última versión lanzada al mercado salió bajo el nombre de Action Game Maker.
THE GAME CREATORS
Esta web incluye un set de herramientas para quienes desean crear videojuegos. Abarcan todos los aspectos, desde el diseño y la animación, hasta la codificación, e incluyen aplicaciones como DarkBasic, FPS Creator, 3D Gamemaker, y otras, que permiten llevar a cabo cualquier desarrollo que tengamos en mente. Su uso requiere de mucha práctica previa y de que uno tenga la capacidad de manejar más de un área de conocimientos, como el diseño y la programación.
M.U.G.E.N.
Este es un motor para desarrollar videojuegos orientados a la lucha en dos dimensiones. Su distribución es gratuita, siempre y cuando los desarrollos llevados a cabo no sean comerciales. El motor permite cruzar personajes de distintas aventuras gráficas y enfrentarlos entre sí en batallas al mejor estilo Mortal Combat.
XNA GAME STUDIO SDK
Esta plataforma desarrollada por Microsoft permite la creación de videojuegos para todo tipo de plataformas que la empresa de Redmond tiene en el mercado: PC, XBox y WP7. El entorno de desarrollo se basa en Visual C#, y desde su versión Express se pueden llevar adelante desarrollos de videojuegos de cualquier estilo bajo una API potente e importante, como la que Microsoft propone. Esta plataforma es gratuita para todo programador, con lo cual no hace falta invertir dinero en ella para estudiarla.
EPÍLOGO TEÓRICO
Hasta aquí hemos encarado un reducido análisis de las opciones que el mercado pone a nuestra disposición para adentrarnos en el maravilloso mundo de los videojuegos. Si bien hay muchas más, variadas y para todos los gustos, dedicarle un párrafo a cada una de ellas nos llevaría, al menos, un libro. Sin embargo, hemos reservado dos interesantes herramientas para la próxima edición, donde veremos las bases necesarias para poder crear nuestros propios juegos, personales o comerciales.