ACMCrossroads / Espanol / Xrds13-2 / 

Preparándose para un trabajo dentro de la Industria de los Videojuegos: Una entrevista con Colt McAnlis de Ensemble Studio

Article Glyph

por James Stewart

Traducido por Pier Paolo Guillén Hernández

En el 2004, Colt McAnlis trabajó como un becario dentro de Petroglyph Games mientras terminaba su licenciatura en Ciencias de la Computación por la Universidad Cristiana de Texas. En el primer cuatrimestre del 2005, se convirtió en un programador de gráficos en TKO Software. Para el cuarto cuatrimestre del mismo año, aceptó una posición dentro de Ensemble Studios de Microsoft. Además de sus tareas como programador, McAnlis es un conferencista en Guildhall de SMU, un programa para posgraduados que está enfocado en el desarrollo de videojuegos.

Durante una entrevista en Mayo de 2006, McAnlis nos ofreció algunos consejos, a menudo directos e irreverentes, dirigidos a todos los estudiantes que desean llegar a algún puesto dentro de la industria de los videojuegos.

Suponiendo que estás en el primer año de licenciatura y te interesa ingresar a la industria de los videojuegos. ¿Cómo puedes empezar? Te diré una cosa: debes ser uno de los mejores programadores de juegos para poder entrar en esta industria. Si es tu primer año de licenciatura y apenas estás comenzando, tienes bastante terreno que recuperar. No diré que ya es demasiado tarde, pero hay personas que empiezan desde los diez años. Aquellos que empiezan temprano generalmente les va mejor. Aunque si tienes suficiente motivación, empezando en primer año de la universidad te puede ir bien. Pero no puedes ser flojo. Esta no es una industria con vacantes para programadores mediocres.

¿Qué estudios son los más importantes para alguien que quiere ser programador? Si vas a comenzar la universidad, y quieres entrar a la industria como programador, mi recomendación es que estudies matemáticas aplicadas. Así de simple y sencillo. Si estudias ciencias de la computación, no vas a tener todo el sustento matemático que es indispensable en esta industria. No es que necesites saber de memoria Cálculo III, pero es importante que puedas adaptar todo ese conocimiento para resolver problemas complejos. Estudia una licenciatura en matemáticas y toma tantas clases de ciencias de la computación como te sea posible. ¿Sabes cómo se aplican las leyes de Newton de un cuerpo sólido dentro de un fluido viscoso? Este tipo de cosas son las importantes en los juegos de siguiente generación - y no tanto si sabes o no cómo utilizar estructuras de datos mediante STL.

¿Qué opinas de los programas de estudio especializados para el desarrollo de juegos? Creo que las escuelas de videojuegos son una gran idea. Nos dan mejores programadores. Espero que la siguiente generación de programadores sea mejor que yo. No me importa que les duplique en cuanto a experiencia: espero que salgan de estas escuelas con el doble de experiencia. Lo que me tomó cinco años aprender, porque lo tuve que aprender por mi cuenta, espero que estos estudiantes lo vean en un semestre - y espero que además sean verdaderamente buenos. Si alguien estudio en una escuela de desarrollo de videojuegos y no es extraordinariamente bueno, me pongo a pensar "¿Qué hiciste durante esos cuatro años?"

¿Alguna desventaja de asistir a una universidad especializada? Un gran problema es que pretenden ofrecer una educación académica prestigiosa en una industria caótica, donde quienes trabajan en ella no toman nada más que Montain Dew y trabajan hasta las tres de la madrugada. Las escuelas que puedan adaptarse y estar en cambio constante son las que serán mejores para los estudiantes.

¿Existe alguna forma de saber cuales escuelas valen la pena? ¿Tienen profesores reconocidos y experimentados? ¿Qué tipo de investigaciones realizan? Si tienes a un profesor que enseña gráficos y el motor gráfico que utiliza es de hace cuatro años, no vale la pena. Ahora, si te puede decir todo lo que ha sido publicado sobre un motor gráfico que ni siquiera ha salido al mercado, y no solo eso, sino que además sabe cómo funciona, entonces tienes un buen profesor. Ese es alguien que te conviene aprovechar, ya que tiene la motivación para mantenerse actualizado además de dar clases.

