Diario de un Game Developer (I)

23/8/2010 por DeathMetal, 33

Bueno, primer mes como Game Developer en UK superado. Aunque más bien soy “coder”, y todavía con la dichosa etiqueta de “trainee” delante… espero cabiármela de aquí a un mes por la de “junior“!

Cómo ya sabéis entrar en una empresa de videojuegos (y encima buena!) no es fácil. Multitud de pruebas, tests, papeleo, exámenes, entrevistas, y suerte a partes iguales. Pero… ¿cómo es la vida de un programador de videojuegos una vez empieza?

Pues supongo que cada sitio y cada uno tendrá sus cosas, pero por el momento mi ecosistema me encanta!

Vale, os lo confieso: programar un videojuego comercial es una de las cosas más difíciles (informáticamente hablando) a las que nunca me he enfrentado como ingeniero.

Llegué y me metí en un proyecto con más de cien clases, cieeeeentos de archivos contando los assets, una API interna descomunal, y miles de líneas de código ya hechas (me incorporé a tan solos dos semanas de alcanzar la Alpha). Y casi una decena de programadores metiéndole caña concurrentemente. Complejo. Pero… ¿vale la pena?

Pues para todo amante de los videojuegos yo creo que . Por lo menos aún no me sucedió eso que dicen de que tu hobby puede perder la magia si trabajas para él…

Mis principales tareas son cosillas de frontend para single y multiplayer (vamos, hacer los menús, pantallas, animaciones, sincronización multijugador con esperas, etc.), y bugfixing. Lo segundo, aunque más difícil a veces buscas una aguja en un pajar, es muuucho más divertido, pues te encuentras con de todo!!

Por ejemplo algunas tareas de mi bugfixing fueron solucionar que una vez muerto no pudieses disparar, que no se hiciese autoaim (“autoapuntar”) a malos que estuviesen diñándola, que al soltarse de un gancho el perso por defecto corriese, que en según qué estados no se puedan hacer ciertas cosas, que al empezar una nueva pantalla la barra para especiales siempre esté al cero, que se pueda jugar usando el acelerómetro, y otras cosillas menores. Vamos, a mi todo esto me parece mil veces más divertido que las putas aplicaciones C# y Java que hacía en mi anterior trabajo. Además cuando testeas tu código prácticamente estás jugando!

Pero os confesaré otra cosa: ser game developer requiere muchas horas y dedicación. Normalmente, en TODAS las empresas de grandes juegos, se necesita hacer muchas horas extras, no siempre pagadas. Por ejemplo esta semana entrante, como se acerca la Beta, cada día todo el equipo trabajará unas 12 horas diarias. Pero bueno te dan de cenar y merendar, cosas para picar, y en teoría benefits al fin del proyecto!

Y como somos tantos, cada vez que sincronizas el código y arrancas el juego ves algo nuevo que ha aparecido automágicamente. El último día por ejemplo activaron la iluminación, y la verdad es que ha ganado muchos enteros en aspecto visual!

Vamos, mi briconsejo a los que estudian ingeniería informática y sean unos friks de los videojuegos: INTENTAD DEDICAROS A ELLO. Vale mucho la pena, aunque en España la cosa está un poco más jodida…

Nos vemos en el siguiente capi del diario!! Como siempre podéis preguntar lo que sea en los comentarios, siempre y cuando no queráis detalles del juego/cliente/compañía.

PD: Espero que este post os haya resultado interesante, pues no estoy muy dado a esto de bloggear cosas de mi vida…

