miércoles, agosto 31, 2011

¿Ya no puedo jugar más?

¡Ta-rá, último post de P*! A partir del próximo post regresamos a la programación regular.

Soy Simón, el venezolano programador de segundo año.

En Venezuela conozco una persona que es actriz de voz. Ella hace las voces en español de películas, dibujos animados y animé.

Según ella, una vez que uno se convierte en un actor de voz, ya no es posible ver las animaciones como un espectador normal. La razón detrás de esto es que, mientras ella está viendo la animación, sin querer le presta atención a las técnicas de voz.

"¿Cómo hace para expresar éste sentimiento? ¿Cómo hace esa voz? ¿Por qué usó esa entonación en ese momento?" Et cétera. Cuando ve animaciones no puede concentrarse en lo absoluto en la animación. Siempre termina concentrándose en las técnicas de voz.

Una vez que uno se convierte en creador de juegos, ¿ya no es posible jugarlos como un usuario normal? ¿Será que uno se concentra en las técnicas de programación, y que uno no puede concentrarse para nada en el juego?

En mi caso, es un poco así. "¿Cómo hacen para mostrar tantos polígonos? ¿Cuándo están cargando este escenario? ¿Cómo hacen este efecto?" Et cétera.

Sin embargo, no es un problema tan grande como el de mi amiga la actriz. La primera vez que juego un juego con toda certeza ocurre lo descrito. Me preocupo por las técnicas de programación y no me puedo concentrar en el juego. Sin embargo, una vez que he aclarado todas mis dudas puedo regresar al mundo del juego. Es más, como ahora sé lo difícil que es hacer un juego puedo apreciarlo mejor al momento de jugarlo.

Volverse creador de juegos tiene tanto cosas buenas como cosas malas...

domingo, agosto 14, 2011

Un ciclo

¡Uy, penúltimo post de P*!

Hola, soy Simón, programador de segundo año.

Hace varios meses fui asignado a un equipo de desarrollo. Desde ese momento he estado trabajando en el desarrollo de un juego que no puedo mencionar. Hace poco tuvimos la fecha de entrega del prototipo. Ésa fue mi primera fecha de entrega en el desarrollo de un juego. ¡Vaya, qué experiencia!

El comienzo del desarrollo no fue difícil. Cuando mi jefe decía "haga este sistema", yo hacía el sistema con calma. Había tiempo para pensar a fondo y para hacer los ajustes necesarios. Cuando el sistema fallaba, había tiempo para arreglarlo.

De vez en cuando recibía solicitudes de los diseñadores de juego, algunas veces de los artistas. Cuando los diseñadores de juego y los artistas me decían "haz una herramienta que haga esto", o "arregla esta otra cosa", yo tenía tiempo para trabajar con calma.

Sin embargo, a medida que el prototipo avanzaba cada vez estaba más ocupado. Poco a poco las solicitudes fueron aumentando. El tiempo para pensar a fondo y para hacer ajustes desapareció. Si no trabajaba rápidamente, no podía cumplir con mis responsabilidades.

La última semana estuvo fatal. Había un sinnúmero de ajustes que hacían falta. Al terminar un ajuste, ya había otro esperando. Ajustar, ajustar, ajustar... todo el tiempo era ajustar detalles.

Para ajustar los detalles utilizaba el mismo sistema que yo había desarrollado. A través de tanto usarlo descubrí muchas cosas que hacía falta mejorar. Sin embargo, no había tiempo para arreglarlo. No había otra opción. Aunque fuera difícil de usar, había que avanzar así. No había tiempo para reescribirlo. Y eso que era un fastidio de usar...

Con esfuerzo terminé mis responsabilidades a tiempo. El productor probó el juego. Todo los miembros del equipo, en silencio y prestando mucha atención, veían al productor jugar. Yo también veía en silencio y prestando atención. ¡Qué satisfacción al ver cómo se movía lo que yo había hecho! Era como para gritar "¡yo construí eso!".

Luego de la fecha de entrega la presión bajó. Ahora hay suficiente holgura para poder arreglar los problemas del sistema. De hecho, ahora los estoy arreglando. Ya me estoy preparando para la próxima fecha de entrega. Mi sistema tiene que ser más fácil de usar.

Diseñar un sistema, construirlo, utilizarlo, ¡entregarlo!, mejorarlo. Iterar.

Parece que acabo de experimentar un ciclo de desarrollo de juegos (:

domingo, agosto 07, 2011

A estar menos en el puesto de trabajo

Ya que nada más faltan 3 post de P* por traducir, voy a retarme a publicar dichos post este mes. Primera semana, primero de los 3 faltantes:

Hola a todos, soy el programador Simón. ¿Están todos bien?

"Simón, tú estás todo el día en tu puesto. Vamos a estar menos en el puesto de trabajo" - fue lo que me dijo mi jefe un día. Al principio no entendí lo que me quería decir.

Si no estoy en mi puesto de trabajo, ¿cómo voy a trabajar? Me puse a pensar qué podría significar "estar menos en el puesto de trabajo".

¿Será que estoy trabajando demasiado? No, si yo me voy del trabajo antes que mi jefe. Debe ser otra cosa.

¿Será que debería tomar vacaciones? No, si se está acercando una fecha de entrega. Debe ser otra cosa.

Creo que mi cara se debe haber transformado en un signo de interrogación. Mi jefe, al ver mi cara de confusión, decidió explicarme más.

"El programador Fulanito casi nunca está en su puesto, ¿verdad? Así es que quiero que tú hagas".

Que Fulanito casi nunca está en su puesto es algo que yo sé, pero ¿por qué es eso bueno? Creo que debería ser al revés. Ya esto no tiene ningún sentido.

"El programador Fulanito se la pasa discutiendo con los artistas, se la pasa pensando cosas interesantes junto con los diseñadores de juego, etc." - dijo mi jefe. ¡Ah! Entendí. ¡Hacer un juego no es trabajo de una sola persona!

Para poder producir algo bueno, es necesario discutir con las personas de los otros grupos.

¿Cuál es el significado de este objeto? ¿Por qué la cámara enfoca ese punto? ¿Cuál es el propósito de esta animación? Si no hago ese tipo de preguntas es como si estuviera programando a ciegas.

Sin embargo, no es suficiente con preguntar. También hay momentos en que es necesario hablar de manera proactiva.

Si uno encuentra un error en el trabajo de otra persona, ¡hay que reportarlo! Si para poder avanzar con el trabajo de uno se necesita algo producido por alguien más, entonces ¡a fastidiarlo hasta que termine! Y, claro está, si uno tiene una buena idea, ¡hay que decirla! Et cétera.

Es a través de la interacción del equipo que los juegos avanzan de manera positiva. Si me la pasara todo el tiempo en mi puesto, ¿cómo podría hacer buenos juegos?