¿Qué tipo de programadores se necesitan? Estamos en una época de especialización. Las compañías no buscan un programador general. Buscan programadores en redes, en inteligencia artificial, en gráficos, en desarrollo de herramientas. La especialización es la nueva forma de entrar a la industria. Si sólo eres un programador regular, no hay un lugar para ti.

¿Qué tipo de especialización es la más solicitada? Lo puedes ver en cualquier sitio de clasificados - todos están buscando quien desarrolle gráficos y herramientas.

¿Qué es lo que hace un programador de herramientas? Si estás integrándote al equipo como un programador de herramientas, tu trabajo es conocer todo el proceso necesario para llevar los contenidos artísticos desde Max o Maya o Photoshop, hasta que quede integrado dentro del juego. Si se hace algún cambio, debes estar ahí. Necesitas programar exportadores; necesitas programar convertidores. Cuando se refieren a un programador de herramientas, se están refiriendo a un programador de herramientas de contenido: alguien que sepa un poco de MaxScript, un poco de Maya, alguien que conozca a fondo los formatos .obj y .ase y como leer y cargar estos archivos. Tiene que entender las transformaciones en 3D y saber calcular normales.

¿Cómo te preparas para ser un programador de herramientas? Tienes que ser un dios en C#. Simplemente hazlo. C# te permitirá crear y tener funcionando las herramientas en un tiempo más corto que cualquier otra herramienta que yo conozca. Y no sólo desde el punto de vista gráfico, sino también en contenido. En definitiva es el lenguaje del futuro en cuanto a programar herramientas se refiere, o por los menos por los próximos 5 a 10 años. Si no empiezas a desarrollar en C# desde ahora, vas a tener una desventaja considerable. Todavía creo que C++ se mantendrá como la parte principal del desarrollo de juegos por muchos años, pero necesitas C# para crear herramientas rápidamente.

Hablemos de portafolios. ¿Tienes algunos consejos para preparar un demo? Tienes que trabajar para que sea lo más completo posible. Debes de tener demos que muestren lo básico, y debes tener demos que demuestren tus habilidades - cosas que no son simples copias de los ejemplos de DirectX. Tienes que investigar. Debes ampliar tu visión. Encontrar algo que te haga sobresalir de todos los demás. Tengo miles de currículums de recién graduados y todos dicen lo mismo. La única diferencia es cual fue su proyecto final. No tienen trabajos extracurriculares. ¿Qué hacen mientras están en casa? ¿Trabajan en cosas alocadas? Deberían.

¿Que tan importante es conocer a gente dentro de la industria? Entre más conozcas, mejor. Es como en Hollywood. Siempre es bueno tener a alguien dentro de la industria que te respalde. Es muy importante saber aprovechar el tiempo en conferencias como el GDC (Game Developer's Conference - Conferencia de Desarrolladores de Videojuegos). Existe mucha información útil y muchas oportunidades de hacer contactos valiosos.

Supongamos que no conoces a nadie en la industria. ¿Cómo consigues contactos? Una buena estrategia es simplemente hablando con ellos. No todos pueden pagar una entrada al GDC, pero la mayoría tiene una cuenta de correo. Antes de poder entrar a la industria, solía bajar presentaciones del SIGGRAPH y conferencias similares, buscaba dos o tres temas que me interesaran, o de los que tuviera ideas, y les escribía a los autores. Si podía mantener una conversación por dos o tres meses, entonces les decía "Oye, voy a ir a tal conferencia. Me gustaría verte para platicar de esto y aquello" y después iba y los conocía. Si no conoces a las personas, tienes que ir y buscarlas.

La última pregunta: ¿Cómo puede saber un estudiante cuándo está listo para entrar a la industria? Para cualquier especialidad, existe una prueba universal: si puedes reproducir lo que ves en un juego comercial - ya sea en gráficos o redes o IA o cualquier otro tema - si puedes ver el juego y decir "Puedo hacer lo mismo" es cuando ya estás listo para entrar en la industria en esa área. Hasta que llegue ese momento, no estás listo.

Traductor

Pier Paolo Guillén Hernández (pier@nibbo.net) es Ingeniero en Electrónica por parte de la Universidad Panamericana campus Bonaterra. También es Director de Programación y cofundador de Nibbo Studios (www.nibbo.net), una empresa mexicana de desarrollo de videojuegos.

Copyright 2009, The Association for Computing Machinery, Inc.