1 00:00:00,000 --> 00:00:21,000 Hola Ignacio, vale, estamos viendo, bueno, se te ve, estamos viendo que hay algún problema con la conexión, no sé en qué parte, pero bueno, para no demorar más esto, como vas a compartir pantalla y sé que eres tú, pues seguimos adelante, ¿vale? 2 00:00:21,000 --> 00:00:34,000 Lo que comenté en otras ocasiones, tienes un tiempo de 15 minutos, siempre digo, si estáis contando algo interesante, os pasáis un poco, no os interrumpiré, pero en cualquier caso, si llegáis a los 20, sí que os interrumpo, ¿vale? 3 00:00:34,000 --> 00:00:55,000 Entonces, daréis ese tiempo de presentación y luego, pues habrá unos 5 minutos de ronda de preguntas, ¿de acuerdo? La presentación, la defensa de este proyecto final, va a ser grabada, pues para tener constancia de ello y también para el proceso evaluativo, pues para que lo puedan ver otros profesores, etc. 4 00:00:55,000 --> 00:01:11,000 Va a ser algo gestionado a nivel educativo, es decir, que no va a salir de EducaMadrid, por decirlo así. Bueno, ya habías sido informado, entonces, bueno, no sé si tienes algún tipo de duda previa al comienzo. 5 00:01:11,000 --> 00:01:24,000 No, nada, ninguna. Vale, pues en ese caso, empiezo a contar que empiezas a las 16.50, así que si quieres ir compartiendo pantalla, etc., hasta que seas ahora. 6 00:01:24,000 --> 00:01:33,000 Si me puedes confirmar que se ve, estoy compartiendo ya. Perfecto, estoy viendo un PowerPoint, Might Seeker, perfecto. Pues cuando quieras, puedes comenzar. 7 00:01:34,000 --> 00:01:46,000 Vale, perfecto. Nada, mi nombre es Ignacio San Muñoz y me presento para presentar el proyecto de fin de curso de Animación 3D, Juegos y Entornos Interactivos. 8 00:01:46,000 --> 00:02:01,000 Lo que he hecho durante este trimestre ha sido un juego, una aventura gráfica llamada Might Seeker, en la que tú llevas a un criptozoologo que intenta encontrar lo que son animales fantásticos por el mundo. 9 00:02:01,000 --> 00:02:23,000 En un primer momento, la idea principal era hacer cinco mundos, cinco mundos diferentes. Escocia con el monstruo de lagones, África con el grifo, Asia con el bungee, América con el Bigfoot y Oceanía, perdón, Asia es con el grifo y Oceanía con el bungee. 10 00:02:23,000 --> 00:02:41,000 No, perdón, Asia con los dragones y Oceanía con el bungee. El problema es que al empezar el desarrollo, el tiempo que me daba era bastante corto, por lo que al final, en un principio, me quedé con tres mundos. 11 00:02:41,000 --> 00:03:00,000 Escocia, América y Asia. Al principio, según iba desarrollando, se me iba todo bien, pero según como estaba haciendo las prácticas al momento, no me dio tiempo a hacer mucho más, entonces simplemente me quedé con el primer mundo, que ha sido Escocia. 12 00:03:01,000 --> 00:03:28,000 El juego en sí, directamente empezamos en una cinemática cerrada, cerrada entre comillas porque puedes interactuar, con el que te va presentando un poco la historia de nuestro personaje principal, de Alan, que habla con su compañero y su compañero le dice que le incita a buscar esos animales mitológicos, a lo que Alan acepta el desafío. 13 00:03:28,000 --> 00:03:43,000 Una vez acabada esta cinemática, nos vamos al mundo principal, a Escocia, lo que es el muelle, donde nos podemos encontrar el primero al pescador, que es de la trama, y a otra par de turistas que nos ayudarán también un poco en el desarrollo del juego. 14 00:03:43,000 --> 00:03:55,000 Si nos vamos hacia la derecha del mundo, nos vamos a encontrar la tienda, en el que vemos un pequeño mapa que podemos intentar interactuar con el vendedor para ver si nos lo da. 15 00:03:55,000 --> 00:04:16,000 Una vez conseguido el mapa, nos podemos ir a la parte de la izquierda del mundo, donde nos encontraremos el bar, donde encontraremos a un hombre, que es un especialista en el lagonés y un tuitazo también que lleva muchos años estudiando el lagonés, y que nos dirá como interpretar el mapa. 16 00:04:17,000 --> 00:04:35,000 Una vez avanzado durante toda la historia del juego, volvemos al mundo principal, vamos al muelle donde está el pescador, y este nos lleva al lago donde nos dirá que busquemos en el radar para encontrar a Nessie. 17 00:04:35,000 --> 00:04:48,000 Luego nos aparece lo que es el minijuego de la búsqueda de Nessie, que es lo que una vez acabado nos llevará al final del juego y de ahí a lo que es el mundo entero. 18 00:04:48,000 --> 00:05:07,000 Una de las partes importantes de este juego es que he creado las imágenes con IA, ¿por qué he hecho esto? Básicamente porque mis ideas principales, no soy un buen dibujante por lo que este es un ejemplo de lo que hice ya al principio, que realmente no es muy agraciado que digamos. 19 00:05:07,000 --> 00:05:23,000 Pasando de esto, me pasé directamente a descargar algo de internet y hacer una copia relativa a lo que busqué en internet, y es lo que salió, pero tampoco me convencía del todo, por lo que al final me decidí por trabajar con la IA. 20 00:05:23,000 --> 00:05:49,000 Que ya como vemos tenemos un personaje ya mucho más estilizado, mucho más decente realmente. Esto también lo he hecho con los fondos. Este es un fondo que hice yo, completamente cogido partes de internet y partes creadas mías, y lo que vemos que he pasado con la IA, que es donde vemos ya mucho más mundo y mucho más decente la verdad. 21 00:05:49,000 --> 00:06:00,000 A partir de aquí pasamos lo que es al desarrollo del juego, donde vamos a ver varias partes. La escena, el movimiento entre los fondos, el movimiento del personaje, los diálogos y el minijuego final del solo. 22 00:06:01,000 --> 00:06:12,000 Lo que es la escena, está todo concentrado en una misma escena, donde tenemos los diferentes fondos y que podemos trasladarnos entre ellos. ¿Por qué una sola escena? 23 00:06:12,000 --> 00:06:29,000 Básicamente si pasamos de la escena 1 a la escena 2 y volvemos, tenemos que hacer un guardado de variables, lo que puede conllevar un consumo de recursos, y lo que puede hacer que en los ordenadores quizás un poco más antiguos vaya el juego más lento. 24 00:06:29,000 --> 00:06:38,000 En este caso al ser tan pequeño no debería dar problema a ningún ordenador, pero sí que se ha ido pensando en ello. 25 00:06:39,000 --> 00:06:56,000 Pasando a los scripts, lo primero que tenemos es el movimiento entre fondos, es bastante sencillo. Simplemente detectamos cuando el personaje está en un lugar concreto del mapa y le trasladamos a la posición que queremos trasladar. 26 00:06:56,000 --> 00:07:13,000 Le añadimos, le cambiamos la escala porque hay algunas imágenes más grandes y otras más pequeñas. Cambiamos la cámara de sitio y desactivamos el script del movimiento para evitar posibles errores de juego. 27 00:07:13,000 --> 00:07:31,000 Para el movimiento del personaje es un script un poquito más enrevesado también. En este caso tenemos un collider que detecta si hemos pulsado o no encima del collider. Si pulsamos encima de este collider pasamos a la corruptina del movimiento. 28 00:07:32,000 --> 00:07:54,000 En esta corruptina básicamente lo que hacemos es trasladar la posición del sprite del personaje a la posición donde hemos pulsado, activando una animación si el juego detecta si se mueve hacia la izquierda o hacia la derecha. 29 00:07:54,000 --> 00:08:06,000 Al final desactivamos la animación cuando se queda quieto y ya está. Este es el script del movimiento. Para el script del diálogo este es un poquito más extenso porque he vinculado aquí todo lo que es el desarrollo del juego. 30 00:08:06,000 --> 00:08:35,000 Lo primero que tenemos que hacer es detectar cuando el personaje está encima de un NPC para saber si puede hablar con ese NPC o no. Una vez que estamos ahí si pulsamos el botón de hablar lo primero que hace el script es detectar si está dentro de ese personaje o no, o de otro personaje vamos. 31 00:08:35,000 --> 00:09:02,000 Y luego ya pasarlo por un filtro de booleanos para saber que diálogo tiene que lanzar. Si no tiene ningún diálogo por decir el NPC en ese momento pasa a una corruptina de Nautilus que la he llamado para que salgan los puntitos y decir que no tiene ningún diálogo en ese momento. 32 00:09:03,000 --> 00:09:16,000 Este script es un poquito especial. Lo primero que hacemos es desactivar el movimiento del personaje para evitar posibles movimientos del personaje mientras estamos pulsando para hablar. 33 00:09:16,000 --> 00:09:29,000 Y desactivar los botones porque daba un error en que si pulsabas el botón mientras estabas hablando directamente se desvinculaba todo el script y teníamos que salir del juego para volver a hacerlo funcionar. 34 00:09:29,000 --> 00:09:44,000 Lo siguiente que vemos es, que llamamos a la corruptina proyectal, que está vinculado a unas variables vinculadas en sí mismas con el NPC con el que estamos hablando. 35 00:09:44,000 --> 00:09:54,000 Lo primero que vemos es el bocadillo, lo siguiente la animación de hablar, lo siguiente el texto que aparece dentro del bocadillo y otros dos un poquito más especiales. 36 00:09:54,000 --> 00:10:07,000 Lo primero el diálogo, básicamente este es un int que va sumando cada vez que hablamos para que el script no se pierda en el diálogo y poder continuar. 37 00:10:07,000 --> 00:10:14,000 Y el siguiente número que vemos es otro int que nos dice la posición en el array que está el diálogo que queremos enseñar. 38 00:10:15,000 --> 00:10:32,000 Pasando por aquí esperamos a que el diálogo sume uno, básicamente para confirmar que ha pasado por aquí y lo siguiente que hacemos es esperar a pulsar el botón del ratón para lanzar el siguiente diálogo que en este caso es del NPC. 39 00:10:33,000 --> 00:10:43,000 Si nos vamos al final del script vemos por aquí que lo primero que hacemos es desactivar todo lo que había quedado activado de la anterior corruptina. 40 00:10:44,000 --> 00:10:59,000 Volvemos el diálogo a cero para que no dé errores con otros scripts y en algunos casos o no pasamos a true alguna booleana para lo que es la continuación del desarrollo del juego con el script anterior que hemos visto. 41 00:10:59,000 --> 00:11:05,000 Al final simplemente volvemos a activar el movimiento y los botones y dejamos que continúe el juego. 42 00:11:06,000 --> 00:11:18,000 Entrando en el PlayerTalk lo que vemos primero es una llamada de alas variables que comentaba antes que están vinculadas en esta parte del script. 43 00:11:19,000 --> 00:11:28,000 Lo primero que hacemos es desactivar el bocadillo del personaje, del NPC, la animación, el texto, los sonidos y aumentamos el diálogo como decía antes. 44 00:11:29,000 --> 00:11:44,000 Activamos el bocadillo del personaje, activamos la animación, el sonido y en esta línea le asignamos la posición del array de la línea que queremos que enseñe. 45 00:11:45,000 --> 00:11:57,000 Lo último que vemos por aquí es una serie de llamadas para asignar lo que vienen siendo las variables especiales de cada NPC. 46 00:11:59,000 --> 00:12:06,000 En el siguiente script lo que vemos es básicamente lo que he comentado antes, la asignación de las variables de cada personaje. 47 00:12:07,000 --> 00:12:22,000 Al final de todo el script, una vez que hemos pasado por todos los personajes, o sea, hemos ya jugado con todos, le llamamos a CanSona que es lo que hace que lancemos el juego del Sona. 48 00:12:23,000 --> 00:12:29,000 Un segundito que está cargando, que aquí viene un git que tarda un poquito en cargar, pero bueno lo voy explicando. 49 00:12:31,000 --> 00:12:39,000 Aquí lo que vemos en el Sona, esto es directamente en la ventana de desarrollo del juego, vemos lo que es la imagen que pasa por encima, hace un barrido, 50 00:12:39,000 --> 00:12:51,000 y un collider que está justo por encima, creo que sí que se llega a ver, para detectar lo que es un collider, que en este caso no se ve, que está encima de la posición que hemos dicho que sea Lessie. 51 00:12:52,000 --> 00:12:59,000 Lo que hacemos con esto es básicamente, una vez que pulsamos espacio, cuando están los dos colliders chocando, hacemos que avance. 52 00:12:59,000 --> 00:13:09,000 Si pulsamos espacio, cuando el collider no está encima del otro collider, hace que vaya para atrás, es como funciona el minijuego. 53 00:13:11,000 --> 00:13:20,000 Viendo el script, este es un poquito más enrevesado, lo primero que hacemos es en el Start Game, aunque está aquí al final de todo, movemos la cámara, desactivamos todo lo que tenemos que desactivar, 54 00:13:21,000 --> 00:13:32,000 activamos las instrucciones, el sonido del sonar, cuando pulsamos espacio, es que hemos leído las instrucciones y podemos pasar al juego, y esperamos dos segundos para que se instancie la primera imagen. 55 00:13:33,000 --> 00:13:48,000 No lo he dicho, se me había olvidado, como funciona es instanciando imágenes del fondo, una vez que acertamos, se instancia la siguiente imagen, y se destruye la anterior imagen. 56 00:13:50,000 --> 00:13:58,000 En esta parte del script, básicamente es lo que comentaba antes, le decimos al script que está pasando un collider por encima del otro, nada más. 57 00:13:59,000 --> 00:14:08,000 En la otra parte del script vemos como funciona el juego, lo primero es como lanzamos el Start Game, que es básicamente con la booleana anterior. 58 00:14:09,000 --> 00:14:26,000 Aquí vemos cuando acertamos, si acertamos y pulsamos espacio, añadimos una currenvg, le damos el sonido de victoria, y activamos deposition, que es lo que comentaba antes de borrar la anterior imagen e instanciar la nueva. 59 00:14:27,000 --> 00:14:35,000 Si fallamos, hace lo mismo, lo único que restamos en currenvg, lo que hace que en vez de instanciar la siguiente, instancie la anterior. 60 00:14:35,000 --> 00:14:43,000 En este caso le bloqueamos a cero, para que si baja de cero, no baje y crea un error. 61 00:14:44,000 --> 00:14:55,000 Cuando llegamos a currenvg 5, es que hemos acertado todo el juego, y le decimos que solo sume uno, para que solamente nos vaya a este script por si sola, a esta parte del script. 62 00:14:55,000 --> 00:15:04,000 En este caso devolvemos la imagen, la cámara, a la imagen final, activamos la animación del sci-final, y paramos el sonido del sonar. 63 00:15:05,000 --> 00:15:11,000 Añadimos currenvg y ponemos igual a 7 para que deje de funcionar el script del minijuego. 64 00:15:12,000 --> 00:15:17,000 Finalmente, elementos a mejorar que creo que debería mejorar en el juego. 65 00:15:17,000 --> 00:15:27,000 Lo primero, las animaciones, tanto de los personajes como de las interacciones, porque se quedan bastante cortas, además que me ha surgido algún error que no he podido solucionar en un barato tiempo. 66 00:15:28,000 --> 00:15:38,000 También los sonidos del juego, dado que es básicamente tres sonidos, uno ya que es el propio del juego, y otro que es hablar, que básicamente lo he grabado a mi mismo. 67 00:15:39,000 --> 00:15:46,000 Suena bastante feo, pero era lo único que encontraba, y el sonido del splash de cuando cogemos el flamenco. 68 00:15:47,000 --> 00:15:55,000 También mejorar las interacciones, tanto de los personajes como de los objetos, para añadirle un poco más de intrigües al juego y que no vaya tan directo al final. 69 00:15:56,000 --> 00:16:00,000 También mejorar los diálogos, ya que personalmente me parece que se han quedado un poco cortos. 70 00:16:01,000 --> 00:16:16,000 Si añadimos un poquito más de diálogos, podemos añadir un poquito más de jugabilidad al juego, para mejorar lo que viene siendo toda la jugabilidad. 71 00:16:18,000 --> 00:16:28,000 Y bueno, hasta aquí. Simplemente como apunte final, decir que creo personalmente que al principio, cuando empecé a desarrollar este juego, fallé en la decisión de crear este juego, 72 00:16:29,000 --> 00:16:40,000 porque quizás era demasiado, y también incitaba mucho al diseño en vez del desarrollo, cuando yo pienso que habría funcionado mejor en un propio desarrollo que en diseño, 73 00:16:41,000 --> 00:16:43,000 en un juego que sea más de desarrollo que de diseño. 74 00:16:44,000 --> 00:16:46,000 Vale, ya estaría, ¿no? 75 00:16:47,000 --> 00:16:49,000 No te estoy oyendo, Daniel. 76 00:16:50,000 --> 00:16:56,000 Sí, disculpa, que para no interrumpirte me había quitado el micrófono. Vale, genial, muchas gracias por la presentación. 77 00:16:57,000 --> 00:17:01,000 Dame un minutillo, que miro un par de cosas y empezamos la ronda de preguntas, ¿vale? 78 00:17:02,000 --> 00:17:03,000 Vale. 79 00:17:04,000 --> 00:17:05,000 A ver, un segundo. 80 00:17:13,000 --> 00:17:14,000 Vale. 81 00:17:29,000 --> 00:17:34,000 Ah, mira, ahora te veo en que hasta ahora no se te veía la cámara, perfecto. 82 00:17:35,000 --> 00:17:37,000 Sí que veo que se me pone en amarillo ahora, en vez de en rojo, no sé. 83 00:17:37,000 --> 00:17:42,000 Bueno, da igual, mientras sepamos que eres tú, que ya queda documentado, perfecto. 84 00:17:43,000 --> 00:17:51,000 Pues, varias cosas. En la diapositiva 9 de la presentación, porque era una de las cosas que me llamaban la atención, por si no te dais en cuenta, 85 00:17:52,000 --> 00:18:01,000 tienes la imagen de un script, si la puedes compartir un segundo, te lo agradezco, o bueno, te lo digo, que pones que paras todas las corrutinas, ¿vale? 86 00:18:02,000 --> 00:18:04,000 Sí, la del movimiento entre fondos, sí. 87 00:18:04,000 --> 00:18:14,000 ¿Eso lo has puesto al final? Porque en la memoria justo estaba viendo los scripts que ibas incluyendo y no vi este. 88 00:18:15,000 --> 00:18:24,000 Claro, ya estaba, estás dejando un montón de corrutinas abiertas, es verdad, lo he ido examinando, tampoco igual me he fijado en este punto en concreto, 89 00:18:25,000 --> 00:18:33,000 pero sí que en algún momento no has decidido que las corrutinas se corten todas las que haya cuando cambias, digamos, de espacio, ¿verdad? 90 00:18:34,000 --> 00:18:37,000 Sí, juraría que sí es que lo había metido esto en el... 91 00:18:38,000 --> 00:18:41,000 Igual es cosa mía, de todos modos así tú también me cuentas. 92 00:18:42,000 --> 00:18:52,000 Sí, bueno, básicamente lo del parar las corrutinas al principio no lo hice, pero al principio cuando estaba desarrollando, 93 00:18:53,000 --> 00:18:59,000 básicamente lo que hacía era instanciar un personaje nuevo en la nueva posición en el otro fondo. 94 00:18:59,000 --> 00:19:11,000 Pero esto me conllevaba errores porque el script del diálogo donde está vinculado todo lo que es el desarrollo del juego, 95 00:19:12,000 --> 00:19:18,000 está metido en el personaje, está metido en el personaje para que esté bien configurado. 96 00:19:19,000 --> 00:19:26,000 Y al instanciar un nuevo personaje, las variables que necesitaba para el desarrollo del juego, 97 00:19:26,000 --> 00:19:30,000 se borraban todas y volvían todas a falso. 98 00:19:31,000 --> 00:19:36,000 Entonces lo que hice fue básicamente hacer el traslado, cambiaba este script por completo, 99 00:19:37,000 --> 00:19:44,000 hacer el traslado en vez de instanciar un nuevo personaje y parar todas las corrutinas para que... 100 00:19:45,000 --> 00:19:53,000 Primero hice el traslado y al hacer el traslado el personaje era curioso porque se me iba, según pulsaba al borde del mapa, 101 00:19:53,000 --> 00:20:03,000 para cambiarse de imagen, sí que se cambiaba de imagen, pero el personaje estaba intentando ir otra vez al punto donde había clicado. 102 00:20:04,000 --> 00:20:07,000 Entonces eso es lo que sucedió, básicamente parando todas las corrutinas. 103 00:20:08,000 --> 00:20:11,000 Si paraba todas las corrutinas en este script, dejaba de hacer eso. 104 00:20:12,000 --> 00:20:24,000 Vale, luego, ¿por qué has decidido añadir los botones de hablar y de interactuar como botones y no quizá como atajos de teclado? 105 00:20:25,000 --> 00:20:30,000 ¿Me explico? ¿Cómo el personaje se mueve con clics de ratón? 106 00:20:31,000 --> 00:20:34,000 Claro, realmente tener que ir a un botón arriba para... 107 00:20:35,000 --> 00:20:40,000 ¿Por qué no optaste por indicar desde el principio a lo mejor que la tecla A sirve para... o la H para hablar? 108 00:20:41,000 --> 00:20:43,000 ¿Por qué no has hecho así? 109 00:20:44,000 --> 00:20:52,000 Al principio sí que, por ejemplo, todos los juegos que se han hecho, pues bueno, aventuras gráficas clásicas y tal, 110 00:20:53,000 --> 00:20:56,000 siempre se han hecho con ratón, solo funcionaba el ratón. 111 00:20:57,000 --> 00:21:01,000 Sí que funcionaba alguna parte del teclado, pero normalmente el ratón, entonces pensé en esto. 112 00:21:02,000 --> 00:21:08,000 Sí que al principio intenté hacerlo por teclado, pero me estaba dando muchos errores, 113 00:21:08,000 --> 00:21:16,000 se iniciaban diferentes scripts al momento y no sabía por qué no conseguir deducirlo, 114 00:21:17,000 --> 00:21:24,000 entonces la solución fue pulsarlo con el ratón y con eso solamente me funcionaba lo que quería que funcionase. 115 00:21:25,000 --> 00:21:32,000 No me acuerdo, ahora mismo eso me pasó casi al principio del desarrollo y no me acuerdo exactamente el... 116 00:21:33,000 --> 00:21:34,000 ¿Qué ocurrió? 117 00:21:34,000 --> 00:21:41,000 Lo que me pasaba, el problema que me pasaba, era eso, que al pulsar el teclado, el botón que estaba asignado, 118 00:21:42,000 --> 00:21:51,000 como que me iniciaba diferentes scripts, no funcionaba bien exactamente y pues bueno, con el ratón directamente funcionaba a la primera. 119 00:21:52,000 --> 00:21:54,000 No tuve que arreglar nada a partir de ahí. 120 00:21:55,000 --> 00:22:01,000 Vale, sí que es verdad, que bueno, sería darle una vuelta, etcétera, que lo que te digo, 121 00:22:01,000 --> 00:22:05,000 que a lo mejor como homenaje a otros juegos clásicos, pues puede tener su fundamento, 122 00:22:06,000 --> 00:22:13,000 pero yo probando el juego, sí que era claro, como a veces hay que saber si estás en el sitio adecuado para hablar, etcétera, 123 00:22:14,000 --> 00:22:17,000 tener que mover el ratón para dar al botón y si no volver a moverte, etcétera, 124 00:22:18,000 --> 00:22:24,000 bueno, yo es una cosa que si avanzara a lo mejor lo plantaría de otra forma, que bueno, que como funciona no hay problema, vamos. 125 00:22:25,000 --> 00:22:36,000 Hay una cosa de la memoria también, que es ¿por qué las imágenes pone figura 1, 2 y 3 y luego el pie de foto no sirve para describir nada 126 00:22:37,000 --> 00:22:38,000 ni tampoco está en el cuerpo de texto? 127 00:22:39,000 --> 00:22:48,000 Pues sinceramente, porque como las memorias, nuevamente, todas las imágenes vienen con una numeración, lo puse así, 128 00:22:48,000 --> 00:22:59,000 no para nada en concreto. Sí que bueno, sobre todo en los scripts, pongo el script y debajo lo explico o arriba. 129 00:23:00,000 --> 00:23:01,000 Sí, pero en las primeras, por ejemplo. 130 00:23:02,000 --> 00:23:06,000 Sí, pero no está diciendo en la imagen tal, sí que a lo mejor no debería haberlo puesto. 131 00:23:07,000 --> 00:23:18,000 Vale, luego en el sonar, entonces, lo que has hecho es animaciones, me has comentado que eran animaciones de fotogramas, 132 00:23:19,000 --> 00:23:24,000 entiendo la animación de la barra y luego por animación entiendo que también vas moviendo el collider. 133 00:23:25,000 --> 00:23:26,000 El collider, sí. 134 00:23:27,000 --> 00:23:33,000 Vale, en la memoria indicas que hubiera sido más fácil separar lo que es el punto de cada animación de donde está Nessie 135 00:23:33,000 --> 00:23:42,000 para que fuera independiente. Como hay una reflexión que incluyes, entiendo que esto también es tiempo de ir probando 136 00:23:43,000 --> 00:23:46,000 y luego encuentras otras soluciones. ¿Cómo lo enfocarías ahora? 137 00:23:47,000 --> 00:23:56,000 Sí, claro. No, el tema es que claro, lo que son las imágenes del sonar, son seis imágenes diferentes con el puntito en diferentes sitios. 138 00:23:57,000 --> 00:24:07,000 Habría sido, yo una vez ya desarrollado, además con el juego ya acabado y escribiendo la memoria, me di cuenta de que habría sido muchísimo más sencillo 139 00:24:08,000 --> 00:24:19,000 en vez de hacer las seis imágenes, hacer una imagen y un botón y una imagen del puntito. Y ese puntito que a lo mejor en vez de ser exactamente 140 00:24:19,000 --> 00:24:26,000 el mismo sitio cada vez, que se instanciasen de forma rando, lo único que cada vez más cerca del centro. 141 00:24:27,000 --> 00:24:36,000 Habría sido sobre todo más interactivo porque si fallases volvía para atrás y no volvía exactamente al mismo sitio, sino que estaba en otro sitio. 142 00:24:37,000 --> 00:24:48,000 Y si volvía para adelante, pues cada vez que jugases sería diferente. Eso ya lo pensé escribiendo la memoria y habría dado un poco más de juego. 143 00:24:49,000 --> 00:24:55,000 Vale, pero bueno, está bien que llegues a la reflexión, que son las cosas que van surgiendo. 144 00:24:56,000 --> 00:25:06,000 Ya por último, bueno, hablas de, y lo has dicho también en la presentación, que de comenzar otra vez el proyecto hubieras escogido otro tipo de proyecto, 145 00:25:07,000 --> 00:25:14,000 entiendo, para enfrentarte a retos quizá de otras naturalezas que ir hilando diálogos. ¿A qué te refieres? 146 00:25:14,000 --> 00:25:27,000 Sí, no, exacto. Es básicamente, yo de diseño, sí que al principio cuando empecé a estudiar esto pensé más meterme en diseño que en desarrollo, que en programación. 147 00:25:28,000 --> 00:25:31,000 Pero según ha ido avanzando el curso me he metido más en programación porque me gusta más. 148 00:25:32,000 --> 00:25:37,000 ¿Qué pasa? Al meterme en una ventana gráfica creo que tiraba más de diseño que de programación. 149 00:25:37,000 --> 00:25:44,000 Y al ver la programación lo que me ha supuesto un poquito más de reto, que tampoco ha sido mucho, ha sido lo que es el minijuego. 150 00:25:45,000 --> 00:25:51,000 Por ponerte un ejemplo, ahora mismo cuando he acabado esto, que he acabado la presentación y tal, 151 00:25:52,000 --> 00:26:00,000 me he puesto a desarrollar por mi parte un tower defense de un planeta que te vienen meteoritos y tienes que comprar naves y tal, 152 00:26:00,000 --> 00:26:12,000 que está más centrado en un desarrollo, en una programación y me está ajustando más y estoy avanzando muchísimo más rápido de lo que avancé en su momento con esta aventura gráfica. 153 00:26:13,000 --> 00:26:21,000 Vale. Por mi lado no va a haber más preguntas. Bueno, si tú quieres añadir algo más, yo te voy a decir varias cosas que ya no son preguntas sino apreciaciones, 154 00:26:22,000 --> 00:26:32,000 también para que las tengas y si te sirven ya cuando sigas con el proyecto, si lo quisieras, pues cosas que he visto que igual llevo razón o no. 155 00:26:33,000 --> 00:26:38,000 Tampoco significa que te diga cosas... No sé si quieres agregar algo más o... 156 00:26:39,000 --> 00:26:43,000 No, no, no, creo que no tengo nada así. 157 00:26:43,000 --> 00:26:56,000 Nada, bueno, lo primero creo que el proyecto estaba bastante bien, bien trabajado, además has ido entregando en plazo y siempre ha habido una evolución en todas las entregas, 158 00:26:57,000 --> 00:27:06,000 así que por mi parte en ese sentido estoy bastante satisfecho. He encontrado algunos bugs que creo que son fáciles de solucionar. 159 00:27:06,000 --> 00:27:18,000 Uno es cuando queremos salir del bar de donde está el de la izquierda, la pantalla de la izquierda, para volver al muelle ahí es complicado dar con el área para volver al muelle. 160 00:27:19,000 --> 00:27:22,000 No sé si es porque como está la barra del bar ahí justo y tal... 161 00:27:23,000 --> 00:27:33,000 Sí, pensé hacer también... A mayor es lo único que ya no me dio tiempo porque fue al final hacer como unas flechitas cuando el ratón estuviese justo encima de la posición 162 00:27:33,000 --> 00:27:43,000 donde podías ya pasar a la siguiente imagen y cambiase la imagen del ratón para decirte ya aquí puedes pulsar para pasarla a la imagen, pero no me dio tiempo. 163 00:27:44,000 --> 00:27:51,000 Bueno, pero sí que a veces... Pero incluso pasa también en juegos AAA que a veces no sabes por dónde hay que meterse y tal, 164 00:27:52,000 --> 00:27:56,000 y ahí justo la primera vez que jugué luego ya pulsando muchas veces salió, pero me costó. 165 00:27:57,000 --> 00:28:03,000 Otra cosilla es la música según como vaya jugando y salga del juego vuelve a arrancarse. 166 00:28:04,000 --> 00:28:07,000 Entonces ha habido un par de veces que se me han sumado las músicas. 167 00:28:08,000 --> 00:28:09,000 Ah, y se ha suplantado una encima de otra. 168 00:28:10,000 --> 00:28:14,000 Sí, bueno, suplantado no porque no ha parado la primera reproducción, entonces sonaba... 169 00:28:15,000 --> 00:28:16,000 Ah, vale, vale. 170 00:28:17,000 --> 00:28:18,000 Eso bastante molesta. 171 00:28:19,000 --> 00:28:21,000 Sí, sí, sí, eso no lo había detectado yo. 172 00:28:22,000 --> 00:28:31,000 Vale, sí, creo que fue cuando me salí del juego, fui al menú principal, que entiendo claro que arranca la música de comienzo y se me sumó. 173 00:28:32,000 --> 00:28:33,000 Vale, vale. 174 00:28:34,000 --> 00:28:40,000 Luego, bueno, esto lo hemos ido hablando y para mí tampoco es un déficit, no es nada negativo. 175 00:28:41,000 --> 00:28:46,000 Así que es verdad que al principio tenías un proyecto muy ambicioso, porque querías abarcar mucho, 176 00:28:46,000 --> 00:28:51,000 luego tuviste el momento de irte, de hecho, a una especie de Vampire Survivor, ¿te acuerdas? 177 00:28:52,000 --> 00:28:53,000 Sí. 178 00:28:53,000 --> 00:28:54,000 Y volviste a la aventura gráfica. 179 00:28:55,000 --> 00:28:59,000 Así que es verdad que este proyecto, pero bueno, porque también me comentaste al mejor que te interesaba, 180 00:29:00,000 --> 00:29:06,000 tenía mucha carga de diseño en el sentido de que claro, hacer todos los fondos y hacer las animaciones de los personajes, etc. 181 00:29:07,000 --> 00:29:09,000 Y el pixel art que parece que no, pero es complejo. 182 00:29:10,000 --> 00:29:11,000 Sí, es mucho más difícil de lo que parece. 183 00:29:11,000 --> 00:29:16,000 Porque una cosa, por ejemplo, que se ve en el juego, que es verdad que no es lo que se hace un balance en este proyecto 184 00:29:17,000 --> 00:29:21,000 de desarrollo y también del arte, aunque lo hayas hecho con IA, etc., bueno, también es una parte importante, 185 00:29:22,000 --> 00:29:28,000 que si hubiera que seguir con el arte es que no hay excesiva consistencia, por ejemplo, en los personajes, 186 00:29:29,000 --> 00:29:31,000 que se nota que son como de distintos orígenes, las líneas, etc. 187 00:29:32,000 --> 00:29:33,000 Sí, exacto, sí. 188 00:29:34,000 --> 00:29:39,000 Pero vaya, que está bien resuelto y es verdad que el proyecto también tiene un tiempo, etc. 189 00:29:40,000 --> 00:29:44,000 Luego, no tengo mucho más. 190 00:29:45,000 --> 00:29:51,000 Ah, bueno, en la memoria me ha gustado mucho que al final pongas una sección de problemas encontrados y sus soluciones. 191 00:29:52,000 --> 00:29:55,000 Creo que está muy bien para resolver cosas que estaban pendientes. 192 00:29:56,000 --> 00:29:59,000 Y de hecho, dudas que te iba a plantear, pues llegaba ahí y ya me los había resuelto. 193 00:30:00,000 --> 00:30:01,000 Así que está bastante bien. 194 00:30:01,000 --> 00:30:10,000 Y nada, simplemente, si vas a seguir con el videojuego o se queda en el proyecto y vas a ir con este otro del Tower Defense que me estás comentando. 195 00:30:11,000 --> 00:30:19,000 Pues en este momento me voy a dedicar un poco más al Tower Defense porque como con este, hablando en plata, le he cogido un poquito de tirria. 196 00:30:20,000 --> 00:30:27,000 Después de estar peleándome tanto con él, pues bueno, entonces voy a hacer el Tower Defense que estoy haciendo 197 00:30:27,000 --> 00:30:34,000 para desfogarme un poco y luego ya quizás cuando acabe con este vuelva a acabar la historia. 198 00:30:35,000 --> 00:30:39,000 Vale, y perdona que te he dicho que no te iba a hacer más preguntas, pero te voy a hacer una más. 199 00:30:40,000 --> 00:30:48,000 Porque los textos, etc., los que estén al red del jugador y no has hecho un game manager externo, 200 00:30:49,000 --> 00:30:55,000 digo precisamente para justificar que todo lo pones en una misma escena, ¿vale? 201 00:30:55,000 --> 00:31:00,000 Y que eso, que no se guarden variables, etc., entre escenas. 202 00:31:01,000 --> 00:31:06,000 Pero si se fuera escalando el juego o un mismo nivel tuviera muchas pantallas o se escalara, 203 00:31:07,000 --> 00:31:14,000 ¿por qué no a lo mejor acumular todo lo que son los textos de a lo mejor cada una de las historias en un script que gestione todos? 204 00:31:15,000 --> 00:31:18,000 O que vaya guardando, digamos, las variables estáticas o algo así. 205 00:31:19,000 --> 00:31:21,000 Sí, eso sería lo propio como tal. 206 00:31:22,000 --> 00:31:31,000 El tema es que hay, creo que lo estuvimos hablando una vez, hay plugins que gestionan lo que son los diálogos de personajes 207 00:31:32,000 --> 00:31:33,000 y con los que puedes interactuar bien. 208 00:31:34,000 --> 00:31:39,000 Lo que pasa es que con el tiempo que tenía no me daba tiempo a estudiar cómo funcionaban 209 00:31:40,000 --> 00:31:44,000 y según empecé a desarrollar lo empecé a hacer así. 210 00:31:44,000 --> 00:31:52,000 Y cuando quizás fue el momento de, cuando me vino el pensamiento de quizás cambiarlo al otro sistema, 211 00:31:53,000 --> 00:32:02,000 ya estaba el script demasiado desarrollado y demasiado enrevesado como para quizás volver a empezarlo de cero con esas posibilidades. 212 00:32:03,000 --> 00:32:10,000 Habría estado mucho mejor y mucho mejor estructurado y funcionaría mucho mejor, 213 00:32:10,000 --> 00:32:17,000 pero claro, con el tiempo que tenía pues quizás no me habría dado tiempo a llegar a lo que quería presentar. 214 00:32:18,000 --> 00:32:30,000 Vale, genial. Pues por mi parte está todo hecho y lo que comenté, bueno, las notas no estarán puestas hasta dentro de unos días 215 00:32:31,000 --> 00:32:32,000 que la junta de evaluación o el jueves que viene, ¿vale? 216 00:32:33,000 --> 00:32:37,000 Entonces hasta entonces, a no ser que nos diga lo contrario, no vais a saber la calificación, ¿vale? 217 00:32:37,000 --> 00:32:38,000 Vale. 218 00:32:39,000 --> 00:32:46,000 Pues eso. Por mi parte, mi corrección, buen trabajo por todo el proceso también, no solo por lo de hoy. 219 00:32:47,000 --> 00:32:53,000 Y nada, que para cualquier cosa pues nos tienes aquí a disposición, ¿vale? 220 00:32:54,000 --> 00:32:55,000 Vale, perfecto. Muchísimas gracias. 221 00:32:56,000 --> 00:33:00,000 Pues nada, Ignacio, acabamos y muchas gracias por la presentación. 222 00:33:01,000 --> 00:33:02,000 Nada, a ti. Saludos. 223 00:33:03,000 --> 00:33:04,000 Bueno, ha sido una lástima que no te vea porque te sigo sin ver, pero bueno. 224 00:33:04,000 --> 00:33:09,000 Ah, pues ahora no me pone nada de error. Ahora me pone que suena la transmisión. 225 00:33:10,000 --> 00:33:13,000 Algo pasa por aquí. Vale, pues nada. Muchas gracias. 226 00:33:14,000 --> 00:33:15,000 Nada, a ti. Hasta luego.