[MUSIC] Hola, Soy Jordi Arnal, el profesor de de videojuegos de la Universidad Autónoma de Barcelona. Y vengo a presentarles la sesión tres. El curso Gameplay. En esta sesión, vamos a poder aprender componentes físicos de Unity, el Navigation, vamos a crear un par de enemigos. Y por último implementaremos una pequeña GUI y game del juego. Comencemos. Dentro de la física, el primer componente que vamos a aprender va a ser el box collider. Que you lo hemos visto en las sesiones previas. Si recordamos, cuando cuando creamos una cámara, creamos un cubo. Este cubo tiene un box collider que vemos aquí que no nos deja traspasarlo. Entonces, es un colisionable de tipo caja donde podemos modificar propiedades como la posición de la caja, del tamaño de la propia caja. O dejarme por defecto, que se ajuste directamente a una caja como hemos creado previamente. Entonces esto sería nuestro primer collider. Si bien el tipo collider que vamos a ver es el collider de tipo mesh collider. Este collider se basa en una geometría y se adecua a esa geometría. Por tanto nuestro [FOREIGN], exactamente igual que la maya de 3D que habíamos importado. Entonces para ello vamos a importar un modelo desde la unity que la vamos a utilizar como fortaleza final en nuestro nivel de juego. Entonces, como siempre ahí vamos a ir a la Unity a. Aquí tenemos la fortaleza que vamos a importar. Lo voy a decir como siempre open en Unity, ejecuto la aplicación. Y desde Unity le doy a importar. Y lo importamos. Una vez que lo tenemos importado, aparece nuestro proyecto Coastal_gun_battery, donde tenemos una nueva geometría, un nuevo elemento que es este elemento que vemos aquí. Entonces lo voy a coger y lo voy a activar al final del nivel. [SOUND] Donde quiero que acabe. Entonces lo voy a poner aquí, generarlo acá. [SOUND] Este lo voy a poner aquí. Y voy a coger y voy a este objeto. Y lo voy a poner a otro lado invertido en la escala x [SOUND] para que quede mirando hacia el otro lado. Ahora lo que tenemos que hacer es ajustar las montañas para que no se modifique el terreno. Entonces lo que voy a hacer ahora es lo que estamos haciendo. Este objeto de aquí, si nos fijamos esta es su geometría, le vamos a poner un componente de mesh collider. Le vamos a dar el objeto a component mesh collider. Se nos ha agregado aquí y nos ha agregado un componente de mesh collider que el colisionable tendrá el mismo volumen que la geometría. Además puedo añadir todos estos bastión. Que son los elementos que vemos aquí en pantalla. Le vamos a añadir a estos elementos también otro mesh collider. Y para el otro lado, otro elemento de allí. Vamos a añadirle también con shift+control+alt. Haces para sacar el mesh collider, para añadir un componente le añadimos mesh collider y todos los bastión lo mismo, shift+control+alt, mesh collider. Y you tenemos este elemento que tiene colisionable. Vamos a acabar de modificar un poco el terreno. Entonces voy a borrar esta parte de estas montañas. Vale. Y lo que voy a hacer ahora. Es hacer clic en la montaña o por alrededor, simplemente le voy a dar un poquito de volumen. Y lo mismo por el otro lado. Lo voy a suavizar un poquito. Vale. Y tenemos el final del nivel. Que aquí haríamos el enemigo final. Entonces hemos visto y lo hemos añadido un mesh collider. Ahora vamos a comprobar que el player no atraviesa esa pared. Ahora le damos a ejecutar. Hemos acabado la escena. Ejecutamos. La cámara la vamos a poner 16 novenos, un 1280x720. Para que juguemos en una pantalla más o menos actual. Entonces vamos a ir hacia el final del escenario. Y cuando lleguemos al final del escenario. Llegamos a la fortaleza y aquí, si lo hemos hecho correctamente, colisionamos contra la fortaleza. Por tanto está correcto. Si nos fijamos, las bolas rebotan. Hay que decir que se destruyan cuando colisionen contra algo. ¿Vale? Entonces, otra cosa que quiero que veáis es lo siguiente. Si yo cojo el player y me voy hacia una montaña. Y el player es capaz de escalar esta montaña y además luego no baja. ¿Vale? Entonces vamos a poner unas paredes transparentes para que no pueda sobrepasar la montaña por un lado y haremos que el player siempre baje. Seguro que le afecte la ley de la gravedad para que baje. Entonces para que baje, simplemente modificaremos en el player controller. Le diremos al que se mueva en la dirección vertical. Podríamos hacerlo algo mejor pero con esta fórmula you nos servirá. Eso por un lado, por otro lado, hemos dicho que vamos a crear paredes a los lados, para que el player no pueda atravesarlo. Entonces, podemos modificar el character controller para que no sea capaz de subir según que pendientes, pero tal como es el desnivel acabará pudiendo subir por la montaña. Entonces lo mejor es hacer unas paredes transparentes. Entonces voy a crear un objeto que va a ser el padre de estas paredes, le damos a physics object, lo voy a meter en la capa de física y voy a crear dentro 3D object un plano. En vez de un plano voy a crear un quad, 3D object, quad. Este quad lo voy a escalar. Ahora rotar. Lo voy a poner cerca de la montaña y voy a hacer un caminito por donde el player puede pasar y por donde no. Entonces lo que voy a hacer es cambiar el material, material transparente. Y lo voy a meter, para que no se vea en la escena lo voy a meter en la capa de elementos físicos, que you se ha creado así. Entonces lo voy a meter. En el suelo. Y voy a crear más planos. Aplicándolos. Por donde el player no quiero que pase. Entonces voy a ir creando estos escenarios, estos planos, para que el player no pueda pasar por ahí. Entonces vamos a crear todo nuestro escenario con estos planos. Una vez hemos creado toda la escena, vemos que tenemos todo el camino cubierto para que no se pueda salir el personaje del escenario. Ahora si intentamos jugar. Vemos que no podemos subir las montañas. El siguiente concepto que vamos a aprender va a ser el concepto de Navigation. Para ello vamos a ir a la ventana de Unity de Navigation, y vamos a entender qué es lo que hace. Entonces vamos a Windows Navigation. Y vamos a hacer que nos cree nuestro sistema de navegación o nuestra escena de navegación. Entonces, lo que va a hacer es, las zonas por donde los elementos, los personajes que es el queremos a continuación, se van a poder mover sobre la escena. Entonces para ello tenemos que definir aquellos objetos que son estáticos. Entonces toda esta parte de que hemos creado, que es la zona por donde se mueven los personajes, los vamos a definir como objetos estáticos. Entonces, seleccionamos todos los objetos, vamos al y marcamos la pestaña, el checkbox de estático. Entonces, si ahora creamos también los que hemos hechos previamente. También los vamos a marcar como estáticos. Los hijos también. Entonces si ahora vamos a la ventana de Navigation, le damos al botón de. Le decimos el radio y la altura de los elementos que más y el height de los elementos que pueden subir, o pueden moverse por este navegador. Y hacemos un. Esto tardará unos segundos. Nos crea estas zonas azuladas que es por donde se pueden mover nuestros personajes. Entonces básicamente, si nosotros definimos que queremos ir de un punto A a un punto B, él estudiará el Navigation y definirá un camino por donde pueda ir de un punto A a un punto B. De forma automática. Y esto lo podemos utilizar para los enemigos. ¿Vale? Entonces you vemos que no va a poder atravesar las paredes que hemos creado previamente.