1 00:00:01,899 --> 00:00:05,179 Vale. Pues vamos a empezar, ¿vale, Daniel? 2 00:00:05,540 --> 00:00:05,919 Genial. 3 00:00:07,019 --> 00:00:14,380 Buenas tardes, Daniel. Hoy día, 22 de mayo, a las 18 horas, estamos convocados a través de Jefatura de Departamento 4 00:00:14,380 --> 00:00:21,320 para la defensa del módulo profesional del proyecto del ciclo informativo de desarrollo de aplicaciones web, ¿no? 5 00:00:21,800 --> 00:00:22,140 Sí. 6 00:00:22,719 --> 00:00:26,440 Te informo que esta grabación se usará en el entorno cerrado de Educomadrid, con fines educativos, 7 00:00:26,440 --> 00:00:31,539 y sólo estará disponible para los profesores a través del aula virtual 8 00:00:31,539 --> 00:00:36,159 para que puedan llevar a cabo la evaluación y calificación de la defensa del proyecto. 9 00:00:37,020 --> 00:00:40,920 En el aula virtual de proyecto habéis sido informados de los criterios de rúbrica de calificación. 10 00:00:41,840 --> 00:00:44,479 El orden de la presentación del proyecto es el siguiente. 11 00:00:45,299 --> 00:00:51,100 15 minutos máximos para defender el proyecto, 5 minutos para preguntas por parte del tribunal 12 00:00:51,100 --> 00:00:55,479 y dicho esto, su tiempo de exposición comienza a partir de este momento 13 00:00:56,359 --> 00:00:57,759 Adelante, Daniel, y mucha suerte. 14 00:00:58,219 --> 00:01:02,399 Perfecto. Pues hoy vengo a explicar mi proyecto llamado Mooning Adventure. 15 00:01:03,020 --> 00:01:06,739 Mooning Adventure es un juego de aventuras hecho en 3D en Unity. 16 00:01:07,480 --> 00:01:13,659 El juego cuenta con tres mapas diferentes, música ambiental, una interfaz de usuario intuitiva y controles de música incorporados. 17 00:01:14,540 --> 00:01:18,959 Los objetivos de este juego eran proporcionar una experiencia muy divertida, competitiva y emocionante a los jugadores. 18 00:01:18,959 --> 00:01:40,159 Y para esto he necesitado crear, diseñar un entorno de 3D abstractivo, realista del juego que he querido realizar. Implementar unas mecánicas agradables para que los usuarios puedan jugar bien, crear varios niveles para mantener el interés de los usuarios e implementar un elemento sonoro para mejorar la experiencia de juego de los usuarios. 19 00:01:40,159 --> 00:01:43,980 Ahora voy a empezar a explicar la interfaz de Unity 20 00:01:43,980 --> 00:01:45,900 Que ha sido donde he creado yo el juego 21 00:01:45,900 --> 00:01:48,180 Que para eso me voy a ir a Unity 22 00:01:48,180 --> 00:01:50,819 Y como podemos ver por la parte izquierda 23 00:01:50,819 --> 00:01:53,019 Tenemos las escenas cargadas 24 00:01:53,019 --> 00:01:59,719 Las escenas es el contenedor de los objetos que se van a ver en el juego 25 00:01:59,719 --> 00:02:02,019 Pueden ser tangibles o no tangibles 26 00:02:02,019 --> 00:02:07,540 Así que en la parte de abajo está el apartado de carpetas 27 00:02:07,540 --> 00:02:08,659 Llamado Assets 28 00:02:08,659 --> 00:02:20,599 Y en el apartado de la derecha está toda la información de cada objeto, script, carpeta que se necesite. 29 00:02:21,319 --> 00:02:31,719 En la parte de abajo podemos ver que hay una serie de carpetas y cada una de estas tiene que llevar un nombre específico sobre todo si son las escenas y los scripts. 30 00:02:31,719 --> 00:02:41,599 En el apartado de escenas, aquí están todas las escenas que yo he creado para poder hacer que el juego funcione correctamente 31 00:02:41,599 --> 00:02:51,840 En el apartado de script están todos los scripts que he necesitado para poder hacer que el juego funcione 32 00:02:51,840 --> 00:02:57,659 El personaje se mueva, los menús hagan algo, la música suene y todo eso 33 00:02:57,659 --> 00:03:19,500 En el apartado de imágenes, tengo la imagen de fondo, en el sonido los sonidos que he ido usando y todos estos de aquí, estos tres de aquí a la izquierda, son los assets públicos que he usado. Son todos públicos, se pueden usar, modelar como tú quieras, editar, así que por ese apartado, fenomenal. 34 00:03:19,500 --> 00:03:28,000 ahora voy a entrar al código vale voy a enseñar sobre todo lo más importante porque al haber 35 00:03:28,000 --> 00:03:36,819 tanto código aquí no todo hace todo lo importante que se necesita para aplicar aquí así que bueno 36 00:03:36,819 --> 00:03:42,000 voy a explicar el seguimiento de la cámara el seguimiento de la cámara básicamente lo que hace 37 00:03:42,000 --> 00:03:49,500 es que la cámara se enfoque solamente en el usuario independientemente de si hay algún 38 00:03:49,500 --> 00:03:58,259 objeto delante suyo o no vale lo voy a explicar un momentito de una forma muy rápida vale si 39 00:03:58,259 --> 00:04:08,759 nosotros nos vamos aquí al juego como podemos ver también suena tiene aquí su su su sus compañeros 40 00:04:08,759 --> 00:04:14,580 que puedes ver pero si nos acercamos a algún objeto la cámara se acerca vale para no tener 41 00:04:14,580 --> 00:04:22,139 que traspasar los objetos como tal básicamente lo que recojo es el personaje y mediante físicas 42 00:04:22,139 --> 00:04:29,680 y posiciones del juego calculamos dónde está y lo vamos acercando alejando dependiendo de 43 00:04:29,680 --> 00:04:37,879 dónde estén los objetos aparte del personaje este script que se llama recoger personaje es 44 00:04:37,879 --> 00:04:49,279 es porque el juego se basa en recoger los personajes que han sido raptados por otros alienígenas, ¿vale? 45 00:04:49,279 --> 00:04:51,180 Como podemos ver aquí, hay otro personaje. 46 00:04:51,959 --> 00:04:58,720 Entonces, para poder recoger este personaje, he tenido que hacer este script que básicamente lo que hace es controlar 47 00:04:58,720 --> 00:05:08,560 si mi personaje el personaje principal se acerca mucho al personaje al personaje que tenemos que 48 00:05:08,560 --> 00:05:18,240 recoger vale mira voy a enseñar aquí como lo recoge y cuando lo recoge aquí se añade un 49 00:05:18,240 --> 00:05:25,079 compañero salvado y el personaje desaparece también aquí a la hora de recoger el personaje 50 00:05:25,079 --> 00:05:31,639 he controlado también que se puedan no se puedan recoger personajes malos vale que en este caso 51 00:05:31,639 --> 00:05:40,040 estos personajes son personajes malos si nosotros lo tocamos nos han capturado y tendríamos que 52 00:05:40,040 --> 00:05:49,079 volver a empezar el juego vale ahora voy a explicar el movimiento del personaje básicamente esto lo que 53 00:05:49,079 --> 00:05:57,240 hace es que con las teclas w s de el espacio y con el shift izquierdo vale se pueda el personaje 54 00:05:57,240 --> 00:06:04,379 mover con la w va para adelante la s va para detrás la la izquierda y la de la derecha vale 55 00:06:04,379 --> 00:06:09,879 con el sip lo que hacemos es que el personaje corra más con el espacio lo que hacemos es que 56 00:06:09,879 --> 00:06:14,399 salte eso sigue controlado que el personaje no pueda saltar infinitas veces porque aquí 57 00:06:14,399 --> 00:06:23,079 en unity hay que controlar si el personaje está tocando el suelo o no vale por otra parte también 58 00:06:23,079 --> 00:06:24,319 he tenido que aplicarle físicas 59 00:06:24,319 --> 00:06:25,879 porque si no el personaje 60 00:06:25,879 --> 00:06:29,160 se mueve y se para de una forma uniforme 61 00:06:29,160 --> 00:06:30,980 y lo que yo quería era que fuese 62 00:06:30,980 --> 00:06:33,199 andando progresivamente y bajando la velocidad 63 00:06:33,199 --> 00:06:34,319 cuando se le vaya dejando 64 00:06:34,319 --> 00:06:36,899 esto se consigue 65 00:06:36,899 --> 00:06:38,399 recogiendo la posición 66 00:06:38,399 --> 00:06:40,740 con un vector y con la velocidad que le 67 00:06:40,740 --> 00:06:42,779 queremos dar al personaje 68 00:06:42,779 --> 00:06:44,540 y por último 69 00:06:44,540 --> 00:06:45,879 como hemos podido ver 70 00:06:45,879 --> 00:06:47,500 si nos vamos 71 00:06:47,500 --> 00:06:49,920 al principio del juego 72 00:06:49,920 --> 00:06:52,079 hay una musiquita 73 00:06:52,079 --> 00:06:59,839 Esta música, lo que he conseguido hacer es que la música no se pierda entre escenas 74 00:06:59,839 --> 00:07:06,240 Porque cuando tú tienes una escena en Unity, las cosas de esa escena son únicas para esa escena 75 00:07:06,240 --> 00:07:09,220 Entonces he conseguido que entre escenas la música siga estando 76 00:07:09,220 --> 00:07:13,500 El usuario también puede subir el volumen o bajarlo 77 00:07:13,500 --> 00:07:19,899 Y también he hecho un botoncito que si lo pulsamos se quita la música 78 00:07:19,899 --> 00:07:27,819 y esto se queda guardado vale esto si el usuario cierra el juego y se vuelve a meter se le quedan 79 00:07:27,819 --> 00:07:32,800 guardados las preferencias del usuario entonces la música si la ponemos a este volumen y la música 80 00:07:32,800 --> 00:07:39,230 está encendida se queda así si nosotros paramos el juego y lo volvemos a dar vuelve a estar en 81 00:07:39,230 --> 00:07:47,110 el mismo lado vale perfecto pues eso es lo más gordo que ha habido de programación he tenido 82 00:07:47,110 --> 00:07:52,810 más que hacer más programaciones por ejemplo la configuración que es el apartado de cargar 83 00:07:52,810 --> 00:07:59,810 en las escenas porque en unity las escenas se tienen que ir cargando de una forma correcta 84 00:07:59,810 --> 00:08:08,170 no puede haber más de dos escenas a la vez porque si no hay hay problemas entre los scripts y he 85 00:08:08,170 --> 00:08:15,310 tenido que irme ir jugando con las escenas vale después hay varios mundos hay tres mundos hecho 86 00:08:15,310 --> 00:08:22,790 tres mundos cada mundo es diferente y no puedes pasar a los siguientes mundos si no si no consigues 87 00:08:22,790 --> 00:08:29,610 que es pasarte el anterior vale y básicamente este es el juego la parte de programación como 88 00:08:29,610 --> 00:08:36,450 se ve y todo eso ahora voy a explicar la parte d como lo he desplegado para que se pueda jugar en 89 00:08:36,450 --> 00:08:45,730 página web a antes mencionar que unity se puede hacer juegos para windows linux mac android en 90 00:08:45,730 --> 00:08:50,409 páginas web en este caso yo el juego lo he hecho solamente para que pueda funcionar bien en páginas 91 00:08:50,409 --> 00:08:58,809 web pero gracias a unity esto es escalable vale si en algún momento este juego pongamos que tiene 92 00:08:58,809 --> 00:09:02,529 éxito en una página web se puede pasar a que sea un juego de escritorio que se puede pasar a que 93 00:09:02,529 --> 00:09:09,590 sea un juego móvil por ejemplo que tienen ahora mucho mucho peso en el mercado vale para eso he 94 00:09:09,590 --> 00:09:17,529 tenido que hacer una build que la build está específicamente hecha para que sea para web vale 95 00:09:17,529 --> 00:09:29,129 Y he tenido que optimizar bastante esta build porque obviamente las páginas web no pueden tirar tanto de recursos como si es una aplicación de escritorio, ¿vale? 96 00:09:29,129 --> 00:09:48,309 Bueno, ahora sí que voy a explicar cómo lo he desplegado para que se pueda jugar en una página web, ¿vale? He usado esta página que se llama Itch.io, que es una página donde tú puedes subir videojuegos, videos y demás, ¿vale? Mira, lo voy a enseñar aquí. 97 00:09:48,309 --> 00:09:51,950 Puedes descargarlos, puedes jugarlo en la web 98 00:09:51,950 --> 00:09:53,669 Y hay juegos muy buenos 99 00:09:53,669 --> 00:09:56,350 Puedes ponerlo de pago, puedes ponerlo gratuito 100 00:09:56,350 --> 00:09:57,269 Yo lo he puesto gratuito 101 00:09:57,269 --> 00:10:00,149 Y esta web te lo facilita muchísimo 102 00:10:00,149 --> 00:10:04,370 Tú cuando te creas el proyecto en tu cuenta 103 00:10:04,370 --> 00:10:07,750 Se te abre esta página 104 00:10:07,750 --> 00:10:09,389 Tú le tienes que poner un título 105 00:10:09,389 --> 00:10:11,809 La URL del proyecto 106 00:10:11,809 --> 00:10:15,549 Si quieres le puedes poner aquí una imagen 107 00:10:15,549 --> 00:10:40,230 Y le tienes que decir qué va a ser, si es un juego, si van a ser assets, si van a ser un juego físico, todo eso. Y esto es muy importante, aunque aquí haya la opción de Unity, cuando nosotros hacemos el juego en web, hay que decirle que sea HTML, porque si no, no carga directamente. 108 00:10:40,230 --> 00:10:44,090 Porque como se compila de una forma diferente 109 00:10:44,090 --> 00:10:46,250 Hay que decirle que es HTML 110 00:10:46,250 --> 00:10:48,929 Después, aquí puedes poner el precio 111 00:10:48,929 --> 00:10:50,610 En caso de que quieras ponerlo de pago 112 00:10:50,610 --> 00:10:52,730 Y aquí es donde subimos la build 113 00:10:52,730 --> 00:10:53,950 Siempre tiene que ser en zip 114 00:10:53,950 --> 00:10:59,370 Porque ya la página se nos encarga de hacer que todo cargue 115 00:10:59,370 --> 00:11:04,590 Aquí después hay opciones más avanzadas 116 00:11:04,590 --> 00:11:05,970 Que esto es para poner sobre todo 117 00:11:05,970 --> 00:11:08,289 Cómo de grande quieres que se vea 118 00:11:08,289 --> 00:11:24,490 Yo he puesto el juego en pequeñito por si acaso se quiere jugar en portátiles, si se quiere jugar en pantallas más pequeñas, más grandes, se pueda ver bien todo. Y también he puesto un botón de pantalla completa, pero al fin y al cabo, como he puesto que el canvas sea pequeño, no se ve en pantalla tan grande. 119 00:11:24,490 --> 00:11:31,169 por todo lo demás esto es hay que subirlo vale se guarda y nosotros podemos verse a la página 120 00:11:31,169 --> 00:11:37,809 y jugar vale pero como podemos ver aquí yo estoy con mi usuario esto no es como lo vería el usuario 121 00:11:37,809 --> 00:11:43,750 final vale después en esta página también podemos editar lo que es la página web vale podemos 122 00:11:43,750 --> 00:11:51,909 cambiar el fondo cambiar lo que los colores de las letras los colores de los botones dejarlo 123 00:11:51,909 --> 00:11:57,649 a nuestro gusto totalmente al fin y al cabo esto del ser una herramienta gratis tiene muchísimas 124 00:11:57,649 --> 00:12:04,690 opciones de edición vale ahora voy a enseñar cómo lo vería un usuario normal vale así es 125 00:12:04,690 --> 00:12:13,139 como lo vería un usuario normal si nosotros le damos aquí cargaría el juego vale y nosotros 126 00:12:13,139 --> 00:12:23,220 podemos ya para el usuario final esto ya es lo que podría haber cualquier persona que se quiera 127 00:12:23,220 --> 00:12:29,240 meter a este juego vale si nosotros nos metemos salimos en la base nosotros podemos mover saltar 128 00:12:29,240 --> 00:12:33,860 todo y aquí nos pone que nos hemos salvado a todos los compañeros y que tenemos que ir a la 129 00:12:33,860 --> 00:12:42,360 nave nosotros vamos corriendo y aquí salen los mapas vale nosotros vamos al primero tenemos que 130 00:12:42,360 --> 00:12:48,379 conseguir a todos los personajes que en este caso si los conseguimos todos teniendo cuidado de que 131 00:12:48,379 --> 00:12:57,460 no toquemos a los personajes malos esto ya cuando consigamos todos nuestros compañeros podemos pasar 132 00:12:57,460 --> 00:12:59,500 al mundo siguiente. Voy a intentarlos conseguir rápido. 133 00:13:01,399 --> 00:13:02,399 A ver si me acuerdo de dónde estaban. 134 00:13:06,679 --> 00:13:07,200 No, aquí no está. 135 00:13:11,049 --> 00:13:14,750 Estamos un mundito. 136 00:13:16,429 --> 00:13:18,470 Una vez que ya hayamos conseguido todos los personajes 137 00:13:18,470 --> 00:13:20,370 que suelen ser entre 4 y 5 138 00:13:20,370 --> 00:13:21,909 personajes que tenemos que recoger, ¿vale? 139 00:13:23,169 --> 00:13:24,250 Ya se nos pasaría 140 00:13:24,250 --> 00:13:25,970 a la siguiente pantalla. 141 00:13:26,710 --> 00:13:28,169 ¿Vale? A la siguiente nos volvería 142 00:13:28,169 --> 00:13:30,190 al mapa de mundos cuando volvamos 143 00:13:30,190 --> 00:13:31,850 a la nave 144 00:13:31,850 --> 00:13:34,169 y ahí nos dejaría seleccionar el siguiente 145 00:13:34,169 --> 00:13:35,370 mapa. ¿Vale? 146 00:13:35,370 --> 00:14:07,100 Como se puede ver, el juego actualmente funciona bastante bien. Además, los gráficos los intenté optimizar lo máximo posible para que el juego no llegase a explotar o a quedarse bastante pillado en una página web, porque los navegadores no pueden usar más de 2 GB de VRAM, que se llama. 147 00:14:07,100 --> 00:14:09,019 Entonces 148 00:14:09,019 --> 00:14:11,600 Ya que hemos salvado a todos los compañeros 149 00:14:11,600 --> 00:14:12,659 Ya podemos volver a la base 150 00:14:12,659 --> 00:14:13,320 Entonces este 151 00:14:13,320 --> 00:14:17,139 Este mundo ya no lo hemos pasado 152 00:14:17,139 --> 00:14:18,360 A ver si consigo llegar 153 00:14:18,360 --> 00:14:20,940 Vale 154 00:14:20,940 --> 00:14:24,039 Entonces, como ya hemos pasado el primero 155 00:14:24,039 --> 00:14:25,500 Podemos irnos al segundo 156 00:14:25,500 --> 00:14:28,940 Otro mapa, hay que conseguir a los personajes 157 00:14:28,940 --> 00:14:29,600 ¿Vale? 158 00:14:30,419 --> 00:14:32,519 Y ya nos podríamos ir al tercer mundo 159 00:14:32,519 --> 00:14:34,720 Una vez que nos cojamos a todos los personajes 160 00:14:34,720 --> 00:14:36,559 Como puedes ver 161 00:14:36,559 --> 00:14:43,980 los mapas son diferentes, sobre todo en color y en los visuales, ¿vale? Y hay diferentes 162 00:14:43,980 --> 00:14:50,779 personajes malos. Como podemos ver ahora, en este mundo son azules, ¿vale? También 163 00:14:50,779 --> 00:14:56,639 hay unos rojos, pero sobre todo son azules en este mapa, ¿vale? Una vez que consigamos 164 00:14:56,639 --> 00:15:06,889 a todos los compañeros, ¿vale? Ya podemos pasarnos al último mundo. Como ya lo hemos 165 00:15:06,889 --> 00:15:09,250 cogidos todos, vamos al último mundo 166 00:15:09,250 --> 00:15:12,990 y aquí ya tenemos el último mundo 167 00:15:12,990 --> 00:15:15,009 entonces una vez 168 00:15:15,009 --> 00:15:17,149 que nos pasemos el último 169 00:15:17,149 --> 00:15:17,490 mundo 170 00:15:17,490 --> 00:15:20,190 una vez que vayamos a la base 171 00:15:20,190 --> 00:15:22,190 nos pondrá que ya hemos salvado a todos 172 00:15:22,190 --> 00:15:25,029 si no nos los hemos salvado 173 00:15:25,029 --> 00:15:26,990 y nos hemos saltado a alguno, nos lo pondrá aquí 174 00:15:26,990 --> 00:15:28,129 que no hemos salvado como ahora 175 00:15:28,129 --> 00:15:30,789 entonces una vez que ya nos pasemos todos los mundos 176 00:15:30,789 --> 00:15:33,129 vale, a ver si me lo consigo 177 00:15:33,129 --> 00:15:34,049 pasar rápido 178 00:15:34,049 --> 00:15:39,370 ya el juego habría terminado 179 00:15:39,669 --> 00:16:00,570 El juego, al fin y al cabo, se puede mejorar y aumentar los personajes, aumentar sobre todo las animaciones de los personajes, mejorar lo que es la fluidez del juego, pero al fin y al cabo es lo que ha dado tiempo en estos tres meses que he estado con el proyecto. 180 00:16:00,570 --> 00:16:04,049 Y sobre todo lo más complicado es que todo fluya bien 181 00:16:04,049 --> 00:16:05,789 Porque si no fluye bien 182 00:16:05,789 --> 00:16:06,590 El proyecto no 183 00:16:06,590 --> 00:16:09,750 Para las páginas web no funciona nada bien 184 00:16:09,750 --> 00:16:12,029 Así que, bueno, en este caso 185 00:16:12,029 --> 00:16:14,009 A ver si consigo todos los personajes 186 00:16:14,009 --> 00:16:17,450 Y ya el juego se termina 187 00:16:17,450 --> 00:16:36,169 A ver 188 00:16:36,169 --> 00:16:37,429 No lo encuentro 189 00:16:37,429 --> 00:16:56,659 Vale, pues 190 00:16:56,659 --> 00:17:00,100 Una vez que ya nos hayamos pasado todo el juego 191 00:17:00,100 --> 00:17:01,659 Saldría aquí que nos lo hemos pasado, ¿vale? 192 00:17:02,159 --> 00:17:04,319 Y el usuario podrá jugar a veces que quiera 193 00:17:04,319 --> 00:17:07,059 Al fin y al cabo no se limita a que los personajes 194 00:17:07,059 --> 00:17:09,140 Una vez que ya lo hayamos conseguido ya se ha terminado 195 00:17:09,140 --> 00:17:11,400 Así que por esta parte 196 00:17:11,400 --> 00:17:13,619 Así es como sería el videojuego 197 00:17:13,619 --> 00:17:16,480 Por último 198 00:17:16,480 --> 00:17:17,480 Vale 199 00:17:17,480 --> 00:17:19,420 Por último 200 00:17:19,420 --> 00:17:22,759 Quería también explicar 201 00:17:22,759 --> 00:17:25,720 Que este juego ha sido hecho solo por mi 202 00:17:25,720 --> 00:17:29,460 No ha habido ninguna persona más que se ha dedicado a este juego 203 00:17:29,460 --> 00:17:30,099 Vale 204 00:17:30,099 --> 00:17:32,920 Todos los visuales los he usado yo 205 00:17:32,920 --> 00:17:59,619 Digo, los he recogido yo, toda la programación la he tenido que hacer yo. Así que lo único que me quedaría por mejorar, a mi gusto, en un proyecto tan pequeño y tan corto de tiempo, sobre todo, sería el rendimiento general del programa, porque al fin y al cabo se puede hacer que la programación sea más precisa o los modelados sean un poquito menos exigentes. 206 00:17:59,619 --> 00:18:02,400 también la interfaz de usuario 207 00:18:02,400 --> 00:18:05,140 la interfaz de usuario en Unity es un poquito básica 208 00:18:05,140 --> 00:18:06,680 sobre todo con las cosas que te da Unity 209 00:18:06,680 --> 00:18:09,259 y se podría mejorar 210 00:18:09,259 --> 00:18:11,019 bastante, también para que 211 00:18:11,019 --> 00:18:13,160 los usuarios que juegan al videojuego 212 00:18:13,160 --> 00:18:15,279 puedan divertirse 213 00:18:15,279 --> 00:18:17,039 más, sobre todo añadir más mapas 214 00:18:17,039 --> 00:18:19,059 y más elementos visuales y animaciones 215 00:18:19,059 --> 00:18:20,880 para los personajes y sonidos también 216 00:18:20,880 --> 00:18:23,019 ¿vale? y también lo que me gustaría 217 00:18:23,019 --> 00:18:24,960 mejorar para que no quede tan 218 00:18:24,960 --> 00:18:27,880 tan 219 00:18:27,880 --> 00:18:30,019 como lo diría 220 00:18:30,019 --> 00:18:31,759 tan robótico 221 00:18:31,759 --> 00:18:34,180 sería la transición entre las escenas 222 00:18:34,180 --> 00:18:36,500 hacer como un difuminado o algo así 223 00:18:36,500 --> 00:18:38,660 quedaría muy bien pero no ha habido 224 00:18:38,660 --> 00:18:39,880 tiempo para poderlo hacer 225 00:18:39,880 --> 00:18:41,380 entonces 226 00:18:41,380 --> 00:18:43,500 este ha sido todo 227 00:18:43,500 --> 00:18:46,680 espero que os haya gustado el juego 228 00:18:46,680 --> 00:18:48,660 que he hecho, el proyecto que he hecho 229 00:18:48,660 --> 00:18:50,680 y esto ha sido un gran reto para mi 230 00:18:50,680 --> 00:18:52,740 sobre todo porque a mi me encantan los videojuegos 231 00:18:52,740 --> 00:18:54,839 me encanta hacerlos 232 00:18:54,839 --> 00:18:56,319 probarlos, jugarlos 233 00:18:56,319 --> 00:18:59,359 y me parece muy interesante que se puedan hacer 234 00:18:59,359 --> 00:19:01,220 también para páginas web, sobre todo que la gente 235 00:19:01,220 --> 00:19:02,559 ahora lo que más usa son páginas web 236 00:19:02,559 --> 00:19:05,420 espero que os haya gustado 237 00:19:05,420 --> 00:19:07,740 y un saludo 238 00:19:07,740 --> 00:19:09,640 Muchas gracias Daniel por la presentación 239 00:19:09,640 --> 00:19:12,140 ¿Qué es lo que más te ha costado 240 00:19:12,140 --> 00:19:12,559 el proyecto? 241 00:19:13,079 --> 00:19:15,480 Lo que más me ha costado, sin duda 242 00:19:15,480 --> 00:19:17,420 alguna, el tema de 243 00:19:17,420 --> 00:19:18,759 que 244 00:19:18,759 --> 00:19:21,180 el personaje y la cámara 245 00:19:21,180 --> 00:19:22,380 se muevan a la vez 246 00:19:22,380 --> 00:19:24,460 sin lugar a duda 247 00:19:24,460 --> 00:19:26,200 ¿Cómo lo has hecho? 248 00:19:26,319 --> 00:19:45,960 ¿En programación? Pues mira, sobre todo, mira, yo tengo un personaje, ¿vale? Te lo voy a enseñar un segundito. Vale, yo tengo este personaje, ¿vale? Y aquí tengo una cámara, como puedes ver, ¿vale? 249 00:19:45,960 --> 00:20:03,839 Esta cámara en Unity son estáticas, ¿vale? Y para que una cámara se mueva y siga a un personaje, tengo que recoger ese personaje e indicarle que tiene que estar todo el rato en movimiento en base al movimiento del personaje, ¿vale? 250 00:20:03,839 --> 00:20:19,519 Mira, en programación lo que he hecho ha sido recoger el personaje, referenciarlo y añadirle una suavidad a la cámara, porque si no se mueve como a trompicones, va como cachito a cachito, va así la cámara. 251 00:20:20,200 --> 00:20:29,380 Entonces, para que la cámara vaya lentita y vaya suave, hay que meterle como un delay, un poquito de tiempo, para que se tarde en mover. 252 00:20:29,380 --> 00:20:38,579 También he necesitado recoger la posición relativa a la que está el personaje, la izquierda, la derecha, la profundidad y la altura 253 00:20:38,579 --> 00:20:43,000 Y la distancia máxima y mínima de la cámara para cuando se acerque o se aleje 254 00:20:43,000 --> 00:20:49,559 También he tenido que recoger todos los obstáculos que son los objetos tangibles del juego 255 00:20:49,559 --> 00:20:57,640 Por ejemplo, los árboles, las rocas, la nave, todo eso he tenido que recogerlo también, todo el rato lo estoy recogiendo 256 00:20:57,640 --> 00:21:18,740 Y también he necesitado recoger la distancia, la dirección a la que se mueve el personaje y la velocidad. Aquí en Unity hay unos métodos predefinidos. Sobre todo se llama el método start, el update y el late update. 257 00:21:18,740 --> 00:21:31,200 Que el late update tarda un poquito más que el update. En el start es cuando se inicia el script, la primera vez que se abre el script. Y ahí recojo lo que es la dirección del personaje y de la cámara. 258 00:21:32,579 --> 00:21:47,200 En el late update lo que hago es asignarle al personaje y ponerle la posición de la cámara delante del personaje y ajustar la distancia que hay entre la cámara y el personaje. 259 00:21:47,200 --> 00:21:48,839 Y ya una vez que el personaje se mueve 260 00:21:48,839 --> 00:21:49,799 La cámara la va siguiendo 261 00:21:49,799 --> 00:21:52,460 Y si se acerca a alguna 262 00:21:52,460 --> 00:21:55,319 Alguna roca, por ejemplo 263 00:21:55,319 --> 00:21:56,259 La cámara se acerca 264 00:21:56,259 --> 00:21:58,740 Si se va de esa roca, la cámara se aleja 265 00:21:58,740 --> 00:22:00,539 Porque si no, el personaje no se vería todo el rato 266 00:22:00,539 --> 00:22:03,359 Eso ha sido lo que me ha más costado 267 00:22:03,359 --> 00:22:04,339 Sin lugar a duda 268 00:22:04,339 --> 00:22:05,980 Porque es lo que más hay que controlar 269 00:22:05,980 --> 00:22:06,579 Sobre todo 270 00:22:06,579 --> 00:22:08,839 Distancias 271 00:22:08,839 --> 00:22:11,779 Las distancias en Unity son un poquito fastidiadas 272 00:22:11,779 --> 00:22:13,400 Vale, vale, muy bien 273 00:22:13,400 --> 00:22:16,240 Y, sustituyendo el código 274 00:22:16,240 --> 00:22:25,779 simplemente algún tipo de interfaz cuando crea la aplicación y yo diría sí unity aquí mira cómo 275 00:22:25,779 --> 00:22:34,960 enseñar cuando nosotros creamos el juego vale lo que el usuario siempre ve es la cámara para que 276 00:22:34,960 --> 00:22:44,740 estos botones mira te voy a poner un ejemplo para que estos botones para que estos botones se vea 277 00:22:44,740 --> 00:22:50,359 se tiene que hacer una cosa que se llama canvas vale entonces la interfaz siempre tiene que estar 278 00:22:50,359 --> 00:22:56,980 dentro de un canvas vale todos los botones todas las letritas todas las cosas que se quieran tocar 279 00:22:56,980 --> 00:23:01,660 del usuario que el usuario quiera que vea por encima de lo que es el juego se tiene que hacer 280 00:23:01,660 --> 00:23:08,059 sobre un canvas que sabe es la interfaz y esa interfaz también se tiene que programar porque 281 00:23:08,059 --> 00:23:10,440 por ejemplo los textos 282 00:23:10,440 --> 00:23:11,779 no siempre 283 00:23:11,779 --> 00:23:14,940 se pueden mostrar y tú lo puedes programar 284 00:23:14,940 --> 00:23:17,059 para que se muestre cuando quieras o como quieras 285 00:23:17,059 --> 00:23:18,660 o poner lo que tú quieras 286 00:23:18,660 --> 00:23:20,880 los botones lo mismo, los botones 287 00:23:20,880 --> 00:23:23,119 de por sí no hacen nada, a no ser que tú los programes 288 00:23:23,119 --> 00:23:24,180 como he hecho aquí 289 00:23:24,180 --> 00:23:26,900 son métodos que te aparecen porque tú implementas una interfaz 290 00:23:26,900 --> 00:23:28,200 efectivamente 291 00:23:28,200 --> 00:23:31,700 genial, vale 292 00:23:31,700 --> 00:23:40,930 bueno Daniel, pues yo creo que 293 00:23:40,930 --> 00:23:42,250 por mi parte ninguna pregunta más 294 00:23:42,250 --> 00:23:43,789 perfecto 295 00:23:43,789 --> 00:23:46,049 muchas gracias por hacer la presentación 296 00:23:46,049 --> 00:23:47,109 muchas gracias a ti 297 00:23:47,109 --> 00:23:49,589 voy a detener ahora la grabación, ¿vale? 298 00:23:49,970 --> 00:23:50,309 genial