pctroll { jorge palacios }

desarrollador de juegos, programador, investigador de IA

Diario: Impresiones del curso IA para Juegos (toma I)

flocking

He estado entrando como oyente a las clases de Inteligencia Artificial para Juegos de la profesora Carolina Chang, y aquí un resumen de las primeras cuatro semanas de clase.

Lo primero que hizo, muy responsablemente, fue letrar al curso en cuanto a la Ley para la Prohibición de Juegos Bélicos y Juguetes Bélicos. De tal forma que nos llevó la ley para leerla, interpretarla e invitó a la gente de Fundación Filantropía para que diera una charla sobre el tema (conocer las implicaciones, las lagunas y ambigüedades, estado actual del desarrollo de juegos en el país, etc.).

Entrando de lleno al tema, por ser una materia electiva el trabajo es nuestro. La profesora dejó claro que ella no hace juegos ni los juega, pero disfruta ver lo que sus estudiantes son capaces de hacer con las herramientas que da y que manda a investigar. En sus palabras, lo chévere de la clase lo hacemos nosotros; “si ustedes son chévere, la clase es chévere” (si investigamos e intervenimos, aprendemos y estaremos satisfechos).

El libro base para la materia es “Artificial Intelligence for Games” de Millington. En estas cuatro semanas he aprendido lo que es realmente leer un libro técnico. ¿Cómo es eso? Tú agarras y le das chola tratas de absorber lo más que puedas en el menor tiempo posible, y  busca recursos adicionales si no entiendes (preguntar al compañero, Wikipedia, YouTube) de forma que la teoría quede clara para pasar a implementar los algoritmos que se ofrecen en el libro. Dato extra: para la cuarta semana del curso se debería tener leído hasta capítulo 4 -sección 4.3-.

Hay quienes entienden mejor el algoritmo al implementarlo. Si eres de esas personas, implementa el algoritmo y mosca con las fallas que pueda tener (algunos autores lo hacen con todo el propósito para que el lector sea precavido y realmente esté consciente de lo que hace). Dato extra: para la cuarta semana es necesario tener implementados la mayor cantidad de algoritmos del capítulo 3.

Me gustaría agregar que aquí la palabra clave es compromiso. Es más sencillo si todos los días dedicamos algo de tiempo a la lectura y a desglosar un punto específico para así comprenderlo en profundidad, a que tratar de digerir varias páginas de una sola vez. He probado ambas formas y particularmente me va mejor con la primera.

En una especie de receso, tuvimos de invitado a Andrés Barrera de Teravision Games (a quien tuve la oportunidad de conocer en el Caracas Game Jam 2011) y nos habló un poco sobre su experiencia en la industria a partir de los conocimientos adquiridos en el curso que se dictó en el año 2009. De las cosas más importantes que dejó al curso se encuentran:

  • Investigar sobre la metodología SCRUM.
  • Tener flexibilidad de estar ducho en manejar diversos lenguajes de programación y/o aprenderlos rápidamente.
  • Conocer A* es así como aprenderse las tablas de multiplicar bien importante.
  • La industria del videojuego en Venezuela está migrando a otros países a causa de la ley, pero aun hay un nicho en los advergames.
  • Distintos juegos requieren distintas técnicas (muchas de ellas cubiertas en el libro y otras hay que investigarlas).

Personalmente he tenido mucha demora con la primera entrega ya que mi compañero y yo decidimos irnos con XNA (terreno neutro. Él sabe bastante de Java, y yo de C/C++) y ambos tuvimos percances con la plataforma (no me da pena decirlo, he aprendido un par de cosas sobre la forma de trabajo en XNA/C#). Afortunadamente, luego de superado el inconveniente, he podido implementar un par de algoritmos (pero me toca madrugar un poco si me quiero poner al corriente). En la segunda entrega hablaré un poco más sobre la “trama” del juego y mostraré los avances.

Igualmente, se fortalece mi punto de vista con respecto a la formación de un programador. El compañero que más rápido ha avanzado en el curso es de los mejores competidores en los maratones de programación. Algo me dice que debería seguir resolviendo problemas en SPOJ más seguido (y terminar de leer “El Brassard“) por mi propio bien.

Al final de estas cuatro semanas siento que la profesora, de alguna forma, nos está enseñando en un ambiente académico la realidad de la industria (realidad que ya he vivido); todo es muy similar. El esfuerzo propio por aprender, la velocidad del curso, las fechas de entrega. Hay quienes no comparten este enfoque y hasta les incomode, pero casi siempre resulta ser una de los más efectivos.

2 Comentarios

  1. Vladimir de la Cruz

    5 junio, 2011 at 9:03 pm

    Genial estés aprendiendo tanto con el curso aunque te esté matando algo xp, ¿qué tal la ponencia en el JOINCIC? deberías postear videos (si hicieron) o la presentación al menos para los que no pudimos ir

    • Particularmente opino que nada que realmente valga la pena es sencillo. En mi caso, por alguna razón es ahorita donde debo esforzarme por retomar conocimiento universitario que no adquirí (o que no aprendí bien) y qué bueno que estoy aprendiendo dándome golpes. Algunos se llevan golpes en los exámenes y madrugonazos (el deber ser) y yo me estoy dando golpes en mi camino de hacer portafolio e ingresar a la industria.

      La ponencia, dado el feedback de mis amigos, estuvo chévere. Pronto la voy a subir (aunque por la capacidad de la memoria, está en baja resolución) en conjunto con las láminas. Particularmente me sentí como cuando toqué por primera vez en vivo; y es cuestión de ir aprendiendo y mejorando (tanto la puesta en escena, como la organización del contenido). Espero sus comentarios cuando el video sea publicado.

      Gracias por estar pendiente, Vlad.

Deja un comentario