Fantasía es la tercera película de animación hecha por los estudios Disney, estrenada en 1940. Se trata de una obra clásica del género, basada en ocho piezas musicales. El aprendiz de brujo es una de estas piezas, en la que Mickey Mouse, tras tomar sin permiso el gorro mágico del brujo, realiza un hechizo que transforma mágicamente a una escoba en un sirviente que puede traer cubos de agua desde la fuente; luego se duerme y pierde el control de la situación.
Lo más difícil de aprender en la vida es qué puente cruzar y qué puente quemar.
David Russell
La dinámica del juego se basa en resolver pequeños puzles dentro de un juego con simulación física: manejamos al aprendiz en las inmediaciones del caserón del brujo y tendremos que usar nuestros poderes para realizar todas las tareas domésticas que nos ha encargado el maestro. La estética será de ambientación medieval fantástica, cuidando la coherencia del escenario, que intentará «estilizarse» como en los dibujos animados, así cómo el funcionamiento preciso de los objetos interactivos.
Este planteamiento de juego sirve como motivación para seguir trabajando en mecánicas de interacción con objetos y con el escenario, usando distintas cámaras y en distintos niveles.
Propuesta
La práctica consiste en desarrollar el prototipo ejecutable de un videojuego para un sólo jugador en forma de aventura con pequeños puzles físicos basados en realizar «mágicamente» tareas domésticas, tomando la inspiración de la película de Fantasía. Es un juego de puzles, sin enemigos ni posibilidad de recibir daño o morir.
El punto de partida es la plantilla Top Down (sin variantes) que ofrece Unreal Engine, que recrea un mundo 3D con vista cenital en tercera persona, con el movimiento del avatar controlado por el ratón. Además opcionalmente se podrá usar contenido del paquete Starter Content y de la tienda Fab, como la biblioteca de Quixel Megascans para añadir objetos o el recurso gratuito Stylized Fantasy Provencal, que tiene un paisaje pintado con un material de múltiples capas que se pueden modificar.
Las características principales del prototipo son:
A. Hay un mundo virtual por explorar que consiste en 3 niveles diferentes representando el interior del caserón del brujo, el prado exterior cuyo paisaje -además de la fachada exterior del caserón- tiene un molino al este (visualmente a la derecha del caserón) y la cima de un monte al norte (visualmente arriba del caserón) -que sólo visitamos acercándonos al inicio del camino que lleva a dicha cima-. En este mundo hay distintas tareas domésticas por realizar gracias al movimiento -clic izquierdo- y la interacción -clic derecho- del avatar que controla el jugador. Cuando el avatar se encuentra en el caserón, la cámara es fija, en tercera persona pero cercana al avatar; al salir al prado la cámara es casi cenital (no vemos la cima del monte) y sigue los movimientos del avatar sin rotar y desde cierta distancia; finalmente, yendo al norte la cámara vuelve a estar fija, aunque observa al avatar desde mucho más lejos, tan lejos que puede verse el caserón y el prado exterior con el molino. Además se puede interactuar con tres baldosas mágicas que el mago tiene dentro del caserón (una roja, otra verde y otra azul), pisándolas cada vez para activarlas o desactivarlas: cuando una baldosa está activa ilumina el interior del caserón de ese color, y si son varias las baldosas activas, se combinan dichas luces, siendo esta combinación la que posibilita usar ciertos hechizos en el entorno.
B. Cambiando la luz de las baldosas podemos dar vida a varios objetos inanimados, que se mueven gracias a la física o a la «posesión» del jugador, usando unos controles de entrada y una cámara diferente según el objeto en cuestión. Esto permite avanzar en la realización de las tareas encomendadas por el brujo, con el objetivo último de fabricar sacos de harina, pues le encanta hacer repostería para relajarse de sus brujerías.
C. La primera tarea se realiza en el prado, cerca de la fachada del caserón y consiste en arreglar el carro, al que le falta una rueda y está volcado en el suelo, con la rueda de repuesto sin instalar y brillando con cierta luz amarilla. Cuando la luz de las baldosas es amarilla (baldosas roja y verde activas a la vez) haciendo clic derecho se realiza el hechizo de levitación: la cámara se queda fija en perspectiva hacia el carro, y con el movimiento del ratón… ya NO movemos nuestro avatar sino que controlamos «telepáticamente» la rueda para llevarla volando por el aire a su posición correcta en el carro, quedando este arreglado «mágicamente» en cuanto la acerquemos a su sitio.
D. La segunda tarea se realiza en la cima del monte al norte del caserón y consiste en cargar 3 barriles de trigo en el carro, para lo que es necesario en primer lugar que el carro esté arreglado (listo para recibir los barriles). En la cima del monte hay muchos barriles disponibles -brillando con cierta luz morada- pero pesan demasiado, por lo que hay que ponerse cerca de ellos, apuntar en dirección al carro y «empujarlos» (haciendo clic derecho) monte abajo gracias al hechizo de propulsión. Este se activa cuando la luz de las baldosas es morada (baldosas roja y azul activas a la vez), haciendo que caigan rodando y -con suerte- acaben cerca del carro arreglado. Si un barril choca contra otros objetos del escenario que no sean el carro arreglado, recibe daño… y si acumula mucho daño, se destruye y desaparece (reapareciendo en su sitio original otra vez a los 5 segundos).
E. La tercera y última tarea se realiza también en el prado, yendo hacia el molino que está situado al este del caserón. En este nivel hay un río que dificulta llegar al molino, pero afortunadamente hay un puente que nos permite cruzar sobre él. Conduciendo debidamente el carro (arreglado y cargado -brillando con cierta luz cian-) a lo largo del camino que cruza dicho puente se llega al pie del molino. Es un camino bastante tortuoso que, con el hechizo de conducción activo (luz de las baldosas cian, es decir, verde y azul a la vez) y haciendo clic derecho podemos empezar a recorrer. Lo primero es «tomar el control» del carro con una cámara muy cercana, en primera persona, y después hacemos que este se mueva sólo, mágicamente. El movimiento del ratón permite girar nuestro vehículo-avatar levemente a izquierda o derecha, mantener el clic izquierdo pulsado hace que el carro acelere y soltarlo permite disminuir la velocidad, aunque tiene bastante inercia. Si nos salimos totalmente del camino, el carro vuelve a aparecer en su posición inicial pero sin barriles, con lo que habría que repetir la segunda tarea. Cuando se termina esta tercera tarea, el juego ha sido completado y vuelve a empezar desde el principio, aunque cada vez que se completa se añade un saco de harina dentro del caserón, como trofeo y prueba permanente de los méritos del jugador… que debe quedar grabado en el disco duro para futuras partidas.
Revisión
Tener el repositorio a disposición del profesor con todos los entregables, preparados en tiempo y forma por todos los miembros del grupo de manera equitativa, supone un 10% de la nota de la práctica. El profesor tendrá una lista con los datos de todos los grupos y los enlaces a las organizaciones en GitHub (por ejemplo DEV00-G02, la del grupo 2 del curso Desarrollo de Videojuegos 2000-2001) donde se encontrarán los repositorios de las prácticas (DEV00-G02-P1, DEV00-G02-P2 y DEV00-G02-P3).
Revisión de la documentación
En esta primera fase de revisión hay un único entregable:
- Documento de producción según la estructura habitual en el README.md. Supone un 10% de la nota.
Revisión del resultado
En esta segunda fase de revisión los entregables son estos:
- Proyecto con todos los ficheros de código fuente y recursos de la implementación en Unreal Engine (llamado por ejemplo DEV00_G02_P2). Se incluirán instrucciones para descargar ficheros compartidos con la UCM por el profesor en una carpeta de Google Drive, para todo lo que por peso o problemas de licencia no sea conveniente alojarlo en el repositorio de GitHub ni en su almacén LFS. Supone un 20% de la nota.
- Fichero con la versión ejecutable para Windows de 64bits (llamado por ejemplo DEV00-G02-P2 1.0.0.zip), publicada como lanzamiento (release) en el repositorio. Cada característica del prototipo (A, B, C, D y E) correctamente implementada supone un 10% de la nota, sumando un total de 50%.
- Documental con las pruebas del juego, añadiendo al documento de producción el enlace a un video oculto en YouTube (llamado por ejemplo DEV00-G03-P2) de 5 minutos de duración, donde quedan documentadas y comentadas por voz y títulos de texto las pruebas realizadas. Lo habitual será realizar el montaje mediante varios planos que reflejan varios momentos de la partida, evitando las partes menos relevantes. El documental tiene tantas secciones como características a probar (esto es A, B, C, D y E). Supone un 10% de la nota.
Más información
Además de la bibliografía recomendada, se pueden investigar las siguientes referencias. En ningún caso se debe replicar código de terceros sin entenderlo bien y «hacerlo nuestro», y siempre asegurándonos de que funciona exactamente como se requiere en esta práctica.
Se pueden realizar ampliaciones para ir más allá en el aprendizaje.
- Darle vida al entorno con movimiento de flora y fauna, cambio de iluminación según pasa el tiempo, cambiar la apariencia del personaje, etc.
- Incluir efectos de parpadeo intermitente, efectos de partículas y similares en las baldosas mágicas o en aquellos objetos del escenario que se ven afectados por los hechizos.
Esta página está licenciada bajo CC BY-NC-SA 4.0 por Laboratorios Narratech.