Introducción
Este curso se llevará a cabo en el lenguaje de programación de C#. El alumno/a aprenderá las formas y la metodología de creación de juegos de computador, tanto bidimensionales como tridimensionales. Durante las clases, se crearán juegos de computador completos: plataformas y juegos de rol. Se utilizará UNITY 3D como motor de desarrollo de juegos. La segunda parte del curso, estará dedicada al modelado de elementos 3D en Blender. Al finalizar el curso, el estudiante será capaz de crear un juego de ordenador avanzado por su cuenta. ¡Nuestras clases online NO son un webinar o un curso de Youtube! Cada participante verá la pantalla del profesor, escuchará lo que dice, y éste tendrá una visión de lo que el alumno hace y habla (verá la pantalla de cada uno). Cada alumno podrá hacer preguntas por voz y el profesor podrá responder a cada pregunta e indicar exactamente dónde está el error y cómo solucionarlo.
Programa del curso
1Clase 1. Recordatorio de conocimientos - C#
La primera clase se dedicará a revisar los temas trabajados anteriormente. Tras una pausa larga, vale la pena recordar los conceptos básicos que se aprendieron en los cursos anteriores.
2Clase 2. Introducción a Unity 3D: Juego UFO (Parte I)
Durante la segunda clase, se iniciará el trabajo con el motor Unity 3D. Los estudiantes conocerán la interfaz del programa y aprenderán los elementos básicos del juego. Comenzarán un proyecto simple del juego UFO en el que escribirán un script para mover la nave espacial por el tablero.
3Clase 3. Introducción a Unity 3D: Juego UFO (Parte II)
La tercera clase será una continuación de las anteriores. Aplicarán nuevos elementos relacionados con la física 2D para que la nave no se escape del tablero, pero también pueda sumar puntos y mostrarlos.
4Clase 4. Inicio de la implementación de Infinite Runner (Parte I)
Tiempo para un proyecto. Esta clase la dedicaremos al diseño de juegos para mostrar lo importante que es diseñarlos con precisión desde el principio.
5Clase 5. Inicio de la implementación de Infinite Runner (Parte II)
En la próxima clase dedicaremos tiempo a la preparación del prototipo del juego. Los alumnos pondrán sus primeros materiales en los objetos del juego. También crearán un script que permitirá al personaje saltar al aire y realizar el llamado doble salto.
6Clase 6. Recorrer el mundo, contar la puntuación.
Es el momento de preparar el nivel para seguir adelante o para moverlo realmente. El script escrito durante estas clases permitirá hacer un poco de trampa. Será el mundo el que se mueva hacia el jugador creando la ilusión de que es él quien corre sobre él. También empezaremos a contar nuestros puntos.
7Clase 7. Obstáculos, bloques de mundo generados aleatoriamente
¿Qué es este juego en el que no haces más que correr? Vamos a añadir obstáculos que tendremos que evitar y la posibilidad de controlar el nivel de dificultad. El juego no puede ser aburrido después de todo.
8Clase 8. Terminar y reiniciar el juego.
Hay momentos en que algo sale mal en el juego. Por eso, durante esta clase, aprenderemos a recargar las escenas para reiniciar el nivel en caso de que algo vaya mal.
9Clase 9. Animación del jugador y gráficos del mundo.
Damos carácter al proyecto. Estas clases se dedicarán a la aparición de niveles, héroes o trampas. Se añadirán gráficos y animaciones preparadas de antemano para implementarlas.
10Clase 10. Monedas, plataformas y alta puntuación.
El dinero manda en el mundo. Así que se añadirá al juego para ganar puntos e intentar batir el récord con los siguientes intentos. También añadiremos plataformas para que el juego no funcione en un solo nivel.
11Clase 11. La inmortalidad y el imán.
PowerUP... Hoy se programará la inmortalidad. Al menos temporalmente. Prepararemos los coleccionables (obtenerlos durante el juego tendrá efectos adicionales para nuestro héroe).
12Clase 12. Interfaz de usuario avanzada y menú del juego
Construyamos por fin un mundo decente. O al menos dejemos que se construya solo. Con la ayuda de unos cuantos prefabricados preparados, nuestros gráficos se generarán aleatoriamente. Gracias a ello cada partida será única.
13Clase 13. UI avanzado, menú.
La penúltima clase se dedicará a crear la interfaz y el menú. De alguna manera el juego tiene que comenzar y necesitamos saber cuántos puntos tenemos. También se agregará la música que nos acompañará en el juego.
14Clase 14. Sonidos en el juego e Unity Ads.
Es hora de los retoques finales. Corrección de errores, defectos y la guinda del pastel. Exportar a PC y Android. Se discutirán los temas más importantes y finalmente exportaremos para mostrar a otros nuestro juego.
17Clase 1. Documento de diseno de videojuegos y control de versiones
La primera clase estará dedicada a pensar en cómo funciona el juego. Se discutirán las diferencias entre los juegos 2D y 3D. Se preparará un documento de diseno de juegos y los estudiantes aprenderán qué es el control de versiones del proyecto basado en GitHub y Collab.
18Clase 2. Controlador del jugador
En esta clase los estudiantes prepararán un controlador de jugador utilizando el componente interno de Unity CharacterController (Controlador del personaje). Además de mover al jugador, prepararán un guión de trabajo de cámara a través del cual observarán el mundo del juego.
19Clase 3. Tiempo, pausa y puntos
Ahora los estudiantes prepararán algunas mecánicas especiales. Programarán un cronómetro que medirá cuánto tiempo pasa hasta que se encuentre la meta. También crearán la mecánica de pausar el juego y finalizarlo, es decir, ganar y perder.
20Clase 4. Mejora de caídas, prefabs, terreno y trampas
Ahora los estudiantes prepararán algunas mecánicas especiales. Programarán un cronómetro que medirá cuánto tiempo pasa hasta que se encuentre la meta. También crearán la mecánica de pausar el juego y finalizarlo, es decir, ganar y perder.
21Clase 5. Portal, parte I
Comenzará el trabajo en portales que permitirán a los jugadores moverse a otra parte del laberinto. Estas clases se centrarán en la construcción del objeto del portal.
22Clase 6. Portal, parte II
Las próximas clases serán una continuación de los portales. Se crearán scripts que permitirán una transición fluida entre portales y se crearán varias salvaguardas para que el portal funcione correctamente.
23Clase 7. Conceptos básicos de gráficos en 3D
Hora de los gráficos en 3D. En esta clase, los estudiantes aprenderán los conceptos básicos de Blender 3D. Aprenderán a modelar y cuáles son los componentes del modelo. También prepararán los primeros gráficos del juego.
24Clase 8. Creación de Pickups y Exportación, parte 1
Con la ayuda del profesor, los estudiantes crearán sus propios gráficos en 3D que podrán utilizar en el juego que creen. Aprenderán algunos trucos de modelado para hacer más atractivos sus disenos.
25Clase 9. Creación de Pickups y Exportación, parte 2
Después de crear los modelos y pulirlos, es hora de exportar a Unity. Los estudiantes agregarán sus modelos al proyecto y luego agregarán scripts relacionados con su mecánica.
26Clase 10. Conceptos básicos de animación y un misterio
Podemos agregar animaciones si hay pickups. Los estudiantes pondrán sus modelos en movimiento. También crearán un mecanismo de trampa, así como un mecanismo de apertura de puerta con llave.
27Clase 11. Creación de laberintos y diseno de niveles
Es hora de finalmente preparar tu laberinto. Durante estas clases se prepararán guiones que permitirán a los alumnos generar laberintos según sus ideas. Prepararán la línea de meta del juego y también agregarán cielo al proyecto.
28Clase 12. Creación de laberintos y diseno de niveles, parte 2
Cuando tenemos un laberinto listo, vale la pena hacerlo más atractivo agregando trampas, puertas o camionetas. Cada alumno creará así su propio nivel de juego.
29Lekcja 13. Materiały i postprocessy
Un nivel listo se puede hacer más atractivo. Está clase se dedicará a los materiales para dar color a los objetos. Luego discutiremos sobre los posprocesamientos, gracias a los cuales los estudiantes podrán cambiar completamente el flujo de su juego. Por último, introduciremos la música y los sonidos.
30Clase 14. UI y terminación del juego
La última clase tratará de la interfaz del juego. Introduciremos gráficos en 2D para que el jugador sepa cuánto tiempo le queda, si está en una recogida o si finalmente ha llegado a la meta. Crearemos un sencillo menú principal. Finalmente exportaremos nuestro juego para mostrarlo a nuestros amigos.