¿Te ha gustado lo que has visto? ¡Compártelo, menéalo o vótalo! ¡Gracias!
33 comentarios
  1. tal y como lo cuentas tiene una pinta excelente, con lo que confío en que vaya a mejor la cosa y te vayan poniendo las etiquetas que mereces, que es “jugón” XDDDDDD

    mucha suerte en esa nueva andaduda y si necesitas betatesting nos cuentas :-P

    publikaccion dice...
    23/8/2010 a las 8:35 am
  2. Joooer, que envidia!!

    A mí me parecen muyyy interesantes estas entradas del blog. Como ya te dije en otro post, estoy intentando dedicarme a ello… a ver si hay suerte :S

    gamezer0 dice...
    23/8/2010 a las 8:41 am
  3. Yo soy un desarrollador flash trabajando en Londres tambien. Ahora mismo estoy haciendo la web en flash de una importante compan’ia (pero antes me dedicaba a los juegos flash), pero con todo esto de Flash vs HTML5 estaba pensando en estudiar Inteligencia artificial para cuando se acabe, si se acaba, el trabajo web en flash, poder volver a los juegos mas facilmente, pero no se si tiene mucho futuro.
    La cosa es que tambien habia pensado en ponerme a estudiar C/C++ basicamente por los salarios que son mayores de lo que es el mio (Desarrollador flash senior).

    Yo soy developer 100% en flash (vamos que no toco para nada los disen’os).
    – Que me recomiendas para empezar a aprender C/C++? Y que software??

    – Que diferencias hay entre C/C++ y C#?

    – Leyendote me da la impresion de que programas juegos para iPhone/iPad. (Por lo del acelerometro) Usais C# y Java para programar los juegos?

    – Teneis programadores de I.A. en tu empresa?

    Si prefieres enviarme un email o postear tu respuesta aqui “it’s up 2 u” :D

    Thanks

    Otro developer en Londres dice...
    23/8/2010 a las 12:31 pm
  4. Tu ves animando a la gente a que se meta a esto y tengas mas competencia ¡¡¡¡

    jajaja a disfrutar tio

    Anónimo dice...
    23/8/2010 a las 12:41 pm
  5. Soy un informático en proyecto… y me das mucha envidia!!

    suerte!

    lurecas dice...
    23/8/2010 a las 12:59 pm
  6. @Otro developer en Londres:

    Pues no se, pillate algun libro de C++ y bajate el Visual Studio y empieza a trastear. O busca recursos en webs como gamedev.net.

    Debes tener muy claros conceptos “avanzados” (bueno tampoco es para tanto) de orientacion a objetos, herencias simples y multiples, punteros, gestion de memoria, he dicho punteros?, y alguna otra cosilla.

    Las diferencias entre C++ y C# es que el segundo es una cosa .NET de Microsoft que vendria a ser una alternativa al Java (puesto que son MUY parecidos, maquina virtual incluida). Tambien se usa en videojuegos para maquinas Microsoft gracias al framework XNA. Aun asi, si quieres una buena performance, centrate con C.

    Y yo (sip, programo para dispositivos Apple) uso C++ para coding y Lua para scripting.

    Saludos y suerte!

    PD: Ya tenemos un oriental que se dedica a AI y collisions… que a esta gente se les da de muerte estas cosas xd

    DeathMetal dice...
    23/8/2010 a las 1:06 pm
  7. La cosa es que en mi degree estudie C y C++ con Borland C, pero solo vimos lo mas basico. Visual Studio lo usabamos solo para Visual Basic.

    Orientacion a Objetos, herencia, polimorfismo, recursion, etc… eso lo domino en flash (AS3), lo que mas me interesaba era algun libro/web de C/C++ que no empiece ensen’andote como hacer un printf :D

    De todos modos ya le hechare un ojo a la gamedev.net cuando tenga tiempo (ahora no puedo pq estoy supuestamente trabajando :D)

    Cuanto tiempo llevabas trabajando en aplicaciones C# y JAVA?

    Otro developer en Londres dice...
    23/8/2010 a las 1:29 pm
  8. Pues poquito, piensa que solamente hace mas de medio anyo que acabe la carrera.

    Asi que de experiencia C# tengo mas de dos anyos laborales (mi primer curro de becario me obligo a aprenderlo), y de Java tengo lo mismo laboral y 5 de estudios, aunque los 2 primeros anyos casi no cuentan, porque eran “mirad chicos esto es un bucle y esto otra una tupla! Y a esto se le llama recursividad! Wooow!”. Aish que tiempos…

    Y de C++ pues solamente un anyo y medio de la carrera. Lo justo para aprender punteros y esas cosas en asignaturas de graficos.

    Pero bueno, supongo que el hecho de haber autoaprendido lenguajes como ObjectiveC y Smalltalk le gusto a la empresa e hizo que no tuviesen en cuenta mi nula experiencia laboral en C…

    PD: Sorry por las enyes y las no-tildes! Yo tambien estoy en el currele, asi que el teclado es UK…
    PDD: Como ves yo no tengo ni pajolera idea de Flash… pero bueno, si solamente necesitas punteros ya tienes buena parte del trabajo hecho! Mira a ver por amazon que libros hay…

    DeathMetal dice...
    23/8/2010 a las 1:37 pm
  9. Lo unico que no me gusta del trabajo es:

    programador de videojuegos == explotado

    por lo demas de lujo xD.

    drinor dice...
    23/8/2010 a las 1:52 pm
  10. Muy buena la entrada, esperaremos que hagas mas de este estilo.

    Como tu hay mucha gente interesada en que le salgan bien estas cosas, aunque a mi aun me quedan 4 años para ser ingeniero y eso si todo sale bien xD

    Las experiencias personales de este estilo siempre gustan, porque mucha gente se podrías sentir identificada o incluso le podrías orientar o animar a ir por un camino, así que ya sabes a hacer más entradas de estas que puedes cambiar la vida de mucha gente xDD

    Aljenci dice...
    23/8/2010 a las 3:31 pm
  11. Sugerencia:

    Usar la linea “leer más” en los post del diario también.

    Anónimo dice...
    23/8/2010 a las 4:07 pm
  12. Que estudiaste y donde?

    /b/ dice...
    23/8/2010 a las 4:12 pm
  13. @/b/: Ingenieria Informatica (5 anyazos) en la Facultad de Informatica de Barcelona (UPC). Todo sea dicho hice todas las optativas que tenian algo que ver con graficos.

    DeathMetal dice...
    23/8/2010 a las 6:09 pm
  14. Cuando sea grande quiero ser como vos,
    yo tambien estudio ingenieria en sistemas aunque todavia me faltan unos 3-4 años, siempre he querido aprender a hacer videojuegos pero aqui en Guatemala no hay lugares donde se enseñe, asi que me meti a informatica luego pienso sacar algo que me refuerce en esa area en algun otro pais, porque como decis eso de hacer aplicaciones de contabilidad como que aburre aunque es la ingenieria mejor pagada aqui, muy pocos ingenieros por ser una carrera que exige mucho
    suerte

    Warer dice...
    23/8/2010 a las 7:38 pm
  15. M’encanta!!! espero que estiguis sobrevivint be :) en se d’un k li queda poquet per estar com tu!
    en breu ens veiem!!!!

    Anna dice...
    23/8/2010 a las 7:41 pm
  16. y la pregunta importante es… cuanto pagan?hay posibilidades de buen lucro?

    hasta pronto ;)

    hugo dice...
    23/8/2010 a las 8:13 pm
  17. [...] This post was mentioned on Twitter by ggarfield, Jose Maria Santos. Jose Maria Santos said: RT @ggarfield: ¡Nuevo post en Gran Angular!: Diario de un Game Developer (I) http://www.gran-angular.net/diario-de-un-game-developer-i/2010/08/23/ [...]

    Tweets that mention Gran Angular — Topsy.com dice...
    23/8/2010 a las 8:39 pm
  18. Saludos, yo soy Ing. en Sistemas.

    Hace aproximadamente medio año que yo terminé mi carrera, y ya tengo casi 1 de experiencia laboral. Mi trabajo es para desarrollo de software empresarial, y la mayoría de este está a base de .NET y java haciendo uso de SOAP. Pero yo siempre he querido trabajar desarrollando videojuegos, he intentado desarrollar algunos por cuenta propia y sé que requieren de mucho trabajo pero, mi duda es, aparte del conocimiento en programación (orientación a objetos, conocimiento del lenguaje [como punteros que mencionas] y eso) hay algo más que se requiera para trabajar en esto ? conocimientos avanzados de física, matemáticas, inteligencia artificial, etc. ? porque yo siempre he tenido el temor de que me digan que no tengo los conocimientos necesarios para esto, pero realmente no sé que es lo que necesito saber para competir por un puesto para esto.

    Estaría muy agradecido si me pudieras contestar esto.
    Gracias de antemano.

    Checo dice...
    23/8/2010 a las 10:42 pm
  19. @ hugo sólo te diré que estos dos meses que estoy de prueba con un sueldo DE PRUEBA ya estoy cobrando más que en España en el trabajo que llevaba casi dos años. Aquí los ingenieros están muy bien valorados, como debe ser.

    @Checo depende mucho de las cosas que vayas a hacer. Saber un poco de cinemática (física), geometría (mates), y algunos truquillos de algorismia y análisis (no simplemente programar al tuntún) son una buena ayuda a la hora de buscar currele de eso. Y si sabes un poco de IA y de gráficos (mundos 3D) mejor que mejor. Sobretodo de lo segundo… Pero piensa que cosas como la IA o el sistema de colisiones son aspectos muy importantes de un juego, así que solamente los tocan los seniors.

    DeathMetal dice...
    24/8/2010 a las 12:25 am
  20. hola Death!

    un par de preguntas, “algunos truquillos de algorismia y análisis” como cuales? curiosidad

    yo estoy haciendo un videojuego de naves en 2D con los graficos en 3D usando las librerias de ogre3d en c++, donde trabajas se lo han hecho de 0 usando opengl? he hecho opengl y directx con un colega que hacia vig en la fib y las librerias ogre te ahorran un monton de pico y pala

    mas o menos cuantos soys en el equipo aparte de los 10 programadores que has mencionado? apartado artistico, jefes y demas, para hacerme una idea

    un saludo

    Marc dice...
    24/8/2010 a las 1:23 pm
  21. Se agradecen este tipo de post. Voy a empezar mi ultimo año de ingeniería informática y me gustaría dedicarme al mundo de los videojuegos. Leer experiencias como estas me sirven para ver que no hay nada imposible de conseguir y dan ganas de seguir estudiando pra lograr mis metas.

    Cierzo dice...
    24/8/2010 a las 2:21 pm
  22. Muy buen Post! Yo también estudié Ing. en Sistemas y siempre he tenido la inquietud de trabajar en la industria de los videojuegos, sólamente que a mí me gustaría trabajar en la parte de audio, ya que también estudié música varios años y creo que algo así uniría dos de mis pasiones. ¿Tienes alguna sugerencia de por dónde podría empezar?

    Arscek dice...
    24/8/2010 a las 4:41 pm
  23. @Arscek: Ni puta idea. Sorry pero soy un novatillo, no un guru del sector. Solo se que si no lo intentas no sabras si puedes currar de eso!

    @Marc: Sorry prefiero no dar detalles tan concretos sobre la empresa… no sea que me echen xd Pero somos muchos muchos

    DeathMetal dice...
    24/8/2010 a las 5:23 pm
  24. siempre y cuando no queráis detalles del juego/cliente/compañía.

    ¿Tenías que agregar esa linea? Me muero de curiosidad xDDD

    Aníbal dice...
    25/8/2010 a las 2:51 am
  25. Hola, super interesante el artículo, te felicito enormemente. Yo estoy precisamente estudiando desarrollo de juegos en Canadá, pero no para ser “coder” sino animador, modelador, texturizador y concept artist, digamos que es como la parte “artistica” de los videojuegos.

    Cómo ves el trabajo para 3d modelers o animadores alla? seria interesante conocer tu opinion y saber como es el ambiente de trabajo para modelers y animators :)

    Thanks ;)

    Alberto dice...
    25/8/2010 a las 7:57 am
  26. @Aníbal: siempre viene bien intentar mantener el interés :P

    @Alberto: almenos en mi curro hay un montón, y el ambiente de trabajo es exactamente el mismo que el mío. Vaya, si estamos en la misma sala gigantesac con los mismos ordenadores y las mismas mesas!! Anda que no voy veces yo a “la zona esa” para discutir cosas con el diseñador del frontend…

    DeathMetal dice...
    25/8/2010 a las 11:14 pm
  27. Como tantos otros que han posteado antes me ha gustado este artículo porque me he sentido un poco identificado jeje

    No sé si sabréis que han sacado un grado en Diseño y Desarrollo de Videojuegos. La verdad que el plan de estudios parece interesante, pero el precio(8000€ año aprox.)tira pa’trás…quien me diera un par de milloncetes!

    Para los curiosos, aquí hay información:
    http://www.ucjc.edu/index.php?section=estudios/titulaciones/titulaciones-oficiales/titulaciones-grado/ingenieria-multimedia-videojuego/perfil

    Gorto dice...
    26/8/2010 a las 12:31 am
  28. ¿es contrato temporal ?
    ¿echas de menos el sol y la comida de España?
    ¿es la gente muy sosa como dicen algunos?
    ¿Hay “Grado medio” de creación de videojuegos en UK ?( al menos eso o algo parecido vi en la edge inglesa)

    Bueno que te vaya bien por allí

    wildfire dice...
    26/8/2010 a las 8:08 pm
  29. @Gorto: Vaya WTF a las salidas profesionales. Tecnico de sistemas? Analista? Mande?

    @wildfire: no, si, si, npi

    DeathMetal dice...
    26/8/2010 a las 10:11 pm
  30. Que pasa death :P

    No hace falta presentaciones, sabes de sobras quien soy (y no te hablo en catalán por respeto al resto).

    Muy buena la crónica de tu vida :P cualquier día espero ver algun juego tuyo (siempre que canvieis la filosofia y programeis juegos para una plataforma de verdad :D)

    Pues nada, solo mandarte un saludo y comentarte que aquí en españa tampoco se cobra tan mal (no voy a comentar tema de sueldos, pero creeme, hay de todo, y si eres bueno, se te premia).

    PD: cuando tengas tiempo sabes que tenemos proyectos pendientes para comentar :P so vago! xD

    Vyrphan dice...
    30/8/2010 a las 2:17 pm
  31. Me encanto tu post, realmente es muy interesante y me imagino q complejo puede ser programar un juego, es ironico que en mi pais, cualquier juego puedes adquirirlo a menos de 5 dolares sin valorar tanto esfuerzo q ponen sus programadores en el

    Li dice...
    4/9/2010 a las 6:33 pm
  32. QUÉ TRABAJO VÁLGAME DIOS

    PePe dice...
    5/9/2010 a las 11:54 pm
  33. Hola, tenia un par de preguntas:
    -Que lenguajes de programación dominas o utilizas para tu trabajo?
    -Que has estudiado?

    Me interesa dedicarme a esto, pero de momento no lo tengo muy claro, ya que me da la sensacion de que no llegare a nada, tengo 16 años i de momento soy mapper de motor source i se lo basico de c++ para creacion de mods source tambien, pero esto no creo que me sirva de nada T_T

    Fran dice...
    13/9/2010 a las 4:24 pm
¡Comenta!