1 00:00:00,000 --> 00:00:03,000 venga, empiezo 2 00:00:03,000 --> 00:00:04,679 si quieres, me estás viendo 3 00:00:04,679 --> 00:00:06,339 me lo estás viendo todo, ¿no? 4 00:00:06,459 --> 00:00:08,060 te estoy viendo, sí, tu Unity 5 00:00:08,060 --> 00:00:11,099 vale, me estás viendo tu Unity, bueno, esta primera parte 6 00:00:11,099 --> 00:00:15,099 esta primera parte en principio no ha tenido 7 00:00:15,099 --> 00:00:16,059 ningún problema, le he quitado 8 00:00:16,059 --> 00:00:19,219 el material, pero vamos, que de momento me ha salido 9 00:00:19,219 --> 00:00:21,140 vale, le doy, la cámara me la 10 00:00:21,140 --> 00:00:22,980 enfoca, vale, me va 11 00:00:22,980 --> 00:00:25,060 me desaparece cuando lo metes 12 00:00:25,060 --> 00:00:26,719 no estás viendo, ¿no? 13 00:00:26,839 --> 00:00:28,820 sí, lo único que va flotando, ¿no? 14 00:00:28,820 --> 00:00:31,100 sí, es que está como un poco alto 15 00:00:31,100 --> 00:00:32,679 pero bueno, yo supongo que será por un poco porque 16 00:00:32,679 --> 00:00:34,880 lo tengo que bajar un poco, el Collider 17 00:00:34,880 --> 00:00:36,259 lo tengo que bajar a lo mejor un poco más, ¿no? 18 00:00:36,320 --> 00:00:39,159 y cambia la segunda, lo has visto, ¿no? 19 00:00:39,420 --> 00:00:41,240 el problema está con las plataformas 20 00:00:41,240 --> 00:00:42,120 lo empiezo a tener ya, ¿no? 21 00:00:42,719 --> 00:00:44,759 vale, me refiero que es que 22 00:00:44,759 --> 00:00:46,780 como que son muy bruscos los movimientos 23 00:00:46,780 --> 00:00:48,840 lo ves, ¿no? sí, sí 24 00:00:48,840 --> 00:00:50,519 que da como saltos a veces, vale 25 00:00:50,519 --> 00:00:53,060 y eso que le estoy dando muy poquito, yo entiendo 26 00:00:53,060 --> 00:00:55,159 que puede ser por el... porque a lo mejor 27 00:00:55,159 --> 00:00:56,579 le tengo que poner... 28 00:00:56,579 --> 00:00:58,200 vamos a irlo viendo 29 00:00:58,200 --> 00:01:00,840 lo que hay que ir, claro, cuando me enviaste 30 00:01:00,840 --> 00:01:02,820 el comentario es que solo con el código 31 00:01:02,820 --> 00:01:04,700 no me sirve, porque claro, necesito también 32 00:01:04,700 --> 00:01:06,719 un poco el contexto de en qué lo estás 33 00:01:06,719 --> 00:01:08,900 aplicando. Una cosilla, te sale 34 00:01:08,900 --> 00:01:10,820 un mensaje por ahí de... estás compartiendo 35 00:01:10,820 --> 00:01:12,980 toda su pantalla y hay una opción que no es 36 00:01:12,980 --> 00:01:15,219 dejar de compartir, dale a la otra que es ocultar 37 00:01:15,219 --> 00:01:16,560 dale ahí 38 00:01:16,560 --> 00:01:18,500 a la derecha, ¿no? sí, dale, vale 39 00:01:18,500 --> 00:01:20,920 para que no esté ahí en mitad. Vale, si te parece 40 00:01:20,920 --> 00:01:22,740 vamos a la escena 1 41 00:01:22,740 --> 00:01:23,960 vamos allá 42 00:01:23,960 --> 00:01:26,200 espera, me salgo de aquí 43 00:01:26,200 --> 00:01:28,519 vale, y una cosa también 44 00:01:28,519 --> 00:01:30,620 no sé si tú te das cuenta de que cuando juegas 45 00:01:30,620 --> 00:01:31,840 se ve como pixelado 46 00:01:31,840 --> 00:01:34,420 sí, sí, me ha pasado, sí 47 00:01:34,420 --> 00:01:36,460 vale, vamos a... te voy a decir primero 48 00:01:36,460 --> 00:01:37,540 qué es lo que está ocurriendo 49 00:01:37,540 --> 00:01:39,439 en la pestaña... 50 00:01:39,439 --> 00:01:41,400 vale, sí, sí 51 00:01:41,400 --> 00:01:44,460 no, no, pues haces 52 00:01:44,460 --> 00:01:46,640 haces estupendamente, yo mientras voy a intentar 53 00:01:46,640 --> 00:01:47,180 ponerte 54 00:01:47,180 --> 00:01:49,100 para la grabación 55 00:01:49,100 --> 00:01:53,420 sí, sí, sí 56 00:01:53,420 --> 00:01:54,200 esto es desesperante 57 00:01:54,200 --> 00:01:56,040 a ver, lo de siempre 58 00:01:56,040 --> 00:01:56,120 ¿qué es esto? 59 00:01:56,200 --> 00:01:58,400 este módulo son muchas cosas que se van sumando 60 00:01:58,400 --> 00:01:59,540 ¿vale? pero poco a poco 61 00:01:59,540 --> 00:02:02,100 quien esté intentando 62 00:02:02,100 --> 00:02:04,460 hacer las tareas, ya os digo que vais a ir asimilándolo 63 00:02:04,460 --> 00:02:05,299 y cuando... 64 00:02:05,299 --> 00:02:07,439 no, si el caso es que la mecánica, a ver, la idea 65 00:02:07,439 --> 00:02:10,379 de los scripts, todo lo que es el lenguaje 66 00:02:10,379 --> 00:02:11,939 lo estoy entendiendo, ¿eh? o sea, más o menos 67 00:02:11,939 --> 00:02:12,840 casi todo lo entiendo, ¿eh? 68 00:02:13,140 --> 00:02:16,659 si ves los videos, si ves lo de los apuntes 69 00:02:16,659 --> 00:02:17,840 si ves todo, pues lo vas entendiendo 70 00:02:17,840 --> 00:02:19,400 lo que pasa es que luego a la hora de ponerlo en práctica 71 00:02:19,400 --> 00:02:21,640 es que hay veces que digo, mira, me vuelvo loco 72 00:02:21,640 --> 00:02:23,879 pero bueno, que a mí también me pasa, ¿eh? 73 00:02:24,199 --> 00:02:25,240 digo que eso es normal 74 00:02:25,240 --> 00:02:26,180 que eso es normal 75 00:02:26,200 --> 00:02:27,900 y luego dices, va, incluso 76 00:02:27,900 --> 00:02:30,020 aunque no lo estés haciendo mal, es una chorrada 77 00:02:30,020 --> 00:02:32,000 y le das vueltas y es una coma 78 00:02:32,000 --> 00:02:33,440 que no has puesto bien, entonces 79 00:02:33,440 --> 00:02:35,380 es peliagudo, pero esto es práctica 80 00:02:35,380 --> 00:02:38,560 en buena parte 81 00:02:38,560 --> 00:02:40,340 hay que practicar porque si no es imposible 82 00:02:40,340 --> 00:02:41,200 vale 83 00:02:41,200 --> 00:02:42,940 cuando 84 00:02:42,940 --> 00:02:45,400 ya estoy, ya estoy 85 00:02:45,400 --> 00:02:48,100 en la pestaña game, ¿vale? donde está 86 00:02:48,100 --> 00:02:49,280 el visor 87 00:02:49,280 --> 00:02:52,080 en el Unity hay una pestaña de escena 88 00:02:52,080 --> 00:02:53,660 que es donde estás trabajando todo el rato 89 00:02:53,660 --> 00:02:55,360 arriba a la izquierda 90 00:02:55,360 --> 00:02:55,920 vale 91 00:02:56,200 --> 00:02:58,180 en game lo que se está viendo es 92 00:02:58,180 --> 00:03:00,740 lo que va a verse cuando des a la reproducción del juego 93 00:03:00,740 --> 00:03:02,240 y aquí se ve pixelado 94 00:03:02,240 --> 00:03:03,500 porque si te fijas 95 00:03:03,500 --> 00:03:06,180 justo encima de donde está la pelota pone scale 96 00:03:06,180 --> 00:03:08,040 y tú la tienes al 2,7 97 00:03:08,040 --> 00:03:08,980 ponlo al 1 98 00:03:08,980 --> 00:03:13,240 por defecto debería estar siempre al 1 99 00:03:13,240 --> 00:03:15,000 ¿vale? porque lo que estás haciendo ahora 100 00:03:15,000 --> 00:03:17,100 es un zoom, digamos, sobre la visualización 101 00:03:17,100 --> 00:03:19,120 del juego, pero la cámara realmente 102 00:03:19,120 --> 00:03:20,120 lo que está viendo es esto 103 00:03:20,120 --> 00:03:21,600 tendrás que acercar más la cámara 104 00:03:21,600 --> 00:03:23,140 no sé si la has puesto un offset 105 00:03:23,140 --> 00:03:23,920 imagino que sí 106 00:03:23,920 --> 00:03:26,180 porque si lo que está viendo es el video 107 00:03:26,200 --> 00:03:27,300 lo que haces es un zoom 108 00:03:27,300 --> 00:03:30,340 estás como ampliando esa visibilidad 109 00:03:30,340 --> 00:03:31,340 de la escena 110 00:03:31,340 --> 00:03:32,340 entonces empieza a pixelar 111 00:03:32,340 --> 00:03:34,600 porque es como si coges una foto en Photoshop 112 00:03:34,600 --> 00:03:35,600 y la aumentas 113 00:03:35,600 --> 00:03:36,600 pues que se empieza a pixelar 114 00:03:36,600 --> 00:03:38,260 porque el tamaño que tiene realmente 115 00:03:38,260 --> 00:03:40,160 es este display que estamos viendo ahora 116 00:03:40,160 --> 00:03:41,160 ¿vale? 117 00:03:41,160 --> 00:03:42,160 vale 118 00:03:42,160 --> 00:03:43,160 una cosa 119 00:03:43,160 --> 00:03:44,160 pero por ejemplo esto sí 120 00:03:44,160 --> 00:03:45,160 en el caso ya 121 00:03:45,160 --> 00:03:46,160 esto sale del tema 122 00:03:46,160 --> 00:03:47,160 si 123 00:03:47,160 --> 00:03:48,160 por ejemplo en el 124 00:03:48,160 --> 00:03:49,160 con un Photoshop o con una de estas 125 00:03:49,160 --> 00:03:50,460 si tienes una buena resolución 126 00:03:50,460 --> 00:03:51,460 aunque lo acerques 127 00:03:51,460 --> 00:03:52,460 no se pisela, claro 128 00:03:52,460 --> 00:03:55,080 entiendo que es por el programa, ¿no? 129 00:03:55,080 --> 00:03:56,080 claro, es decir 130 00:03:56,080 --> 00:03:57,080 tú ahora mismo 131 00:03:57,080 --> 00:03:58,080 tú 132 00:03:58,080 --> 00:03:59,140 ten en cuenta que lo que hacemos 133 00:03:59,140 --> 00:04:00,140 con un motor de videojuegos 134 00:04:00,140 --> 00:04:01,719 como en Unity 135 00:04:01,719 --> 00:04:03,660 las imágenes no que estén ya procesadas 136 00:04:03,660 --> 00:04:04,660 de antes 137 00:04:04,660 --> 00:04:05,660 si nos acerquemos 138 00:04:05,660 --> 00:04:06,660 que en realidad 139 00:04:06,660 --> 00:04:07,660 me estoy contradiciendo 140 00:04:07,660 --> 00:04:08,660 ahora lo aclaramos 141 00:04:08,660 --> 00:04:09,660 estamos generando la imagen 142 00:04:09,660 --> 00:04:10,660 en tiempo real 143 00:04:10,660 --> 00:04:11,660 ¿no? 144 00:04:11,660 --> 00:04:12,660 entonces 145 00:04:12,660 --> 00:04:13,660 se va renderizando constantemente, ¿no? 146 00:04:13,660 --> 00:04:14,660 claro 147 00:04:14,660 --> 00:04:15,660 cada fotograma 148 00:04:15,660 --> 00:04:16,660 en el update 149 00:04:16,660 --> 00:04:17,660 de hecho 150 00:04:17,660 --> 00:04:18,660 se va generando esa nueva imagen 151 00:04:18,660 --> 00:04:19,759 pues según el entorno virtual 152 00:04:19,759 --> 00:04:21,520 pues se verá una cosa u otra 153 00:04:21,520 --> 00:04:22,520 pero 154 00:04:22,520 --> 00:04:23,520 realmente el pixelado 155 00:04:23,520 --> 00:04:24,520 no se va a pixelar nunca 156 00:04:24,520 --> 00:04:25,520 a no ser que metas 157 00:04:25,519 --> 00:04:26,519 una imagen pixelada tú 158 00:04:26,519 --> 00:04:27,519 como un sprite 159 00:04:27,519 --> 00:04:28,519 que ya veremos 160 00:04:28,519 --> 00:04:29,519 pues porque la imagen 161 00:04:29,519 --> 00:04:30,519 ya está pixelada 162 00:04:30,519 --> 00:04:31,519 lo que pasa es que a veces 163 00:04:31,519 --> 00:04:32,519 como tú has hecho instintivamente 164 00:04:32,519 --> 00:04:33,519 para ver 165 00:04:33,519 --> 00:04:34,519 más de cerca la bola 166 00:04:34,519 --> 00:04:35,519 porque has puesto la cámara 167 00:04:35,519 --> 00:04:36,519 un poco lejos 168 00:04:36,519 --> 00:04:37,519 lo que hacemos es usar 169 00:04:37,519 --> 00:04:38,519 el parámetro de escala 170 00:04:38,519 --> 00:04:39,519 pero es 171 00:04:39,519 --> 00:04:40,519 escalar lo que se está viendo 172 00:04:40,519 --> 00:04:41,519 ¿vale? 173 00:04:41,519 --> 00:04:42,519 la imagen no se ha pixelado 174 00:04:42,519 --> 00:04:43,519 lo que pasa 175 00:04:43,519 --> 00:04:44,519 es que 176 00:04:44,519 --> 00:04:45,519 la imagen en sí 177 00:04:45,519 --> 00:04:46,519 tiene un tamaño 178 00:04:46,519 --> 00:04:47,519 entonces tú 179 00:04:47,519 --> 00:04:48,519 si haces este escalado 180 00:04:48,519 --> 00:04:49,519 pues 181 00:04:49,519 --> 00:04:50,519 ampliar la imagen 182 00:04:50,519 --> 00:04:51,519 y parece que haces un zoom 183 00:04:51,519 --> 00:04:52,519 pero realmente estás 184 00:04:52,519 --> 00:04:53,519 ampliando la imagen 185 00:04:53,519 --> 00:04:54,519 y se empieza a pixelar 186 00:04:54,519 --> 00:04:55,519 digamos que ya 187 00:04:55,519 --> 00:04:56,519 lo que estás viendo 188 00:04:56,519 --> 00:04:57,519 ahora mismo 189 00:04:57,519 --> 00:04:58,519 es como una foto 190 00:04:58,519 --> 00:04:59,519 ya renderizada 191 00:04:59,519 --> 00:05:00,519 y cada fotograma 192 00:05:00,519 --> 00:05:01,519 será una imagen 193 00:05:01,519 --> 00:05:02,519 renderizada 194 00:05:02,519 --> 00:05:03,519 y tú con la escala 195 00:05:03,519 --> 00:05:04,519 pues estás ampliando 196 00:05:04,519 --> 00:05:05,519 la visualización 197 00:05:05,519 --> 00:05:06,519 pero luego al jugar 198 00:05:06,519 --> 00:05:07,519 esta escala 199 00:05:07,519 --> 00:05:08,519 tú no la vas a poder hacer 200 00:05:08,519 --> 00:05:09,519 esto es sólo 201 00:05:09,519 --> 00:05:10,519 mientras estás 202 00:05:10,519 --> 00:05:11,519 digamos 203 00:05:11,519 --> 00:05:12,519 creando el juego 204 00:05:12,519 --> 00:05:13,519 ¿vale? 205 00:05:13,519 --> 00:05:14,519 pero realmente 206 00:05:14,519 --> 00:05:15,519 el tamaño que tiene 207 00:05:15,519 --> 00:05:16,519 ahora mismo 208 00:05:16,519 --> 00:05:17,519 por cómo está configurado 209 00:05:17,519 --> 00:05:18,519 sería este 210 00:05:18,519 --> 00:05:19,519 ¿vale? 211 00:05:19,519 --> 00:05:20,519 esto en el último 212 00:05:20,519 --> 00:05:21,519 lo puedes acercar 213 00:05:21,519 --> 00:05:22,519 si quieres 214 00:05:22,519 --> 00:05:23,519 con la cámara 215 00:05:23,519 --> 00:05:24,519 o no y ya está 216 00:05:24,519 --> 00:05:25,519 eso es 217 00:05:25,519 --> 00:05:26,519 ¿vale? 218 00:05:26,519 --> 00:05:27,519 luego lo que pasa 219 00:05:27,519 --> 00:05:28,519 es que tienes herramientas 220 00:05:28,519 --> 00:05:29,519 pues para ir 221 00:05:29,519 --> 00:05:30,519 acercándolo 222 00:05:30,519 --> 00:05:31,519 ¿no? 223 00:05:31,519 --> 00:05:32,519 como en esta escala 224 00:05:32,519 --> 00:05:33,519 y veremos más adelante 225 00:05:33,519 --> 00:05:34,519 ya en el último tema 226 00:05:34,519 --> 00:05:35,519 seguramente 227 00:05:35,519 --> 00:05:36,519 que incluso se pueden dar 228 00:05:36,519 --> 00:05:37,519 este tamaño 229 00:05:37,519 --> 00:05:38,519 ahora mismo 230 00:05:38,519 --> 00:05:39,519 por ejemplo 231 00:05:39,519 --> 00:05:40,519 es horizontal 232 00:05:40,519 --> 00:05:41,519 y tiene una proporción 233 00:05:41,519 --> 00:05:42,519 panorámica 234 00:05:42,519 --> 00:05:43,519 ¿no? 235 00:05:43,519 --> 00:05:44,519 pero 236 00:05:44,519 --> 00:05:45,519 luego podremos ir 237 00:05:45,519 --> 00:05:46,519 cambiando también 238 00:05:46,519 --> 00:05:47,519 la resolución 239 00:05:47,519 --> 00:05:48,519 de la pantalla 240 00:05:48,519 --> 00:05:49,519 y de lo que capta 241 00:05:49,519 --> 00:05:50,519 la cámara 242 00:05:50,519 --> 00:05:51,519 ¿no? 243 00:05:51,519 --> 00:05:52,519 pero ahora mismo 244 00:05:52,519 --> 00:05:53,519 tal y como lo tenemos 245 00:05:53,519 --> 00:05:54,519 tenemos esa imagen 246 00:05:54,519 --> 00:05:55,519 que tú 247 00:05:55,519 --> 00:05:56,519 para ver 248 00:05:56,519 --> 00:05:57,519 lo que hay dentro 249 00:05:57,519 --> 00:05:58,519 de esa imagen 250 00:05:58,519 --> 00:05:59,519 más en detalle 251 00:05:59,519 --> 00:06:00,519 pero no es que la imagen 252 00:06:00,519 --> 00:06:01,519 se está haciendo 253 00:06:01,519 --> 00:06:02,519 en sí misma más grande 254 00:06:02,519 --> 00:06:03,519 sino que tú estás 255 00:06:03,519 --> 00:06:04,519 como ampliándola 256 00:06:04,519 --> 00:06:05,519 pero realmente 257 00:06:05,519 --> 00:06:06,519 en el juego 258 00:06:06,519 --> 00:06:07,519 cuando lo ejecutemos 259 00:06:07,519 --> 00:06:08,519 se va a ver 260 00:06:08,519 --> 00:06:09,519 lo que tenemos aquí 261 00:06:09,519 --> 00:06:10,519 ahora mismo 262 00:06:10,519 --> 00:06:11,519 a no ser que 263 00:06:11,519 --> 00:06:12,519 cambiemos otros ingredientes 264 00:06:12,519 --> 00:06:13,519 en el exportado 265 00:06:13,519 --> 00:06:14,519 ¿vale? 266 00:06:14,519 --> 00:06:15,519 vale 267 00:06:15,519 --> 00:06:16,519 vale 268 00:06:16,519 --> 00:06:17,519 eso lo primero digo 269 00:06:17,519 --> 00:06:18,519 que como lo he visto 270 00:06:18,519 --> 00:06:19,519 digo ya aprovecho 271 00:06:19,519 --> 00:06:20,519 volvemos a escena 272 00:06:20,519 --> 00:06:21,519 para ir viendo 273 00:06:21,519 --> 00:06:22,519 los elementos que tienes 274 00:06:22,519 --> 00:06:23,519 vale 275 00:06:23,519 --> 00:06:24,519 muy bien 276 00:06:24,519 --> 00:06:25,519 perfecto 277 00:06:25,519 --> 00:06:26,519 y esto no sé 278 00:06:26,519 --> 00:06:27,519 en qué momento 279 00:06:27,519 --> 00:06:28,519 se habrá cambiado 280 00:06:28,519 --> 00:06:29,519 te aconsejo 281 00:06:29,519 --> 00:06:30,519 donde ves el gizmo 282 00:06:30,519 --> 00:06:31,519 de a la derecha 283 00:06:31,519 --> 00:06:32,519 que están los ejes 284 00:06:32,519 --> 00:06:33,519 no 285 00:06:33,519 --> 00:06:34,519 dentro del visor 286 00:06:34,519 --> 00:06:35,519 verás el gizmo 287 00:06:35,519 --> 00:06:36,519 de 288 00:06:36,519 --> 00:06:37,519 en la esquina superior 289 00:06:37,519 --> 00:06:38,519 derecha 290 00:06:38,519 --> 00:06:39,519 están los ejes 291 00:06:39,519 --> 00:06:40,519 bueno 292 00:06:40,519 --> 00:06:41,519 ah sí 293 00:06:41,519 --> 00:06:42,519 los ejes sí 294 00:06:42,519 --> 00:06:43,519 y justo debajo 295 00:06:43,519 --> 00:06:44,519 pone la palabra ISO 296 00:06:44,519 --> 00:06:45,519 que si tú clicas 297 00:06:45,519 --> 00:06:46,519 vas a ver 298 00:06:46,519 --> 00:06:47,519 clica 299 00:06:47,519 --> 00:06:48,519 sin problema 300 00:06:48,519 --> 00:06:49,519 que cambia 301 00:06:49,519 --> 00:06:50,519 a una cámara 302 00:06:50,519 --> 00:06:51,519 con perspectiva 303 00:06:51,519 --> 00:06:52,519 o una isométrica 304 00:06:52,519 --> 00:06:53,519 ¿vale? 305 00:06:53,519 --> 00:06:54,519 trabajamos 306 00:06:54,519 --> 00:06:55,519 trabajamos en perspectiva 307 00:06:55,519 --> 00:06:56,519 que es como ve 308 00:06:56,519 --> 00:06:57,519 el ojo humano 309 00:06:57,519 --> 00:06:58,519 y como está también 310 00:06:58,519 --> 00:06:59,519 la cámara de tu juego 311 00:06:59,519 --> 00:07:00,519 cuando le das a play 312 00:07:00,519 --> 00:07:01,519 ¿vale? 313 00:07:01,519 --> 00:07:02,519 que es más fácil 314 00:07:02,519 --> 00:07:03,519 trabajar 315 00:07:03,519 --> 00:07:04,519 simplemente eso 316 00:07:04,519 --> 00:07:05,519 vale 317 00:07:05,519 --> 00:07:06,519 ahora mismo 318 00:07:06,519 --> 00:07:07,519 si clicas en el collider 319 00:07:07,519 --> 00:07:08,519 es decir 320 00:07:08,519 --> 00:07:09,519 en el objeto 321 00:07:09,519 --> 00:07:10,519 en la tabla 322 00:07:10,519 --> 00:07:11,519 ¿vale? 323 00:07:11,519 --> 00:07:12,519 ahora 324 00:07:12,519 --> 00:07:13,519 para ver yo 325 00:07:13,519 --> 00:07:14,519 los componentes 326 00:07:14,519 --> 00:07:15,519 ahora mismo 327 00:07:15,519 --> 00:07:16,519 lo que tienes 328 00:07:16,519 --> 00:07:17,519 es un mesh collider 329 00:07:17,519 --> 00:07:18,519 ¿vale? 330 00:07:18,519 --> 00:07:19,519 y un box collider 331 00:07:19,519 --> 00:07:20,519 y los dos 332 00:07:20,519 --> 00:07:21,519 están activos 333 00:07:21,519 --> 00:07:22,519 vale 334 00:07:22,519 --> 00:07:23,519 un poco por ver 335 00:07:23,519 --> 00:07:24,519 cómo lo has hecho 336 00:07:24,519 --> 00:07:25,519 mira 337 00:07:25,519 --> 00:07:26,519 he hecho un 338 00:07:26,519 --> 00:07:27,519 empty object 339 00:07:27,519 --> 00:07:28,519 un empty object 340 00:07:28,519 --> 00:07:29,519 mira lo ves aquí 341 00:07:29,519 --> 00:07:30,519 he creado un empty object 342 00:07:30,519 --> 00:07:31,519 y entonces 343 00:07:31,519 --> 00:07:32,519 le he asignado un script 344 00:07:32,519 --> 00:07:33,519 que es un collider 345 00:07:33,519 --> 00:07:34,519 ¿vale? 346 00:07:34,519 --> 00:07:35,519 que cuando llegue la pelota 347 00:07:35,519 --> 00:07:36,519 cuando la pelota 348 00:07:36,519 --> 00:07:37,519 le he puesto un tag 349 00:07:37,519 --> 00:07:38,519 también 350 00:07:38,519 --> 00:07:39,519 en un tag 351 00:07:39,519 --> 00:07:40,519 he puesto bola 352 00:07:40,519 --> 00:07:41,519 y entonces 353 00:07:41,519 --> 00:07:42,519 cuando llega la pelota 354 00:07:42,519 --> 00:07:43,519 al agujero 355 00:07:43,519 --> 00:07:44,519 toca con el empty object 356 00:07:44,519 --> 00:07:45,519 y desaparece 357 00:07:45,519 --> 00:07:46,519 y cambia de pantalla 358 00:07:46,519 --> 00:07:47,519 pero y 359 00:07:47,519 --> 00:07:48,519 ¿qué es lo que está tocando? 360 00:07:48,519 --> 00:07:49,519 perdona 361 00:07:49,519 --> 00:07:50,519 para cambiar de escena 362 00:07:50,519 --> 00:07:51,519 la meta 363 00:07:51,519 --> 00:07:52,519 lo que tienes 364 00:07:52,519 --> 00:07:53,519 lo que tienes la meta 365 00:07:53,519 --> 00:07:54,519 lo ves ¿no? 366 00:07:54,519 --> 00:07:55,519 sí 367 00:07:55,519 --> 00:07:56,519 espera 368 00:07:56,519 --> 00:07:57,519 tengo un enfoco 369 00:07:57,519 --> 00:07:58,519 para que lo veas mejor 370 00:07:58,519 --> 00:07:59,519 vale 371 00:07:59,519 --> 00:08:00,519 y ahí has puesto 372 00:08:00,519 --> 00:08:01,519 un pequeño área 373 00:08:01,519 --> 00:08:02,519 ¿no? 374 00:08:02,519 --> 00:08:03,519 vale 375 00:08:03,519 --> 00:08:04,519 el collider lo tienes aquí 376 00:08:04,519 --> 00:08:05,519 ¿no? 377 00:08:05,519 --> 00:08:06,519 eso es 378 00:08:06,519 --> 00:08:07,519 perfecto 379 00:08:07,519 --> 00:08:08,519 entonces este 380 00:08:08,519 --> 00:08:09,519 le he asignado un script 381 00:08:09,519 --> 00:08:10,519 que pone aquí abajo 382 00:08:10,519 --> 00:08:11,519 cambio de escena 1 383 00:08:11,519 --> 00:08:12,519 porque esa es la escena 384 00:08:12,519 --> 00:08:13,519 que le he puesto 385 00:08:13,519 --> 00:08:14,519 a través de 386 00:08:14,519 --> 00:08:15,519 el 387 00:08:15,519 --> 00:08:16,519 build settings 388 00:08:16,519 --> 00:08:17,519 build settings 389 00:08:17,519 --> 00:08:18,519 le he puesto 390 00:08:18,519 --> 00:08:19,519 lo tienes aquí 391 00:08:19,519 --> 00:08:20,519 vale 392 00:08:20,520 --> 00:08:21,520 vamos 393 00:08:21,520 --> 00:08:22,520 vale 394 00:08:22,520 --> 00:08:23,520 genial 395 00:08:23,520 --> 00:08:24,520 y entonces 396 00:08:24,520 --> 00:08:25,520 bueno pues eso 397 00:08:25,520 --> 00:08:26,520 y entonces 398 00:08:26,520 --> 00:08:27,520 le he puesto 399 00:08:27,520 --> 00:08:28,520 por cada 400 00:08:28,520 --> 00:08:29,520 por cada pantalla 401 00:08:29,520 --> 00:08:30,520 le he puesto un script 402 00:08:30,520 --> 00:08:31,520 que cambio escena 1 403 00:08:31,520 --> 00:08:32,519 cambio escena 2 404 00:08:32,519 --> 00:08:33,519 cambio escena 3 405 00:08:33,519 --> 00:08:34,519 porque es que no he encontrado 406 00:08:34,519 --> 00:08:35,519 por internet 407 00:08:35,519 --> 00:08:36,519 ninguna forma 408 00:08:36,519 --> 00:08:37,519 de cambiar de escena 409 00:08:37,519 --> 00:08:38,519 automáticamente 410 00:08:38,519 --> 00:08:39,519 vale 411 00:08:39,519 --> 00:08:40,519 ahora lo vemos 412 00:08:40,519 --> 00:08:41,519 de hecho 413 00:08:41,519 --> 00:08:42,519 creo que en el propio enunciado 414 00:08:42,519 --> 00:08:43,519 el que ¿verdad? 415 00:08:43,519 --> 00:08:44,519 sí 416 00:08:44,519 --> 00:08:45,519 que lo he hecho en cada una 417 00:08:45,519 --> 00:08:46,519 por eso te digo 418 00:08:46,519 --> 00:08:47,519 que es que no lo veía 419 00:08:47,519 --> 00:08:48,519 por ninguno 420 00:08:48,519 --> 00:08:49,519 y lo he hecho así 421 00:08:49,519 --> 00:08:50,519 es decir todo lo que sea 422 00:08:50,519 --> 00:08:51,519 ir solucionando problemas 423 00:08:51,519 --> 00:08:52,519 está bien 424 00:08:52,519 --> 00:08:53,519 ahora vamos a ver una forma 425 00:08:53,519 --> 00:08:54,519 de optimizarlo 426 00:08:54,519 --> 00:08:55,519 para con un solo script 427 00:08:55,519 --> 00:08:56,519 que valga en todas las escenas 428 00:08:56,519 --> 00:08:57,519 vale 429 00:08:57,519 --> 00:08:58,519 ahora lo vemos 430 00:08:58,519 --> 00:08:59,519 de todos modos 431 00:08:59,519 --> 00:09:00,519 creo que venía también 432 00:09:00,519 --> 00:09:01,519 en el propio enunciado 433 00:09:01,519 --> 00:09:02,519 venía planteado 434 00:09:02,519 --> 00:09:03,519 pero bueno 435 00:09:03,519 --> 00:09:04,519 entiendo que a veces 436 00:09:04,519 --> 00:09:05,519 aunque ponga código 437 00:09:05,519 --> 00:09:06,519 puede ser que se me ha pasado 438 00:09:06,519 --> 00:09:07,519 no no no 439 00:09:07,519 --> 00:09:08,519 si es normal 440 00:09:08,519 --> 00:09:09,519 porque son muchas piezas 441 00:09:09,519 --> 00:09:10,519 del puzzle 442 00:09:10,519 --> 00:09:11,519 entonces 443 00:09:11,519 --> 00:09:12,519 que de primera saquéis todas 444 00:09:12,519 --> 00:09:13,519 pues 445 00:09:13,519 --> 00:09:14,519 puede atragantarse alguna 446 00:09:14,519 --> 00:09:15,519 no pasa nada 447 00:09:15,519 --> 00:09:16,519 ahora vemos eso 448 00:09:16,519 --> 00:09:17,519 mira dudas que tengo 449 00:09:17,519 --> 00:09:18,519 por ejemplo 450 00:09:18,519 --> 00:09:19,519 en la bola 451 00:09:19,519 --> 00:09:20,519 por ejemplo 452 00:09:20,519 --> 00:09:21,519 igual que te puedo decir 453 00:09:21,519 --> 00:09:22,519 también del terreno 454 00:09:22,519 --> 00:09:23,519 sí 455 00:09:23,519 --> 00:09:24,519 por ejemplo 456 00:09:24,519 --> 00:09:25,519 en material 457 00:09:25,519 --> 00:09:26,519 en el bot collider 458 00:09:26,519 --> 00:09:27,519 ni en el mes collider 459 00:09:27,519 --> 00:09:28,519 no le han 460 00:09:28,519 --> 00:09:29,519 no le ha sido ningún material aquí 461 00:09:29,519 --> 00:09:30,519 vale 462 00:09:30,519 --> 00:09:31,519 por el no physical material 463 00:09:31,519 --> 00:09:32,519 entiendo que no hay 464 00:09:32,519 --> 00:09:33,519 porque me está funcionando 465 00:09:33,519 --> 00:09:34,519 entiendo que no hay 466 00:09:34,519 --> 00:09:35,519 en el caso de la meta 467 00:09:35,519 --> 00:09:36,519 en el caso de la bola 468 00:09:36,519 --> 00:09:37,519 por ejemplo 469 00:09:37,519 --> 00:09:38,519 en el 470 00:09:38,519 --> 00:09:39,519 mes collider 471 00:09:39,519 --> 00:09:40,519 le he metido 472 00:09:40,519 --> 00:09:41,519 uno que me he fabricado 473 00:09:41,519 --> 00:09:42,519 ¿no? 474 00:09:42,519 --> 00:09:43,519 materia bola 475 00:09:43,519 --> 00:09:44,519 vale 476 00:09:44,519 --> 00:09:45,519 hay que distinguir varias cosas 477 00:09:45,519 --> 00:09:46,519 bueno 478 00:09:46,519 --> 00:09:47,519 me acabas de decir mes collider 479 00:09:47,519 --> 00:09:48,519 y realmente es 480 00:09:48,519 --> 00:09:49,519 vale 481 00:09:49,519 --> 00:09:50,519 que no es lo mismo 482 00:09:50,519 --> 00:09:51,519 hay dos tipos 483 00:09:51,519 --> 00:09:52,519 si has leído 484 00:09:52,519 --> 00:09:53,519 vamos 485 00:09:53,519 --> 00:09:54,519 en el tema ya se especifica 486 00:09:54,519 --> 00:09:55,519 que hay un tipo de material 487 00:09:55,519 --> 00:09:56,519 que se llama 488 00:09:56,519 --> 00:09:57,519 materiales físicos 489 00:09:57,519 --> 00:09:58,519 o physical materials 490 00:09:58,519 --> 00:09:59,519 vale 491 00:09:59,519 --> 00:10:00,519 que no hay que confundirlos 492 00:10:00,519 --> 00:10:01,519 con 493 00:10:01,519 --> 00:10:02,519 el que estabas señalando 494 00:10:02,519 --> 00:10:03,519 ahora mismo 495 00:10:03,519 --> 00:10:04,519 que son 496 00:10:04,519 --> 00:10:05,519 los materiales de 497 00:10:05,519 --> 00:10:06,519 el shader 498 00:10:06,519 --> 00:10:07,519 de cada geometría 499 00:10:07,519 --> 00:10:08,519 ¿qué significa eso? 500 00:10:08,519 --> 00:10:09,519 que cada collider 501 00:10:09,519 --> 00:10:10,519 fíjate 502 00:10:10,519 --> 00:10:11,519 que aunque se llame material 503 00:10:11,519 --> 00:10:12,519 también 504 00:10:12,519 --> 00:10:13,519 vale 505 00:10:13,519 --> 00:10:14,519 tienes ahí un box collider 506 00:10:14,519 --> 00:10:15,519 si te fijas 507 00:10:15,519 --> 00:10:16,519 lo que está buscando 508 00:10:16,519 --> 00:10:17,519 entre paréntesis pone 509 00:10:17,519 --> 00:10:18,519 material físico 510 00:10:18,519 --> 00:10:19,519 y no es exactamente 511 00:10:19,519 --> 00:10:20,519 lo mismo 512 00:10:20,519 --> 00:10:21,519 es decir 513 00:10:21,519 --> 00:10:22,519 el material físico 514 00:10:22,519 --> 00:10:23,519 lo que define es 515 00:10:23,519 --> 00:10:24,519 cómo interactúa 516 00:10:24,519 --> 00:10:25,519 a nivel físico 517 00:10:25,519 --> 00:10:26,519 ese collider 518 00:10:26,519 --> 00:10:27,519 es decir 519 00:10:27,519 --> 00:10:28,519 si va a suponer 520 00:10:28,519 --> 00:10:29,519 que rebota mucho 521 00:10:29,519 --> 00:10:30,519 si va a tener mucho 522 00:10:30,519 --> 00:10:31,519 nivel de fricción 523 00:10:31,519 --> 00:10:32,519 no tiene nada que ver 524 00:10:32,519 --> 00:10:33,519 con lo que se visualiza 525 00:10:33,519 --> 00:10:34,519 vale 526 00:10:34,519 --> 00:10:35,519 no lo he tenido que entender 527 00:10:35,519 --> 00:10:36,519 mira 528 00:10:36,519 --> 00:10:39,519 voy a compartir yo pantalla 529 00:10:39,519 --> 00:10:40,519 un segundo 530 00:10:40,519 --> 00:10:41,519 vale 531 00:10:41,519 --> 00:10:42,519 vale 532 00:10:42,519 --> 00:10:43,519 y vemos este primer nivel 533 00:10:43,519 --> 00:10:44,519 ciertas cosas que me has dicho 534 00:10:44,519 --> 00:10:45,519 las vemos 535 00:10:45,519 --> 00:10:46,519 y luego 536 00:10:46,519 --> 00:10:47,519 seguimos 537 00:10:47,519 --> 00:10:48,519 otra vez 538 00:10:48,519 --> 00:10:49,519 no hay dudas 539 00:10:49,519 --> 00:10:50,519 te parece 540 00:10:50,519 --> 00:10:51,519 cosas que he visto 541 00:10:51,519 --> 00:10:52,519 vamos revisando cosas 542 00:10:52,519 --> 00:10:53,519 vale 543 00:10:53,519 --> 00:10:54,519 lo primero 544 00:10:54,519 --> 00:10:55,519 vale 545 00:10:55,519 --> 00:10:56,519 importante de cara 546 00:10:56,519 --> 00:10:57,519 a seguir avanzando 547 00:10:57,519 --> 00:10:58,519 igual que pasaba 548 00:10:58,519 --> 00:10:59,519 con la nave espacial 549 00:10:59,519 --> 00:11:00,519 tener siempre en cuenta 550 00:11:00,519 --> 00:11:01,519 y pasar la primera tarea 551 00:11:01,519 --> 00:11:03,519 que el eje z 552 00:11:03,519 --> 00:11:04,519 vale 553 00:11:04,519 --> 00:11:05,519 es la profundidad 554 00:11:05,519 --> 00:11:06,519 hacia donde apunta 555 00:11:06,519 --> 00:11:07,519 el eje z 556 00:11:07,519 --> 00:11:08,519 hacia allá 557 00:11:08,519 --> 00:11:09,519 tú Javier 558 00:11:09,519 --> 00:11:10,519 lo tenía justo al revés 559 00:11:10,519 --> 00:11:11,519 es decir 560 00:11:11,519 --> 00:11:13,519 lo tenías 561 00:11:13,519 --> 00:11:14,519 mirando hacia este lado 562 00:11:14,519 --> 00:11:15,519 esto no es problemático 563 00:11:15,519 --> 00:11:16,519 si luego 564 00:11:16,519 --> 00:11:17,519 todo lo configura 565 00:11:17,519 --> 00:11:18,519 bien 566 00:11:18,519 --> 00:11:19,519 pero es verdad 567 00:11:19,519 --> 00:11:20,519 que a la hora de ir 568 00:11:20,519 --> 00:11:21,519 configurando el adelante 569 00:11:21,519 --> 00:11:22,519 y el hacia atrás 570 00:11:22,519 --> 00:11:23,519 siempre va a contar 571 00:11:23,519 --> 00:11:24,519 con estas perspectivas 572 00:11:24,519 --> 00:11:25,519 si estamos usando 573 00:11:25,519 --> 00:11:26,519 los ejes globales 574 00:11:26,519 --> 00:11:27,519 del mundo 575 00:11:27,519 --> 00:11:28,519 vale 576 00:11:28,519 --> 00:11:29,519 entonces 577 00:11:29,519 --> 00:11:30,519 es algo que he visto ahí 578 00:11:30,519 --> 00:11:31,519 que debería 579 00:11:31,519 --> 00:11:32,519 estar orientado 580 00:11:32,519 --> 00:11:33,519 en esa dirección 581 00:11:33,519 --> 00:11:34,519 luego 582 00:11:34,519 --> 00:11:35,519 sobre el tema 583 00:11:35,519 --> 00:11:36,519 de 584 00:11:36,519 --> 00:11:37,519 los colliders 585 00:11:37,519 --> 00:11:38,519 atención 586 00:11:38,519 --> 00:11:39,519 porque en algún elemento 587 00:11:39,519 --> 00:11:40,519 como en la pelota 588 00:11:40,519 --> 00:11:41,519 veo que 589 00:11:41,519 --> 00:11:42,519 en algunos 590 00:11:42,519 --> 00:11:43,519 de los game objects 591 00:11:43,519 --> 00:11:44,519 tienes aplicados 592 00:11:44,519 --> 00:11:45,519 diferentes colliders 593 00:11:45,519 --> 00:11:46,519 y atención 594 00:11:46,519 --> 00:11:47,519 porque a no ser 595 00:11:47,519 --> 00:11:48,519 que lo hagamos a posta 596 00:11:48,519 --> 00:11:49,519 normalmente 597 00:11:49,519 --> 00:11:50,519 un área está definido 598 00:11:50,519 --> 00:11:51,519 por un solo collider 599 00:11:51,519 --> 00:11:52,519 vale 600 00:11:52,519 --> 00:11:53,519 esto 601 00:11:53,519 --> 00:11:54,519 entre comillas 602 00:11:54,519 --> 00:11:55,519 porque luego 603 00:11:55,519 --> 00:11:56,519 podremos ir incorporando más 604 00:11:56,519 --> 00:11:57,519 para que algunos sean 605 00:11:57,519 --> 00:11:58,519 colliders reales 606 00:11:58,519 --> 00:11:59,519 y otros sean triggers 607 00:11:59,519 --> 00:12:00,519 no 608 00:12:00,519 --> 00:12:01,519 que 609 00:12:01,519 --> 00:12:02,519 en esta práctica 610 00:12:02,519 --> 00:12:03,519 ya empezamos a ver 611 00:12:03,519 --> 00:12:04,519 y ahora vamos a ver mucho más 612 00:12:04,519 --> 00:12:05,519 qué es cada cosa 613 00:12:05,519 --> 00:12:06,519 vale 614 00:12:06,519 --> 00:12:07,519 pero si 615 00:12:07,519 --> 00:12:08,519 no tiene marcado 616 00:12:08,519 --> 00:12:09,519 lo de trigger 617 00:12:09,519 --> 00:12:10,519 no debería 618 00:12:10,519 --> 00:12:11,519 por defecto 619 00:12:11,519 --> 00:12:12,519 se puede 620 00:12:12,519 --> 00:12:13,519 pero en este caso 621 00:12:13,519 --> 00:12:14,519 no debería haber 622 00:12:14,519 --> 00:12:15,519 más de un collider 623 00:12:15,519 --> 00:12:16,519 vale 624 00:12:16,519 --> 00:12:17,519 sobre los materiales 625 00:12:17,519 --> 00:12:18,519 vale 626 00:12:18,519 --> 00:12:19,519 me has 627 00:12:19,519 --> 00:12:20,519 empezado indicando 628 00:12:20,519 --> 00:12:21,519 vale 629 00:12:21,519 --> 00:12:22,519 que 630 00:12:22,519 --> 00:12:23,519 claro 631 00:12:23,519 --> 00:12:24,519 que no distinguías 632 00:12:24,519 --> 00:12:25,519 entre el material 633 00:12:25,519 --> 00:12:26,519 que habías creado 634 00:12:26,519 --> 00:12:27,519 con crear 635 00:12:27,519 --> 00:12:28,519 material 636 00:12:28,519 --> 00:12:29,519 vale 637 00:12:29,519 --> 00:12:30,519 pero es que fijaos 638 00:12:30,519 --> 00:12:31,519 que luego hay otro material 639 00:12:31,519 --> 00:12:32,519 es verdad 640 00:12:32,519 --> 00:12:33,519 que lo podrían haber hecho 641 00:12:33,519 --> 00:12:34,519 un poco más intuitivo 642 00:12:34,519 --> 00:12:35,519 pero está 643 00:12:35,519 --> 00:12:36,519 lo que es el material 644 00:12:36,519 --> 00:12:37,519 a nivel visual 645 00:12:37,519 --> 00:12:38,519 por ejemplo 646 00:12:38,519 --> 00:12:39,519 la pelota ahora es azul 647 00:12:39,519 --> 00:12:40,519 y 648 00:12:40,519 --> 00:12:41,519 como cromada 649 00:12:41,519 --> 00:12:42,519 vamos 650 00:12:42,519 --> 00:12:43,519 tiene 651 00:12:43,519 --> 00:12:44,519 metálica 652 00:12:44,519 --> 00:12:45,519 luego está 653 00:12:45,519 --> 00:12:46,519 lo que se llama 654 00:12:46,519 --> 00:12:47,519 el physic material 655 00:12:47,519 --> 00:12:48,519 que es 656 00:12:48,519 --> 00:12:49,519 un material 657 00:12:49,519 --> 00:12:50,519 que sirve para 658 00:12:50,519 --> 00:12:51,519 definir si ese material 659 00:12:51,519 --> 00:12:52,519 pues al botar 660 00:12:52,519 --> 00:12:53,519 con otra superficie 661 00:12:53,519 --> 00:12:54,519 pues rebota 662 00:12:54,519 --> 00:12:55,519 o tiene fricción 663 00:12:55,519 --> 00:12:56,519 es decir 664 00:12:56,519 --> 00:12:57,519 no es lo mismo 665 00:12:57,519 --> 00:12:58,519 en el mundo real 666 00:12:58,519 --> 00:12:59,519 que 667 00:12:59,519 --> 00:13:00,519 la fricción 668 00:13:00,519 --> 00:13:01,519 de una acera 669 00:13:01,519 --> 00:13:02,519 sea de 670 00:13:02,519 --> 00:13:03,519 voy a poner números 671 00:13:03,519 --> 00:13:04,519 sea muy dura 672 00:13:04,519 --> 00:13:05,519 o muy blanda 673 00:13:05,519 --> 00:13:06,519 es decir 674 00:13:06,519 --> 00:13:07,519 tú puedes ir andando 675 00:13:07,519 --> 00:13:08,519 por la misma acera 676 00:13:08,519 --> 00:13:09,519 y que 677 00:13:09,519 --> 00:13:10,519 no resbales 678 00:13:10,519 --> 00:13:11,519 cuando vas andando 679 00:13:11,519 --> 00:13:12,519 porque tiene mucha fricción 680 00:13:12,519 --> 00:13:13,519 o que no tenga ninguna 681 00:13:13,519 --> 00:13:14,519 nada 682 00:13:14,519 --> 00:13:15,519 vale 683 00:13:15,519 --> 00:13:16,519 y tiene una capita de hielo 684 00:13:16,519 --> 00:13:17,519 que entonces la fricción 685 00:13:17,519 --> 00:13:18,519 no es ninguna 686 00:13:18,519 --> 00:13:19,519 tener en cuenta 687 00:13:19,519 --> 00:13:20,519 que los colliders 688 00:13:20,519 --> 00:13:21,519 lo que definen 689 00:13:21,519 --> 00:13:22,519 son 690 00:13:22,519 --> 00:13:23,519 los límites físicos 691 00:13:23,519 --> 00:13:24,519 vale 692 00:13:24,519 --> 00:13:25,519 contra los que colisiona 693 00:13:25,519 --> 00:13:26,519 un objeto con otro 694 00:13:26,519 --> 00:13:27,519 vale 695 00:13:27,519 --> 00:13:28,519 sin collider 696 00:13:28,519 --> 00:13:29,519 es imposible 697 00:13:29,519 --> 00:13:30,519 que los elementos 698 00:13:30,519 --> 00:13:31,519 sepan 699 00:13:31,519 --> 00:13:32,519 dónde están los límites 700 00:13:32,519 --> 00:13:33,519 con los que tienen que coleccionar 701 00:13:33,519 --> 00:13:34,519 es decir 702 00:13:34,519 --> 00:13:35,519 si yo por ejemplo 703 00:13:35,519 --> 00:13:36,519 vale 704 00:13:36,519 --> 00:13:37,519 a esta pelota 705 00:13:37,519 --> 00:13:38,519 que tiene este 706 00:13:38,519 --> 00:13:39,519 sphere collider 707 00:13:39,519 --> 00:13:40,519 lo desactivo 708 00:13:40,519 --> 00:13:41,519 temporalmente 709 00:13:41,519 --> 00:13:42,519 vais a ver 710 00:13:42,519 --> 00:13:43,519 que la pelota 711 00:13:43,519 --> 00:13:44,519 le doy ahora al play 712 00:13:44,519 --> 00:13:45,519 vamos 713 00:13:45,519 --> 00:13:46,519 lo reproduzco 714 00:13:46,519 --> 00:13:47,519 que la pelota 715 00:13:47,519 --> 00:13:48,519 choque contra el suelo 716 00:13:48,519 --> 00:13:49,519 vale 717 00:13:49,519 --> 00:13:50,519 todo elemento 718 00:13:50,519 --> 00:13:51,519 que sirva 719 00:13:51,519 --> 00:13:52,519 o que tenga que tener 720 00:13:52,519 --> 00:13:53,519 corporeidad 721 00:13:53,519 --> 00:13:54,519 por decirlo así 722 00:13:54,519 --> 00:13:55,519 que algo colisione 723 00:13:55,519 --> 00:13:56,519 con ello 724 00:13:56,519 --> 00:13:57,519 tiene que tener 725 00:13:57,519 --> 00:13:58,519 algún collider 726 00:13:58,519 --> 00:13:59,519 de un tipo u otro 727 00:13:59,519 --> 00:14:00,519 vale 728 00:14:00,519 --> 00:14:01,519 y por defecto 729 00:14:01,519 --> 00:14:02,519 esa es la función 730 00:14:02,519 --> 00:14:03,519 de un collider 731 00:14:03,519 --> 00:14:04,519 que colisionen objetos 732 00:14:04,519 --> 00:14:05,519 entre sí 733 00:14:05,519 --> 00:14:06,519 vale 734 00:14:06,519 --> 00:14:07,519 entonces 735 00:14:07,519 --> 00:14:08,519 cuando 736 00:14:08,519 --> 00:14:09,519 tenemos además 737 00:14:09,519 --> 00:14:10,519 un collider 738 00:14:10,519 --> 00:14:11,519 todos los colliders 739 00:14:11,519 --> 00:14:12,519 que son los que marcan 740 00:14:12,519 --> 00:14:13,519 los límites 741 00:14:13,519 --> 00:14:14,519 tienen ese material 742 00:14:14,519 --> 00:14:15,519 pero que está 743 00:14:15,519 --> 00:14:16,519 relacionado 744 00:14:16,519 --> 00:14:17,519 con un 745 00:14:17,519 --> 00:14:18,519 physic material 746 00:14:18,519 --> 00:14:19,519 vale 747 00:14:19,519 --> 00:14:20,519 los apuntes 748 00:14:20,519 --> 00:14:21,519 simplemente 749 00:14:21,519 --> 00:14:22,519 para que lo podáis revisar 750 00:14:22,519 --> 00:14:23,519 si abro el tema 3 751 00:14:23,519 --> 00:14:24,519 si no me equivoco 752 00:14:24,519 --> 00:14:25,519 la última parte 753 00:14:25,519 --> 00:14:26,519 los materiales 754 00:14:26,519 --> 00:14:27,519 visuales 755 00:14:27,519 --> 00:14:28,519 como es azul 756 00:14:28,519 --> 00:14:29,519 que he indicado antes 757 00:14:29,519 --> 00:14:31,519 no los hemos estudiado 758 00:14:31,519 --> 00:14:32,519 menos alguna mención 759 00:14:32,519 --> 00:14:33,519 muy pequeña 760 00:14:33,519 --> 00:14:34,519 pero los materiales físicos 761 00:14:34,519 --> 00:14:35,519 sí que es 762 00:14:35,519 --> 00:14:36,519 esta última sección 763 00:14:36,519 --> 00:14:37,519 y aquí se habla de ello 764 00:14:37,519 --> 00:14:38,519 vale 765 00:14:38,519 --> 00:14:39,519 los materiales 766 00:14:39,519 --> 00:14:40,519 del mesh renderer 767 00:14:40,519 --> 00:14:41,519 que es lo que hace 768 00:14:41,519 --> 00:14:42,519 la visualización 769 00:14:42,519 --> 00:14:43,519 del juego 770 00:14:43,519 --> 00:14:44,519 vale 771 00:14:44,519 --> 00:14:45,519 que son estos materiales 772 00:14:45,519 --> 00:14:46,519 y luego están 773 00:14:46,519 --> 00:14:47,519 los materiales físicos 774 00:14:47,519 --> 00:14:48,519 que son 775 00:14:48,519 --> 00:14:49,519 los que 776 00:14:49,519 --> 00:14:50,519 tienen las opciones 777 00:14:50,519 --> 00:14:51,519 de fricción 778 00:14:51,519 --> 00:14:52,519 y de bote 779 00:14:52,519 --> 00:14:53,519 vale 780 00:14:53,519 --> 00:14:54,519 entonces 781 00:14:54,519 --> 00:14:55,519 ahora hacemos algún ejemplo 782 00:14:55,519 --> 00:14:56,519 pero distinguir 783 00:14:56,519 --> 00:14:57,519 esos dos materiales 784 00:14:57,519 --> 00:14:58,519 hay dos tipos de materiales 785 00:14:58,519 --> 00:14:59,519 y además se identifican 786 00:14:59,519 --> 00:15:00,519 por 787 00:15:00,519 --> 00:15:01,519 el icono que tiene 788 00:15:01,519 --> 00:15:02,519 vale 789 00:15:02,519 --> 00:15:03,519 lo voy a crear aquí 790 00:15:03,519 --> 00:15:04,519 si yo creo 791 00:15:04,519 --> 00:15:05,519 un material 792 00:15:05,519 --> 00:15:06,519 para visualizarlo 793 00:15:06,519 --> 00:15:07,519 a través de un renderer 794 00:15:07,519 --> 00:15:08,519 vale 795 00:15:08,519 --> 00:15:09,519 pues 796 00:15:09,519 --> 00:15:10,519 tiene este icono 797 00:15:10,519 --> 00:15:11,519 de bola 798 00:15:11,519 --> 00:15:12,519 de 799 00:15:12,519 --> 00:15:13,519 de 800 00:15:13,519 --> 00:15:14,519 shader 801 00:15:14,519 --> 00:15:15,519 de 802 00:15:15,519 --> 00:15:16,519 de 803 00:15:16,519 --> 00:15:17,519 programa de 3d 804 00:15:17,519 --> 00:15:18,519 vale 805 00:15:18,519 --> 00:15:19,519 y saldrá el material aquí 806 00:15:19,519 --> 00:15:20,519 que nosotros ya 807 00:15:20,519 --> 00:15:21,519 podremos ir cambiando de color 808 00:15:21,519 --> 00:15:22,519 o ponerle 809 00:15:22,519 --> 00:15:23,519 como venía en la escena 810 00:15:23,519 --> 00:15:24,519 las texturas 811 00:15:24,519 --> 00:15:25,519 lo hago muy rápido 812 00:15:25,519 --> 00:15:26,519 en 813 00:15:26,519 --> 00:15:27,519 el canal albedo 814 00:15:27,519 --> 00:15:28,519 que esto ya habéis estudiado 3d 815 00:15:28,519 --> 00:15:30,519 como habéis hecho en otros módulos 816 00:15:30,519 --> 00:15:31,519 antes de color 817 00:15:31,519 --> 00:15:32,519 etcétera 818 00:15:32,519 --> 00:15:33,519 pues son los distintos pases 819 00:15:33,519 --> 00:15:34,519 digamos 820 00:15:34,519 --> 00:15:35,519 los canales 821 00:15:35,519 --> 00:15:36,519 que tiene este material 822 00:15:36,519 --> 00:15:37,519 vale 823 00:15:37,519 --> 00:15:38,519 ahora mismo 824 00:15:38,519 --> 00:15:39,519 cuando estamos hablando mucho 825 00:15:39,519 --> 00:15:40,519 de materiales 826 00:15:40,519 --> 00:15:41,519 de más visual 827 00:15:41,519 --> 00:15:42,519 me voy a centrar más 828 00:15:42,519 --> 00:15:43,519 casi 829 00:15:43,519 --> 00:15:44,519 en el material físico 830 00:15:44,519 --> 00:15:45,519 vuelvo aquí 831 00:15:45,519 --> 00:15:46,519 si 832 00:15:46,519 --> 00:15:47,519 donde 833 00:15:47,519 --> 00:15:48,519 a ver 834 00:15:48,519 --> 00:15:49,519 porque lo he creado aquí 835 00:15:49,519 --> 00:15:50,519 si en vez de crear un material 836 00:15:50,519 --> 00:15:51,519 creo un physics material 837 00:15:51,519 --> 00:15:52,519 vale 838 00:15:52,519 --> 00:15:53,519 un material para físicas 839 00:15:53,519 --> 00:15:54,519 lo que se genera 840 00:15:54,519 --> 00:15:55,519 es este icono 841 00:15:55,519 --> 00:15:56,519 vale 842 00:15:56,519 --> 00:15:57,519 y estas opciones 843 00:15:57,519 --> 00:15:58,519 es bastante más simple 844 00:15:58,519 --> 00:15:59,519 entonces 845 00:15:59,519 --> 00:16:00,519 este material 846 00:16:00,519 --> 00:16:01,519 vamos a decir 847 00:16:01,519 --> 00:16:02,519 que es 848 00:16:02,519 --> 00:16:03,519 goma 849 00:16:03,519 --> 00:16:04,519 o 850 00:16:04,519 --> 00:16:05,519 cama elástica 851 00:16:05,519 --> 00:16:06,519 cama elástica 852 00:16:06,519 --> 00:16:07,519 aquí 853 00:16:07,519 --> 00:16:08,519 vale 854 00:16:08,519 --> 00:16:09,519 y yo le digo 855 00:16:09,519 --> 00:16:10,519 que es goma elástica 856 00:16:10,519 --> 00:16:11,519 que lo voy a usar 857 00:16:11,519 --> 00:16:12,519 por ejemplo 858 00:16:12,519 --> 00:16:13,519 en 859 00:16:13,519 --> 00:16:14,519 el 860 00:16:14,519 --> 00:16:15,519 en el mes colider 861 00:16:15,519 --> 00:16:16,519 que tiene 862 00:16:16,519 --> 00:16:17,519 bueno 863 00:16:17,519 --> 00:16:18,519 yo ya tengo un aplicado 864 00:16:18,519 --> 00:16:19,519 que se llama madera 865 00:16:19,519 --> 00:16:20,519 pero os lo voy a poner 866 00:16:20,519 --> 00:16:21,519 en este que tengo aquí 867 00:16:21,519 --> 00:16:22,519 vale 868 00:16:22,519 --> 00:16:23,519 lo cambio un segundo 869 00:16:23,519 --> 00:16:24,519 uno 870 00:16:24,519 --> 00:16:25,519 que 871 00:16:25,519 --> 00:16:26,519 está aplicado 872 00:16:26,519 --> 00:16:27,519 a la superficie 873 00:16:27,519 --> 00:16:28,519 de la madera 874 00:16:28,519 --> 00:16:29,519 de la 875 00:16:29,519 --> 00:16:30,519 del 876 00:16:30,519 --> 00:16:31,519 de la plataforma 877 00:16:31,519 --> 00:16:32,519 vale 878 00:16:32,519 --> 00:16:33,519 entonces 879 00:16:33,519 --> 00:16:34,519 si yo esa cama elástica 880 00:16:34,519 --> 00:16:35,519 por ejemplo 881 00:16:35,519 --> 00:16:36,519 le digo que tenga 882 00:16:36,519 --> 00:16:37,519 un bote 883 00:16:37,519 --> 00:16:38,519 elevadísimo 884 00:16:38,519 --> 00:16:39,519 vais a ver 885 00:16:39,519 --> 00:16:40,519 que 886 00:16:40,519 --> 00:16:41,519 la pelota 887 00:16:41,519 --> 00:16:42,519 cuando cae 888 00:16:42,519 --> 00:16:43,519 da ese bote 889 00:16:43,519 --> 00:16:44,519 vale 890 00:16:44,519 --> 00:16:45,519 ese bote 891 00:16:45,519 --> 00:16:46,519 y tal 892 00:16:46,519 --> 00:16:47,519 es decir 893 00:16:47,519 --> 00:16:48,519 porque le he puesto un límite 894 00:16:48,519 --> 00:16:49,519 de bote 895 00:16:49,519 --> 00:16:50,519 muy alto 896 00:16:50,519 --> 00:16:51,519 si yo le pusiera acero 897 00:16:51,519 --> 00:16:52,519 el material sigue aplicado 898 00:16:52,519 --> 00:16:53,519 vale 899 00:16:53,519 --> 00:16:54,519 he cambiado la opción del material 900 00:16:54,519 --> 00:16:55,519 y veis que cae a plomo 901 00:16:55,519 --> 00:16:56,519 no tiene ningún tipo de bote 902 00:16:56,519 --> 00:16:57,519 no es una cama elástica 903 00:16:57,519 --> 00:16:58,519 es una plancha de acero 904 00:16:58,519 --> 00:16:59,519 vale 905 00:16:59,519 --> 00:17:00,519 para hacer una idea 906 00:17:00,519 --> 00:17:01,519 entonces 907 00:17:01,519 --> 00:17:02,519 esos materiales sirven para eso 908 00:17:02,519 --> 00:17:03,519 ojo 909 00:17:03,519 --> 00:17:04,519 porque claro 910 00:17:04,519 --> 00:17:05,519 ahora mismo son dos 911 00:17:05,519 --> 00:17:06,519 los elementos que están colisionando 912 00:17:06,519 --> 00:17:07,519 la bola 913 00:17:07,519 --> 00:17:08,519 y de hecho aquí la tengo 914 00:17:08,519 --> 00:17:09,519 acero 915 00:17:09,519 --> 00:17:10,519 ya la había hecho yo uno 916 00:17:10,519 --> 00:17:11,519 eh 917 00:17:11,519 --> 00:17:12,519 la propia 918 00:17:12,519 --> 00:17:13,519 la propia 919 00:17:13,519 --> 00:17:14,519 pelota 920 00:17:14,519 --> 00:17:15,519 también podría ser de goma 921 00:17:15,519 --> 00:17:16,519 si yo le pongo cama elástica 922 00:17:16,519 --> 00:17:17,519 y a los dos 923 00:17:17,519 --> 00:17:18,519 les digo que tengan muchísimo bote 924 00:17:18,519 --> 00:17:19,519 cuando le da al play 925 00:17:19,519 --> 00:17:20,519 va a dar un bote aún mayor 926 00:17:20,519 --> 00:17:21,519 fijaos qué pedazo de bote 927 00:17:21,519 --> 00:17:22,519 vale 928 00:17:22,519 --> 00:17:23,519 porque estamos juntando 929 00:17:23,519 --> 00:17:24,519 y de hecho no va a dejar de botar 930 00:17:24,519 --> 00:17:25,519 porque tienen 931 00:17:25,519 --> 00:17:26,519 los dos elementos 932 00:17:26,519 --> 00:17:27,519 el bote máximo 933 00:17:27,519 --> 00:17:28,519 la pelota por un lado 934 00:17:28,519 --> 00:17:29,519 que es como si fuera una 935 00:17:29,519 --> 00:17:30,519 pelota de tenis 936 00:17:30,519 --> 00:17:31,519 que bota mucho 937 00:17:31,519 --> 00:17:32,519 no 938 00:17:32,519 --> 00:17:33,519 es el ejemplo que se me ocurre 939 00:17:33,519 --> 00:17:34,519 y además 940 00:17:34,519 --> 00:17:35,519 si yo le pongo 941 00:17:35,519 --> 00:17:36,519 cama elástica 942 00:17:36,519 --> 00:17:37,519 es el ejemplo que se me ocurre 943 00:17:37,519 --> 00:17:38,519 y aparte 944 00:17:38,519 --> 00:17:39,519 lo estuviéramos tirando 945 00:17:39,519 --> 00:17:40,519 una cama elástica 946 00:17:40,519 --> 00:17:41,519 entonces el bote es 947 00:17:41,519 --> 00:17:42,519 mmm 948 00:17:42,519 --> 00:17:43,519 muy elevado 949 00:17:43,519 --> 00:17:44,519 con la fricción 950 00:17:44,519 --> 00:17:45,519 y esto 951 00:17:45,519 --> 00:17:46,519 también 952 00:17:46,519 --> 00:17:47,519 tiene influencia 953 00:17:47,519 --> 00:17:48,519 pues 954 00:17:48,519 --> 00:17:49,519 en el nivel 2 955 00:17:49,519 --> 00:17:50,519 si pusiéramos una caja de madera 956 00:17:50,519 --> 00:17:51,519 y estamos volcando 957 00:17:51,519 --> 00:17:52,519 eh 958 00:17:52,519 --> 00:17:53,519 la plataforma 959 00:17:53,519 --> 00:17:54,519 la fricción 960 00:17:54,519 --> 00:17:55,519 es 961 00:17:55,519 --> 00:17:56,519 básicamente 962 00:17:56,519 --> 00:17:57,519 cuánta resistencia 963 00:17:57,519 --> 00:17:58,519 va a tener 964 00:17:58,519 --> 00:17:59,519 el objeto 965 00:17:59,519 --> 00:18:00,519 con respecto a la plataforma 966 00:18:00,519 --> 00:18:01,519 es decir 967 00:18:01,519 --> 00:18:02,519 la plataforma 968 00:18:02,519 --> 00:18:03,519 si oscila un poco 969 00:18:03,519 --> 00:18:04,519 y es de hielo 970 00:18:04,519 --> 00:18:05,519 tendrá muy poca fricción 971 00:18:05,519 --> 00:18:06,519 vale 972 00:18:06,519 --> 00:18:07,519 pero si es 973 00:18:07,519 --> 00:18:08,519 eh 974 00:18:08,519 --> 00:18:09,519 pues de 975 00:18:09,519 --> 00:18:10,519 a ver 976 00:18:10,519 --> 00:18:11,519 por ejemplo 977 00:18:11,519 --> 00:18:12,519 de gravilla 978 00:18:12,519 --> 00:18:13,519 la fricción es mucho menor 979 00:18:13,519 --> 00:18:14,519 y no se va a ir desplazando 980 00:18:14,519 --> 00:18:15,519 se va a detener enseguida 981 00:18:15,519 --> 00:18:16,519 vale 982 00:18:16,519 --> 00:18:17,519 esa es la función de él 983 00:18:17,519 --> 00:18:18,519 los materiales físicos 984 00:18:18,519 --> 00:18:19,519 que siempre van 985 00:18:19,519 --> 00:18:20,519 asociados al collider 986 00:18:20,519 --> 00:18:21,519 vale 987 00:18:21,519 --> 00:18:22,519 al collider 988 00:18:22,519 --> 00:18:24,519 a los distintos colliders 989 00:18:24,519 --> 00:18:25,519 todos tendrán 990 00:18:25,519 --> 00:18:26,519 algún 991 00:18:26,519 --> 00:18:27,519 eh 992 00:18:27,519 --> 00:18:28,519 alguna sección de material 993 00:18:28,519 --> 00:18:29,519 y luego el mesh renderer 994 00:18:29,519 --> 00:18:30,519 que si recordáis 995 00:18:30,519 --> 00:18:31,519 era 996 00:18:31,519 --> 00:18:32,519 el componente 997 00:18:32,519 --> 00:18:33,519 que viene por defecto 998 00:18:33,519 --> 00:18:34,519 las geometrías 999 00:18:34,519 --> 00:18:35,519 para asignar 1000 00:18:35,519 --> 00:18:36,519 pues que 1001 00:18:36,519 --> 00:18:37,519 este elemento 1002 00:18:37,519 --> 00:18:38,519 ahí hay otro material 1003 00:18:38,519 --> 00:18:39,519 esto ya veremos 1004 00:18:39,519 --> 00:18:40,519 más adelante 1005 00:18:40,519 --> 00:18:41,519 que son 1006 00:18:41,519 --> 00:18:42,519 los materiales visuales 1007 00:18:42,519 --> 00:18:43,519 vale 1008 00:18:43,519 --> 00:18:44,519 que son 1009 00:18:44,519 --> 00:18:45,519 los dos que vemos aquí 1010 00:18:45,519 --> 00:18:46,519 de diferente tipo 1011 00:18:46,519 --> 00:18:47,519 vale 1012 00:18:47,519 --> 00:18:48,519 hasta aquí qué tal 1013 00:18:48,519 --> 00:18:49,519 esto 1014 00:18:49,519 --> 00:18:50,519 que es importante 1015 00:18:50,519 --> 00:18:51,519 que distingáis 1016 00:18:51,519 --> 00:18:52,519 que aunque ponga material 1017 00:18:52,519 --> 00:18:53,519 en ambos casos 1018 00:18:53,519 --> 00:18:54,519 vale 1019 00:18:54,519 --> 00:18:55,519 no tiene nada que ver 1020 00:18:55,519 --> 00:18:56,519 vale 1021 00:18:56,519 --> 00:18:57,519 vuelvo para atrás 1022 00:18:57,519 --> 00:18:58,519 que quiero dejarlo 1023 00:18:58,519 --> 00:18:59,519 como estaba 1024 00:18:59,519 --> 00:19:00,519 para que no sea 1025 00:19:00,519 --> 00:19:01,519 una cama elástica 1026 00:19:01,519 --> 00:19:02,519 como 1027 00:19:02,519 --> 00:19:03,519 qué tal 1028 00:19:03,519 --> 00:19:04,519 entonces 1029 00:19:04,519 --> 00:19:05,519 una pregunta 1030 00:19:05,519 --> 00:19:06,519 qué es el material 1031 00:19:06,519 --> 00:19:07,519 es decir 1032 00:19:07,519 --> 00:19:08,519 el bote 1033 00:19:08,519 --> 00:19:09,519 la fricción 1034 00:19:09,519 --> 00:19:10,519 y todo eso 1035 00:19:10,519 --> 00:19:11,519 eso es un material físico 1036 00:19:11,519 --> 00:19:12,519 eso es 1037 00:19:12,519 --> 00:19:13,519 o sea solamente 1038 00:19:13,519 --> 00:19:14,519 las características físicas 1039 00:19:14,519 --> 00:19:15,519 del material 1040 00:19:15,519 --> 00:19:16,519 pero no las visuales 1041 00:19:16,519 --> 00:19:17,519 las visuales serían 1042 00:19:17,519 --> 00:19:18,519 en el renderer 1043 00:19:18,519 --> 00:19:19,519 no 1044 00:19:19,519 --> 00:19:20,519 efectivamente 1045 00:19:20,519 --> 00:19:21,519 y la forma de interactuar 1046 00:19:21,519 --> 00:19:22,519 de un material con el otro 1047 00:19:22,519 --> 00:19:23,519 entonces tiene que ser 1048 00:19:23,519 --> 00:19:24,519 a través del material físico 1049 00:19:24,519 --> 00:19:25,519 efectivamente 1050 00:19:25,519 --> 00:19:26,519 el material 1051 00:19:26,519 --> 00:19:27,519 es decir 1052 00:19:27,519 --> 00:19:28,519 el 1053 00:19:28,519 --> 00:19:29,519 que la bola se ve azul 1054 00:19:29,519 --> 00:19:30,519 y donde yo lo defino 1055 00:19:30,519 --> 00:19:31,519 en el mes renderer 1056 00:19:31,519 --> 00:19:32,519 vale 1057 00:19:32,519 --> 00:19:33,519 con este tipo de material 1058 00:19:33,519 --> 00:19:34,519 que tengo aquí 1059 00:19:34,519 --> 00:19:35,519 es sólo visual 1060 00:19:35,519 --> 00:19:36,519 vale 1061 00:19:36,519 --> 00:19:37,519 el material físico 1062 00:19:37,519 --> 00:19:38,519 como dice su nombre 1063 00:19:38,519 --> 00:19:39,519 fijaos el icono 1064 00:19:39,519 --> 00:19:40,519 de hecho 1065 00:19:40,519 --> 00:19:41,519 mira 1066 00:19:41,519 --> 00:19:42,519 es casi lo que he dicho 1067 00:19:42,519 --> 00:19:43,519 una pelota de tenis 1068 00:19:43,519 --> 00:19:44,519 contra una cama 1069 00:19:44,519 --> 00:19:45,519 una placa 1070 00:19:45,519 --> 00:19:46,519 esto es lo que 1071 00:19:46,519 --> 00:19:47,519 y si clicáis aquí 1072 00:19:47,519 --> 00:19:48,519 fijaos las opciones que salen 1073 00:19:48,519 --> 00:19:49,519 todas están relacionadas 1074 00:19:49,519 --> 00:19:50,519 con la fricción 1075 00:19:50,519 --> 00:19:51,519 y el bote 1076 00:19:51,519 --> 00:19:52,519 vale 1077 00:19:52,519 --> 00:19:53,519 no tiene nada visual 1078 00:19:53,519 --> 00:19:54,519 y una 1079 00:19:54,519 --> 00:19:55,519 se va a asociar 1080 00:19:55,519 --> 00:19:56,519 en el collider 1081 00:19:56,519 --> 00:19:57,519 vale 1082 00:19:57,519 --> 00:19:58,519 y nuevamente 1083 00:19:58,519 --> 00:19:59,519 esto se ve 1084 00:19:59,519 --> 00:20:00,519 en el momento 1085 00:20:00,519 --> 00:20:01,519 que tengáis dudas 1086 00:20:01,519 --> 00:20:02,519 por decirlo así 1087 00:20:02,519 --> 00:20:03,519 si cuando por defecto 1088 00:20:03,519 --> 00:20:04,519 lo que os pide aquí 1089 00:20:04,519 --> 00:20:05,519 no es un material 1090 00:20:05,519 --> 00:20:06,519 pone 1091 00:20:06,519 --> 00:20:07,519 physic material 1092 00:20:07,519 --> 00:20:08,519 porque lo que está buscando 1093 00:20:08,519 --> 00:20:09,519 aunque yo arrastre 1094 00:20:09,519 --> 00:20:10,519 este material visual 1095 00:20:10,519 --> 00:20:11,519 no me lo coge 1096 00:20:11,519 --> 00:20:12,519 porque ese campo 1097 00:20:12,519 --> 00:20:13,519 está pensado 1098 00:20:13,519 --> 00:20:14,519 para arrastrar 1099 00:20:14,519 --> 00:20:15,519 materiales físicos 1100 00:20:15,519 --> 00:20:16,519 vale 1101 00:20:16,519 --> 00:20:17,519 entonces otra pregunta 1102 00:20:17,519 --> 00:20:18,519 dime dime 1103 00:20:18,519 --> 00:20:19,519 si yo por ejemplo 1104 00:20:19,519 --> 00:20:20,519 quiero que 1105 00:20:20,519 --> 00:20:21,519 que un material interactúe 1106 00:20:21,519 --> 00:20:22,519 con otro 1107 00:20:22,519 --> 00:20:23,519 con el mes 1108 00:20:23,519 --> 00:20:24,519 con el collider 1109 00:20:24,519 --> 00:20:25,519 con un collider 1110 00:20:25,519 --> 00:20:26,519 por ejemplo 1111 00:20:26,519 --> 00:20:27,519 que le pegas contra 1112 00:20:27,519 --> 00:20:28,519 o al malo 1113 00:20:28,519 --> 00:20:29,519 le pegas contra una pared 1114 00:20:29,519 --> 00:20:30,519 sí 1115 00:20:30,519 --> 00:20:31,519 y en vez de estamparse 1116 00:20:31,519 --> 00:20:32,519 rebota 1117 00:20:32,519 --> 00:20:33,519 lo tengo que hacer todo 1118 00:20:33,519 --> 00:20:34,519 el material físico 1119 00:20:34,519 --> 00:20:35,519 en el collider 1120 00:20:35,519 --> 00:20:36,519 no 1121 00:20:36,519 --> 00:20:37,519 claro 1122 00:20:37,519 --> 00:20:38,519 aquí se suman dos cosas 1123 00:20:38,519 --> 00:20:39,519 el comportamiento 1124 00:20:39,519 --> 00:20:40,519 que tienen en sí mismo 1125 00:20:40,519 --> 00:20:41,519 los materiales 1126 00:20:41,519 --> 00:20:42,519 cuando colisionan 1127 00:20:42,519 --> 00:20:43,519 qué es lo que has dicho 1128 00:20:43,519 --> 00:20:44,519 tú imagínate 1129 00:20:44,519 --> 00:20:45,519 que estás 1130 00:20:45,519 --> 00:20:46,519 pues eso 1131 00:20:46,519 --> 00:20:47,519 lanzando una pelota 1132 00:20:47,519 --> 00:20:48,519 contra una pared 1133 00:20:48,519 --> 00:20:49,519 vale 1134 00:20:49,519 --> 00:20:50,519 pues ya las materiales 1135 00:20:50,519 --> 00:20:51,519 las propiedades 1136 00:20:51,519 --> 00:20:52,519 del material físico 1137 00:20:52,519 --> 00:20:53,519 va a permitir 1138 00:20:53,519 --> 00:20:54,519 que el rebote 1139 00:20:54,519 --> 00:20:55,519 de esa pelota 1140 00:20:55,519 --> 00:20:56,519 al chocar 1141 00:20:56,519 --> 00:20:57,519 sea de una forma 1142 00:20:57,519 --> 00:20:58,519 u otra 1143 00:20:58,519 --> 00:20:59,519 vale 1144 00:20:59,519 --> 00:21:00,519 un poco la lógica 1145 00:21:00,519 --> 00:21:01,519 es pensar eso 1146 00:21:01,519 --> 00:21:02,519 que una pelota 1147 00:21:02,519 --> 00:21:03,519 sea de goma 1148 00:21:03,519 --> 00:21:04,519 está contra la pared 1149 00:21:04,519 --> 00:21:05,519 y puede que hasta la rompa 1150 00:21:05,519 --> 00:21:06,519 vale 1151 00:21:06,519 --> 00:21:07,519 luego aparte 1152 00:21:07,519 --> 00:21:08,519 también está 1153 00:21:08,519 --> 00:21:09,519 que tú puedes 1154 00:21:09,519 --> 00:21:10,519 por código 1155 00:21:10,519 --> 00:21:11,519 decir 1156 00:21:11,519 --> 00:21:12,519 cuando choque la pelota 1157 00:21:12,519 --> 00:21:13,519 tenga el material físico 1158 00:21:13,519 --> 00:21:14,519 que tenga 1159 00:21:14,519 --> 00:21:15,519 que al chocar 1160 00:21:15,519 --> 00:21:16,519 contra la pared 1161 00:21:16,519 --> 00:21:17,519 y detectarse la colisión 1162 00:21:17,519 --> 00:21:18,519 que se aplique una fuerza 1163 00:21:18,519 --> 00:21:19,519 en orden 1164 00:21:19,519 --> 00:21:20,519 en 1165 00:21:20,519 --> 00:21:21,519 la dirección contraria 1166 00:21:21,519 --> 00:21:22,519 se puede hacer 1167 00:21:22,519 --> 00:21:23,519 de varias formas 1168 00:21:23,519 --> 00:21:24,519 y se pueden combinar 1169 00:21:24,519 --> 00:21:25,519 las distintas formas 1170 00:21:25,519 --> 00:21:26,519 pero 1171 00:21:26,519 --> 00:21:27,519 una cosa 1172 00:21:27,519 --> 00:21:28,519 hay que pensar 1173 00:21:28,519 --> 00:21:29,519 que es 1174 00:21:29,519 --> 00:21:30,519 las propiedades intrínsecas 1175 00:21:30,519 --> 00:21:31,519 del propio objeto 1176 00:21:31,519 --> 00:21:32,519 que serían 1177 00:21:32,519 --> 00:21:33,519 las de ese material físico 1178 00:21:33,519 --> 00:21:34,519 asignado 1179 00:21:34,519 --> 00:21:35,519 no es solo crear el material 1180 00:21:35,519 --> 00:21:36,519 es luego asignárselo 1181 00:21:36,519 --> 00:21:37,519 al collider 1182 00:21:37,519 --> 00:21:38,519 vale 1183 00:21:38,519 --> 00:21:39,519 y luego por otro lado 1184 00:21:39,519 --> 00:21:40,519 tú también por código 1185 00:21:40,519 --> 00:21:41,519 puedes añadir fuerzas 1186 00:21:41,519 --> 00:21:42,519 como estamos haciendo aquí 1187 00:21:42,519 --> 00:21:43,519 con estos 1188 00:21:43,519 --> 00:21:44,519 add force 1189 00:21:44,519 --> 00:21:45,519 y add torque 1190 00:21:45,519 --> 00:21:46,519 vale 1191 00:21:46,519 --> 00:21:47,519 no sé si me 1192 00:21:47,519 --> 00:21:48,519 si me 1193 00:21:48,519 --> 00:21:49,519 vais entendiendo 1194 00:21:49,519 --> 00:21:50,519 si no 1195 00:21:50,519 --> 00:21:51,519 sigo con ello 1196 00:21:51,519 --> 00:21:52,519 lo 1197 00:21:52,519 --> 00:21:53,519 lo 1198 00:21:53,519 --> 00:21:54,519 explico de otra forma 1199 00:21:54,519 --> 00:21:55,519 a ver que no sé 1200 00:21:55,519 --> 00:21:56,519 si me estáis escribiendo 1201 00:21:56,519 --> 00:21:57,519 por el chat 1202 00:21:57,519 --> 00:21:58,519 vale 1203 00:21:58,519 --> 00:21:59,519 yo entiendo 1204 00:21:59,519 --> 00:22:00,519 si la pelota 1205 00:22:00,519 --> 00:22:01,519 pones 1206 00:22:01,519 --> 00:22:02,519 para que 1207 00:22:02,519 --> 00:22:03,519 se produzca 1208 00:22:03,519 --> 00:22:04,519 digamos 1209 00:22:04,519 --> 00:22:05,519 un rebote 1210 00:22:05,519 --> 00:22:06,519 solo afectaría 1211 00:22:06,519 --> 00:22:07,519 a la superficie 1212 00:22:07,519 --> 00:22:08,519 contra 1213 00:22:08,519 --> 00:22:09,519 lo que 1214 00:22:09,519 --> 00:22:10,519 has programado 1215 00:22:10,519 --> 00:22:11,519 quiero decir 1216 00:22:11,519 --> 00:22:12,519 si lo has programado 1217 00:22:12,519 --> 00:22:13,519 para que rebote 1218 00:22:13,519 --> 00:22:14,519 en el suelo 1219 00:22:14,519 --> 00:22:15,519 pero choca 1220 00:22:15,519 --> 00:22:16,519 contra otra superficie 1221 00:22:16,519 --> 00:22:17,519 no funcionaría 1222 00:22:17,519 --> 00:22:18,519 no 1223 00:22:18,519 --> 00:22:19,519 claro 1224 00:22:19,519 --> 00:22:20,519 ahora vamos a ver 1225 00:22:20,519 --> 00:22:21,519 que 1226 00:22:21,519 --> 00:22:22,519 todo lo que 1227 00:22:22,519 --> 00:22:23,519 vamos teniendo 1228 00:22:23,519 --> 00:22:24,519 luego 1229 00:22:24,519 --> 00:22:25,519 de diferentes modos 1230 00:22:25,519 --> 00:22:26,519 se puede ir discriminando 1231 00:22:26,519 --> 00:22:27,519 que si este objeto 1232 00:22:27,519 --> 00:22:28,519 choca con este objeto 1233 00:22:28,519 --> 00:22:29,519 haga una cosa 1234 00:22:29,519 --> 00:22:30,519 si este objeto 1235 00:22:30,519 --> 00:22:31,519 choca contra el 1236 00:22:31,519 --> 00:22:32,519 colíder 1237 00:22:32,519 --> 00:22:33,519 que tenemos aquí 1238 00:22:33,519 --> 00:22:34,519 trigger 1239 00:22:34,519 --> 00:22:35,519 por ejemplo 1240 00:22:35,519 --> 00:22:36,519 de aquí 1241 00:22:36,519 --> 00:22:37,519 vale 1242 00:22:37,519 --> 00:22:38,519 que haga otra cosa 1243 00:22:38,519 --> 00:22:39,519 es decir 1244 00:22:39,519 --> 00:22:40,519 si 1245 00:22:40,519 --> 00:22:41,519 luego por código 1246 00:22:41,519 --> 00:22:42,519 tendremos que ir discriminando 1247 00:22:42,519 --> 00:22:43,519 que hace cada 1248 00:22:43,519 --> 00:22:44,519 cada colisión 1249 00:22:44,519 --> 00:22:45,519 digamos 1250 00:22:45,519 --> 00:22:46,519 que desencadena 1251 00:22:46,519 --> 00:22:47,519 el otro día 1252 00:22:47,519 --> 00:22:48,519 mira 1253 00:22:48,519 --> 00:22:49,519 para poneros un ejemplo 1254 00:22:49,519 --> 00:22:50,519 que igual 1255 00:22:50,519 --> 00:22:51,519 es más 1256 00:22:51,519 --> 00:22:52,519 develador 1257 00:22:52,519 --> 00:22:53,519 don't save 1258 00:22:53,519 --> 00:22:54,519 vale 1259 00:22:54,519 --> 00:22:55,519 en el último nivel 1260 00:22:55,519 --> 00:22:56,519 que este no lo 1261 00:22:56,519 --> 00:22:57,519 no se pide 1262 00:22:57,519 --> 00:22:58,519 vale 1263 00:22:58,519 --> 00:22:59,519 la tarea 1264 00:22:59,519 --> 00:23:00,519 pero para explicar esto 1265 00:23:00,519 --> 00:23:01,519 igual que en el nivel 1266 00:23:01,519 --> 00:23:02,519 2 y 3 1267 00:23:02,519 --> 00:23:03,519 pues que se mueva 1268 00:23:03,519 --> 00:23:04,519 se mueve la 1269 00:23:04,519 --> 00:23:05,519 la plataforma 1270 00:23:05,519 --> 00:23:06,519 oscila 1271 00:23:06,519 --> 00:23:07,519 pero si choca 1272 00:23:07,519 --> 00:23:08,519 con esos elementos 1273 00:23:08,519 --> 00:23:09,519 y fijaos 1274 00:23:09,519 --> 00:23:10,519 que yo en la bola 1275 00:23:10,519 --> 00:23:11,519 tengo el material acero 1276 00:23:11,519 --> 00:23:12,519 mismo 1277 00:23:12,519 --> 00:23:13,519 que tenía la otra escena 1278 00:23:13,519 --> 00:23:14,519 y en 1279 00:23:14,519 --> 00:23:15,519 en la madera 1280 00:23:15,519 --> 00:23:16,519 a ver 1281 00:23:16,519 --> 00:23:17,519 en el 1282 00:23:17,519 --> 00:23:18,519 intermedio 1283 00:23:18,519 --> 00:23:19,519 tenía 1284 00:23:19,519 --> 00:23:20,519 bueno 1285 00:23:20,519 --> 00:23:21,519 no lo tengo puesto 1286 00:23:21,519 --> 00:23:22,519 pero lo puedo poner 1287 00:23:22,519 --> 00:23:23,519 el de madera 1288 00:23:23,519 --> 00:23:24,519 vale 1289 00:23:24,519 --> 00:23:25,519 vais a ver 1290 00:23:25,519 --> 00:23:26,519 que aún así 1291 00:23:26,519 --> 00:23:27,519 cuando choque 1292 00:23:27,519 --> 00:23:28,519 con uno de los pivotes 1293 00:23:28,519 --> 00:23:29,519 si tiene bastante 1294 00:23:29,519 --> 00:23:30,519 energía 1295 00:23:30,519 --> 00:23:31,519 lo que hace es 1296 00:23:31,519 --> 00:23:32,519 repelerlo 1297 00:23:32,519 --> 00:23:33,519 hacia otro 1298 00:23:33,519 --> 00:23:34,519 hacia el otro lado 1299 00:23:34,519 --> 00:23:35,519 fijaos que yo 1300 00:23:35,519 --> 00:23:36,519 ahora cuando se choque 1301 00:23:36,519 --> 00:23:37,519 va a hacer pum 1302 00:23:37,519 --> 00:23:38,519 y sale disparado 1303 00:23:38,519 --> 00:23:39,519 eso no es por los materiales físicos 1304 00:23:39,519 --> 00:23:40,519 eso es porque yo he dicho 1305 00:23:40,519 --> 00:23:41,519 que cuando choque 1306 00:23:41,519 --> 00:23:42,519 esta bola 1307 00:23:42,519 --> 00:23:43,519 con uno de los pivotes 1308 00:23:43,519 --> 00:23:44,519 le implique 1309 00:23:44,519 --> 00:23:45,519 le aplique una fuerza 1310 00:23:45,519 --> 00:23:46,519 contraria 1311 00:23:46,519 --> 00:23:47,519 vale 1312 00:23:47,519 --> 00:23:48,519 yo ahora mismo aquí 1313 00:23:48,519 --> 00:23:49,519 si voy a 1314 00:23:49,519 --> 00:23:50,519 cualquiera de estos pivotes 1315 00:23:50,519 --> 00:23:51,519 lo selecciono 1316 00:23:51,519 --> 00:23:52,519 desde la escena 1317 00:23:52,519 --> 00:23:53,519 vale 1318 00:23:53,519 --> 00:23:54,519 vais a ver 1319 00:23:54,519 --> 00:23:55,519 que tengo un script 1320 00:23:55,519 --> 00:23:56,519 que si me meto 1321 00:23:56,519 --> 00:23:57,519 vale 1322 00:23:57,519 --> 00:23:58,519 lo que va a hacer es 1323 00:23:58,519 --> 00:23:59,519 a este capsule collider 1324 00:23:59,519 --> 00:24:00,519 que le aplique una fuerza 1325 00:24:00,519 --> 00:24:01,519 en dirección contraria 1326 00:24:01,519 --> 00:24:02,519 vale 1327 00:24:02,519 --> 00:24:03,519 esto es más avanzado 1328 00:24:03,519 --> 00:24:04,519 a nivel de programación 1329 00:24:04,519 --> 00:24:05,519 pero el concepto 1330 00:24:05,519 --> 00:24:06,519 fijaos que el material físico 1331 00:24:06,519 --> 00:24:07,519 realmente 1332 00:24:07,519 --> 00:24:08,519 no es el que está haciendo 1333 00:24:08,519 --> 00:24:09,519 ese rebote 1334 00:24:09,519 --> 00:24:10,519 es el código 1335 00:24:10,519 --> 00:24:11,519 que cuando 1336 00:24:11,519 --> 00:24:12,519 colisionan dos objetos 1337 00:24:12,519 --> 00:24:13,519 hace pum 1338 00:24:13,519 --> 00:24:14,519 y le empuja 1339 00:24:14,519 --> 00:24:15,519 hacia el otro lado 1340 00:24:15,519 --> 00:24:16,519 vale 1341 00:24:16,519 --> 00:24:17,519 pero sí que por defecto 1342 00:24:17,519 --> 00:24:18,519 los materiales 1343 00:24:18,519 --> 00:24:19,519 ya pueden tener 1344 00:24:19,519 --> 00:24:20,519 su propio comportamiento físico 1345 00:24:20,519 --> 00:24:21,519 ya por defecto 1346 00:24:21,519 --> 00:24:22,519 tened en cuenta 1347 00:24:22,519 --> 00:24:23,519 que todo lo que estábamos 1348 00:24:23,519 --> 00:24:24,519 estudiando en el tema 3 1349 00:24:24,519 --> 00:24:25,519 es simulaciones físicos 1350 00:24:25,519 --> 00:24:26,519 para que se parezca 1351 00:24:26,519 --> 00:24:27,519 un poco 1352 00:24:27,519 --> 00:24:28,519 a los comportamientos 1353 00:24:28,519 --> 00:24:29,519 pues del mundo real 1354 00:24:29,519 --> 00:24:30,519 pero luego nosotros 1355 00:24:30,519 --> 00:24:31,519 por código 1356 00:24:31,519 --> 00:24:32,519 podemos seguir moviendo 1357 00:24:32,519 --> 00:24:33,519 con el transform 1358 00:24:33,519 --> 00:24:34,519 y podemos seguir 1359 00:24:34,519 --> 00:24:36,519 que se van acumulando 1360 00:24:36,519 --> 00:24:37,519 las opciones 1361 00:24:37,519 --> 00:24:38,519 pero el material físico 1362 00:24:38,519 --> 00:24:39,519 da por defecto 1363 00:24:39,519 --> 00:24:40,519 ya por 1364 00:24:40,519 --> 00:24:41,519 según lo asignamos 1365 00:24:41,519 --> 00:24:42,519 pues tiene un tipo 1366 00:24:42,519 --> 00:24:43,519 de comportamiento 1367 00:24:44,519 --> 00:24:45,519 sí 1368 00:24:47,519 --> 00:24:48,519 qué tal 1369 00:24:49,519 --> 00:24:50,519 vale 1370 00:24:51,519 --> 00:24:52,519 más cosas 1371 00:24:52,519 --> 00:24:53,519 dicho esto 1372 00:24:53,519 --> 00:24:54,519 sigo 1373 00:24:54,519 --> 00:24:55,519 vale 1374 00:24:55,519 --> 00:24:56,519 más o menos lo entendéis 1375 00:24:56,519 --> 00:24:57,519 es que trasteéis 1376 00:24:57,519 --> 00:24:58,519 esto se prueba 1377 00:24:58,519 --> 00:24:59,519 poniendo una superficie 1378 00:24:59,519 --> 00:25:00,519 o lo podéis hacer 1379 00:25:00,519 --> 00:25:01,519 en este nivel 1380 00:25:01,519 --> 00:25:02,519 y ir aplicar 1381 00:25:02,519 --> 00:25:03,519 a los colliders 1382 00:25:03,519 --> 00:25:04,519 que tengáis 1383 00:25:04,519 --> 00:25:05,519 en cada uno de los elementos 1384 00:25:05,519 --> 00:25:06,519 un material físico 1385 00:25:06,519 --> 00:25:07,519 e ir cambiando 1386 00:25:07,519 --> 00:25:08,519 las opciones 1387 00:25:08,519 --> 00:25:09,519 de material físico 1388 00:25:09,519 --> 00:25:10,519 y vais a ir viendo 1389 00:25:10,519 --> 00:25:11,519 que la reacción 1390 00:25:11,519 --> 00:25:12,519 como hemos hecho antes 1391 00:25:12,519 --> 00:25:13,519 que cuando se ha puesto 1392 00:25:13,519 --> 00:25:14,519 a votar sin yo 1393 00:25:14,519 --> 00:25:15,519 hacer nada más 1394 00:25:15,519 --> 00:25:16,519 ya varía mucho 1395 00:25:16,519 --> 00:25:17,519 si alguien ha pedido 1396 00:25:17,519 --> 00:25:18,519 la palabra creo 1397 00:25:18,519 --> 00:25:19,519 si yo mira 1398 00:25:19,519 --> 00:25:20,519 una pregunta también 1399 00:25:20,519 --> 00:25:21,519 mira 1400 00:25:21,519 --> 00:25:22,519 por ejemplo 1401 00:25:22,519 --> 00:25:23,519 en el caso de que 1402 00:25:23,519 --> 00:25:24,519 me oyes no 1403 00:25:24,519 --> 00:25:25,519 sí sí sí 1404 00:25:25,519 --> 00:25:26,519 mira por ejemplo 1405 00:25:26,519 --> 00:25:27,519 que no te sale un terreno 1406 00:25:27,519 --> 00:25:28,519 collider 1407 00:25:28,519 --> 00:25:29,519 y un terreno 1408 00:25:29,519 --> 00:25:30,519 por ejemplo 1409 00:25:30,519 --> 00:25:31,519 dentro 1410 00:25:31,519 --> 00:25:32,519 como si fueran 1411 00:25:32,519 --> 00:25:33,519 hijos del primero 1412 00:25:33,519 --> 00:25:34,519 sí 1413 00:25:34,519 --> 00:25:35,519 entonces en ese caso 1414 00:25:35,519 --> 00:25:36,519 le asignarle 1415 00:25:36,519 --> 00:25:37,519 le asignan 1416 00:25:37,519 --> 00:25:38,519 los materiales 1417 00:25:38,519 --> 00:25:39,519 o los colliders 1418 00:25:39,519 --> 00:25:40,519 o los real body 1419 00:25:40,519 --> 00:25:41,519 al padre 1420 00:25:41,519 --> 00:25:42,519 pero no a los hijos 1421 00:25:42,519 --> 00:25:43,519 vale 1422 00:25:43,519 --> 00:25:44,519 esto está hecho 1423 00:25:44,519 --> 00:25:45,519 vale 1424 00:25:45,519 --> 00:25:46,519 para reutilizar 1425 00:25:46,519 --> 00:25:47,519 parte del trabajo 1426 00:25:47,519 --> 00:25:48,519 de este nivel 1427 00:25:48,519 --> 00:25:49,519 al siguiente nivel 1428 00:25:49,519 --> 00:25:50,519 pero 1429 00:25:50,519 --> 00:25:51,519 realmente 1430 00:25:51,519 --> 00:25:52,519 del nivel 1 1431 00:25:52,519 --> 00:25:53,519 al nivel 2 1432 00:25:53,519 --> 00:25:54,519 cómo se puede configurar 1433 00:25:54,519 --> 00:25:55,519 la plataforma 1434 00:25:55,519 --> 00:25:56,519 es muy diferente 1435 00:25:56,519 --> 00:25:57,519 vale 1436 00:25:57,519 --> 00:25:58,519 yo ahora mismo 1437 00:25:58,519 --> 00:25:59,519 para que te hagas una idea 1438 00:25:59,519 --> 00:26:00,519 si quito 1439 00:26:00,519 --> 00:26:01,519 lo voy a desactivar 1440 00:26:01,519 --> 00:26:02,519 si quito 1441 00:26:02,519 --> 00:26:03,519 espero no equivocarme 1442 00:26:03,519 --> 00:26:04,519 yo creo que no 1443 00:26:04,519 --> 00:26:05,519 si quito este terreno padre 1444 00:26:05,519 --> 00:26:06,519 para que no te distraigan 1445 00:26:06,519 --> 00:26:07,519 este caso 1446 00:26:07,519 --> 00:26:08,519 luego os explico 1447 00:26:08,519 --> 00:26:09,519 en el nivel 2 1448 00:26:09,519 --> 00:26:10,519 porque estaba uno hijo de otro 1449 00:26:10,519 --> 00:26:11,519 vale 1450 00:26:11,519 --> 00:26:12,519 va a ser lo mismo 1451 00:26:12,519 --> 00:26:13,519 es decir 1452 00:26:13,519 --> 00:26:14,519 ahora mismo funciona igual 1453 00:26:14,519 --> 00:26:15,519 vale 1454 00:26:15,519 --> 00:26:16,519 entonces ahora mismo 1455 00:26:16,519 --> 00:26:17,519 no te centres 1456 00:26:17,519 --> 00:26:18,519 en este 1457 00:26:18,519 --> 00:26:19,519 en este que tengo aquí 1458 00:26:19,519 --> 00:26:20,519 céntrate en este 1459 00:26:20,519 --> 00:26:21,519 vale 1460 00:26:21,519 --> 00:26:22,519 aquí lo que tengo 1461 00:26:22,519 --> 00:26:23,519 vale 1462 00:26:23,519 --> 00:26:24,519 y esto es igual 1463 00:26:24,519 --> 00:26:25,519 en el nivel 1 1464 00:26:25,519 --> 00:26:26,519 2 y 3 1465 00:26:26,519 --> 00:26:27,519 lo que 1466 00:26:27,519 --> 00:26:28,519 ponía en el enunciado 1467 00:26:28,519 --> 00:26:29,519 y la forma de hacerlo 1468 00:26:29,519 --> 00:26:30,519 es 1469 00:26:30,519 --> 00:26:31,519 que se tiene que usar 1470 00:26:31,519 --> 00:26:32,519 en el terreno 1471 00:26:32,519 --> 00:26:33,519 un mes collider 1472 00:26:33,519 --> 00:26:34,519 aparte de porque 1473 00:26:34,519 --> 00:26:35,519 es el que por defecto 1474 00:26:35,519 --> 00:26:36,519 traen las geometrías 1475 00:26:36,519 --> 00:26:37,519 que importamos 1476 00:26:37,519 --> 00:26:38,519 como estos fbx 1477 00:26:38,519 --> 00:26:39,519 porque tiene 1478 00:26:39,519 --> 00:26:40,519 alguna particularidad 1479 00:26:40,519 --> 00:26:41,519 que es 1480 00:26:41,519 --> 00:26:42,519 que tú si metes 1481 00:26:42,519 --> 00:26:43,519 un box collider 1482 00:26:43,519 --> 00:26:44,519 un capsule collider 1483 00:26:44,519 --> 00:26:45,519 un sphere collider 1484 00:26:45,519 --> 00:26:46,519 los que son como 1485 00:26:46,519 --> 00:26:47,519 de formas nativas 1486 00:26:47,519 --> 00:26:48,519 el problema 1487 00:26:48,519 --> 00:26:49,519 es que no podemos conseguir 1488 00:26:49,519 --> 00:26:50,519 a ver amplio aquí 1489 00:26:50,519 --> 00:26:51,519 que este agujero 1490 00:26:51,519 --> 00:26:52,519 se vea 1491 00:26:52,519 --> 00:26:53,519 interpretado 1492 00:26:53,519 --> 00:26:54,519 como collider 1493 00:26:54,519 --> 00:26:55,519 es decir 1494 00:26:55,519 --> 00:26:56,519 yo puedo 1495 00:26:56,519 --> 00:26:57,519 a esta plataforma 1496 00:26:57,519 --> 00:26:58,519 desactivo el mes collider 1497 00:26:58,519 --> 00:26:59,519 y digo 1498 00:26:59,519 --> 00:27:00,519 lo que voy a hacer 1499 00:27:00,519 --> 00:27:01,519 en vez de un mes collider 1500 00:27:01,519 --> 00:27:02,519 es 1501 00:27:02,519 --> 00:27:03,519 ponerle un 1502 00:27:03,519 --> 00:27:04,519 box collider 1503 00:27:04,519 --> 00:27:05,519 vale 1504 00:27:05,519 --> 00:27:06,519 porque como es una forma 1505 00:27:06,519 --> 00:27:07,519 de prisma 1506 00:27:07,519 --> 00:27:08,519 de caja 1507 00:27:08,519 --> 00:27:09,519 vale 1508 00:27:09,519 --> 00:27:10,519 y yo la tengo ahí 1509 00:27:10,519 --> 00:27:11,519 perfecto 1510 00:27:11,519 --> 00:27:12,519 pero fijaos que 1511 00:27:12,519 --> 00:27:13,519 ahora mismo 1512 00:27:13,519 --> 00:27:14,519 y esto 1513 00:27:14,519 --> 00:27:15,519 también un truco 1514 00:27:15,519 --> 00:27:16,519 a veces no se ve muy bien 1515 00:27:16,519 --> 00:27:17,519 los límites de los colliders 1516 00:27:17,519 --> 00:27:18,519 que son estas líneas verdes 1517 00:27:18,519 --> 00:27:19,519 para 1518 00:27:19,519 --> 00:27:20,519 mientras trabajamos 1519 00:27:20,519 --> 00:27:21,519 si ponemos el modo 1520 00:27:21,519 --> 00:27:22,519 wireframe 1521 00:27:22,519 --> 00:27:23,519 vale 1522 00:27:23,519 --> 00:27:24,519 son las de 1523 00:27:24,519 --> 00:27:25,519 la geometría 1524 00:27:25,519 --> 00:27:26,519 las de la malla 1525 00:27:26,519 --> 00:27:27,519 y las verdes son 1526 00:27:27,519 --> 00:27:28,519 las de 1527 00:27:28,519 --> 00:27:29,519 el collider en sí 1528 00:27:29,519 --> 00:27:30,519 vale 1529 00:27:30,519 --> 00:27:31,519 en este caso 1530 00:27:31,519 --> 00:27:32,519 el que está activo 1531 00:27:32,519 --> 00:27:33,519 que es el box collider 1532 00:27:33,519 --> 00:27:34,519 yo vale 1533 00:27:34,519 --> 00:27:35,519 puedo decir vale 1534 00:27:35,519 --> 00:27:36,519 tengo aquí un collider 1535 00:27:36,519 --> 00:27:37,519 y efectivamente 1536 00:27:37,519 --> 00:27:38,519 me voy aquí al juego 1537 00:27:38,519 --> 00:27:40,519 fijaos que la bola 1538 00:27:40,519 --> 00:27:41,519 no se cae 1539 00:27:41,519 --> 00:27:42,519 se va 1540 00:27:42,519 --> 00:27:43,519 moviendo por ahí 1541 00:27:43,519 --> 00:27:44,519 y cuando llego al agujero 1542 00:27:44,519 --> 00:27:45,519 pues 1543 00:27:45,519 --> 00:27:46,519 muy bien 1544 00:27:46,519 --> 00:27:47,519 pero veis que se queda flotando 1545 00:27:47,519 --> 00:27:49,519 porque nosotros le estamos diciendo 1546 00:27:49,519 --> 00:27:50,519 que el límite 1547 00:27:50,519 --> 00:27:51,519 sea 1548 00:27:51,519 --> 00:27:52,519 es decir 1549 00:27:52,519 --> 00:27:53,519 no estamos distinguiendo 1550 00:27:53,519 --> 00:27:54,519 en ningún momento 1551 00:27:54,519 --> 00:27:55,519 que aquí haya 1552 00:27:55,519 --> 00:27:56,519 nada 1553 00:27:56,519 --> 00:27:57,519 que diga que 1554 00:27:57,519 --> 00:27:58,519 se puede introducir por aquí 1555 00:27:58,519 --> 00:27:59,519 a nivel físico 1556 00:27:59,519 --> 00:28:00,519 ahora mismo es una caja 1557 00:28:00,519 --> 00:28:01,519 vale 1558 00:28:01,519 --> 00:28:02,519 entonces 1559 00:28:02,519 --> 00:28:03,519 un poco para forzaros también 1560 00:28:03,519 --> 00:28:04,519 a que 1561 00:28:04,519 --> 00:28:05,519 veáis cómo funciona 1562 00:28:05,519 --> 00:28:06,519 el mes collider 1563 00:28:06,519 --> 00:28:07,519 vale 1564 00:28:07,519 --> 00:28:08,519 o en ejemplos en el que 1565 00:28:08,519 --> 00:28:09,519 voy a borrar ya este 1566 00:28:09,519 --> 00:28:10,519 este box collider de ejemplo 1567 00:28:10,519 --> 00:28:11,519 vale 1568 00:28:11,519 --> 00:28:12,519 que es 1569 00:28:12,519 --> 00:28:13,519 que cuando metemos la geometría 1570 00:28:13,519 --> 00:28:14,519 nos crea directamente 1571 00:28:14,519 --> 00:28:15,519 el mes collider 1572 00:28:15,519 --> 00:28:16,519 y el mes collider 1573 00:28:16,519 --> 00:28:17,519 por defecto 1574 00:28:17,519 --> 00:28:18,519 lo que intenta es 1575 00:28:18,519 --> 00:28:20,519 adaptarse a una geometría 1576 00:28:20,519 --> 00:28:21,519 vale 1577 00:28:21,519 --> 00:28:22,519 entonces yo ahora mismo 1578 00:28:22,519 --> 00:28:24,519 este terreno 1 collider 1579 00:28:24,519 --> 00:28:25,519 que lo puedo quitar 1580 00:28:25,519 --> 00:28:26,519 vale 1581 00:28:26,519 --> 00:28:27,519 para que veáis el ejemplo 1582 00:28:27,519 --> 00:28:28,519 si yo meto el mes collider 1583 00:28:28,519 --> 00:28:29,519 y no hay 1584 00:28:29,519 --> 00:28:31,519 ningún tipo de 1585 00:28:31,519 --> 00:28:32,519 indicación 1586 00:28:32,519 --> 00:28:33,519 de cuál es 1587 00:28:33,519 --> 00:28:34,519 esa malla 1588 00:28:34,519 --> 00:28:35,519 que tenemos aquí 1589 00:28:35,519 --> 00:28:36,519 vale 1590 00:28:36,519 --> 00:28:37,519 pues 1591 00:28:37,519 --> 00:28:38,519 no estamos 1592 00:28:38,519 --> 00:28:39,519 el mes collider 1593 00:28:39,519 --> 00:28:40,519 aunque esté aplicado 1594 00:28:40,519 --> 00:28:41,519 no está aplicando nada 1595 00:28:41,519 --> 00:28:42,519 vale 1596 00:28:42,519 --> 00:28:43,519 no tiene la malla 1597 00:28:43,519 --> 00:28:44,519 en la que funcionar 1598 00:28:44,519 --> 00:28:45,519 entonces 1599 00:28:45,519 --> 00:28:46,519 en el tema 1600 00:28:46,519 --> 00:28:47,519 también se explica 1601 00:28:47,519 --> 00:28:48,519 que 1602 00:28:48,519 --> 00:28:49,519 los propios 1603 00:28:49,519 --> 00:28:50,519 los propios fbx 1604 00:28:50,519 --> 00:28:51,519 se pueden 1605 00:28:51,519 --> 00:28:52,519 descomponer 1606 00:28:52,519 --> 00:28:53,519 en sus partes 1607 00:28:53,519 --> 00:28:54,519 es decir 1608 00:28:54,519 --> 00:28:55,519 en la malla 1609 00:28:55,519 --> 00:28:56,519 en el collider 1610 00:28:56,519 --> 00:28:57,519 y en el 1611 00:28:57,519 --> 00:28:58,519 y en el material que tiene 1612 00:28:58,519 --> 00:28:59,519 al material visual 1613 00:28:59,519 --> 00:29:00,519 me refiero 1614 00:29:00,519 --> 00:29:01,519 vale 1615 00:29:01,519 --> 00:29:02,519 yo cuando creo ese terreno 1616 00:29:02,519 --> 00:29:03,519 le puedo decir 1617 00:29:03,519 --> 00:29:04,519 vale 1618 00:29:04,519 --> 00:29:05,519 he metido esta geometría 1619 00:29:05,519 --> 00:29:06,519 y quiero que el collider 1620 00:29:06,519 --> 00:29:07,519 que por defecto 1621 00:29:07,519 --> 00:29:08,519 debería venir asignado 1622 00:29:08,519 --> 00:29:09,519 es 1623 00:29:09,519 --> 00:29:10,519 el del propio 1624 00:29:10,519 --> 00:29:11,519 la propia geometría 1625 00:29:11,519 --> 00:29:12,519 lo que pasa a veces 1626 00:29:12,519 --> 00:29:13,519 bueno 1627 00:29:13,519 --> 00:29:14,519 y estoy aplicando 1628 00:29:14,519 --> 00:29:15,519 la del collider 1629 00:29:15,519 --> 00:29:16,519 la preparada 1630 00:29:16,519 --> 00:29:17,519 perdona 1631 00:29:17,519 --> 00:29:18,519 vendría así 1632 00:29:18,519 --> 00:29:19,519 aplicada 1633 00:29:19,519 --> 00:29:20,519 vale 1634 00:29:20,519 --> 00:29:21,519 y la otra vez 1635 00:29:21,519 --> 00:29:22,519 lo que hice 1636 00:29:22,519 --> 00:29:23,519 es que 1637 00:29:23,519 --> 00:29:24,519 al final 1638 00:29:24,519 --> 00:29:25,519 de la tutoría 1639 00:29:25,519 --> 00:29:26,519 del otro día 1640 00:29:26,519 --> 00:29:27,519 lo que hice 1641 00:29:27,519 --> 00:29:28,519 fue tocar 1642 00:29:28,519 --> 00:29:29,519 el factor de escala 1643 00:29:29,519 --> 00:29:30,519 del 1644 00:29:30,519 --> 00:29:31,519 del 1645 00:29:31,519 --> 00:29:32,519 fbx 1646 00:29:32,519 --> 00:29:33,519 vale 1647 00:29:33,519 --> 00:29:34,519 que os hablé 1648 00:29:34,519 --> 00:29:35,519 de que bueno 1649 00:29:35,519 --> 00:29:36,519 que según 1650 00:29:36,519 --> 00:29:37,519 del programa 1651 00:29:37,519 --> 00:29:38,519 que vengamos 1652 00:29:38,519 --> 00:29:39,519 a veces hay que cambiar 1653 00:29:39,519 --> 00:29:40,519 las unidades de medida 1654 00:29:40,519 --> 00:29:41,519 entonces 1655 00:29:41,519 --> 00:29:42,519 como veis aquí 1656 00:29:42,519 --> 00:29:43,519 a veces puede haber 1657 00:29:43,519 --> 00:29:44,519 problemas de interpretación 1658 00:29:44,519 --> 00:29:45,519 de la malla 1659 00:29:45,519 --> 00:29:46,519 vale 1660 00:29:46,519 --> 00:29:47,519 por eso 1661 00:29:47,519 --> 00:29:48,519 se os 1662 00:29:48,519 --> 00:29:49,519 asignaba 1663 00:29:49,519 --> 00:29:50,519 se os 1664 00:29:50,519 --> 00:29:51,519 asignaba 1665 00:29:51,519 --> 00:29:52,519 a ver 1666 00:29:52,519 --> 00:29:53,519 un segundín 1667 00:29:53,519 --> 00:29:54,519 tenemos aquí 1668 00:29:54,519 --> 00:29:55,519 la malla 1669 00:29:55,519 --> 00:29:56,519 perdona 1670 00:29:56,519 --> 00:29:57,519 que lo que estoy haciendo 1671 00:29:57,519 --> 00:29:58,519 es aplicar 1672 00:29:58,519 --> 00:29:59,519 la otra que tengo aquí 1673 00:29:59,519 --> 00:30:00,519 si yo aplico 1674 00:30:00,519 --> 00:30:01,519 esta malla aquí 1675 00:30:01,519 --> 00:30:02,519 esta no 1676 00:30:02,519 --> 00:30:03,519 está cogiendo 1677 00:30:03,519 --> 00:30:04,519 el collider 1678 00:30:04,519 --> 00:30:05,519 todo 1679 00:30:05,519 --> 00:30:06,519 vale 1680 00:30:06,519 --> 00:30:07,519 que pueda haber momentos 1681 00:30:07,519 --> 00:30:08,519 en el que no funcione 1682 00:30:08,519 --> 00:30:09,519 esa geometría 1683 00:30:09,519 --> 00:30:10,519 por eso a veces 1684 00:30:10,519 --> 00:30:11,519 lo que se hace 1685 00:30:11,519 --> 00:30:12,519 es sacar 1686 00:30:12,519 --> 00:30:13,519 una versión 1687 00:30:13,519 --> 00:30:14,519 del programa 3d 1688 00:30:14,519 --> 00:30:15,519 que es una versión reducida 1689 00:30:15,519 --> 00:30:16,519 de esa malla 1690 00:30:16,519 --> 00:30:17,519 vale 1691 00:30:17,519 --> 00:30:18,519 porque los mes collider 1692 00:30:18,519 --> 00:30:19,519 tienen un límite de geometría 1693 00:30:19,519 --> 00:30:20,519 como si os fijáis aquí 1694 00:30:20,519 --> 00:30:21,519 por ejemplo 1695 00:30:21,519 --> 00:30:22,519 tenemos 1696 00:30:22,519 --> 00:30:23,519 una 1697 00:30:23,519 --> 00:30:24,519 una 1698 00:30:24,519 --> 00:30:25,519 una 1699 00:30:25,519 --> 00:30:26,519 malla 1700 00:30:26,519 --> 00:30:27,519 que se ajusta 1701 00:30:27,519 --> 00:30:28,519 al tamaño 1702 00:30:28,519 --> 00:30:29,519 de la 1703 00:30:29,519 --> 00:30:30,519 de la geometría 1704 00:30:30,519 --> 00:30:31,519 pero tiene mucho menos 1705 00:30:31,519 --> 00:30:32,519 mucho menos polígonos 1706 00:30:32,519 --> 00:30:33,519 vale 1707 00:30:33,519 --> 00:30:34,519 y aparte 1708 00:30:34,519 --> 00:30:35,519 está proporcionando 1709 00:30:35,519 --> 00:30:36,519 esta 1710 00:30:36,519 --> 00:30:37,519 forma de agujero 1711 00:30:37,519 --> 00:30:38,519 que tiene 1712 00:30:38,519 --> 00:30:39,519 vale 1713 00:30:39,519 --> 00:30:40,519 por eso 1714 00:30:40,519 --> 00:30:41,519 cuando le damos al play 1715 00:30:41,519 --> 00:30:42,519 y me meto 1716 00:30:42,519 --> 00:30:43,519 vale 1717 00:30:43,519 --> 00:30:44,519 ahora sí que va a interpretar 1718 00:30:44,519 --> 00:30:45,519 que yo cuando me meta ahí 1719 00:30:45,519 --> 00:30:46,519 pues hay un hueco 1720 00:30:46,519 --> 00:30:47,519 entonces 1721 00:30:47,519 --> 00:30:48,519 yo me meteré 1722 00:30:48,519 --> 00:30:49,519 más 1723 00:30:49,519 --> 00:30:50,519 no me meto todavía 1724 00:30:50,519 --> 00:30:51,519 aquí tengo preparado 1725 00:30:51,519 --> 00:30:52,519 un collider 1726 00:30:52,519 --> 00:30:53,519 eh 1727 00:30:53,519 --> 00:30:54,519 definido como trigger 1728 00:30:54,519 --> 00:30:55,519 que me hará 1729 00:30:55,519 --> 00:30:56,519 que cambie de nivel 1730 00:30:56,519 --> 00:30:57,519 vale 1731 00:30:57,519 --> 00:30:58,519 hasta que no me he metido 1732 00:30:58,519 --> 00:30:59,519 no ha sido posible 1733 00:30:59,519 --> 00:31:00,519 pero nada 1734 00:31:00,519 --> 00:31:01,519 que yo me meta 1735 00:31:01,519 --> 00:31:02,519 en este agujero 1736 00:31:02,519 --> 00:31:03,519 en el que yo tengo aquí 1737 00:31:03,519 --> 00:31:04,519 ved otro game object 1738 00:31:04,519 --> 00:31:05,519 separado 1739 00:31:05,519 --> 00:31:06,519 vale 1740 00:31:06,519 --> 00:31:07,519 que está ahí 1741 00:31:07,519 --> 00:31:08,519 que es ese de meta 1742 00:31:08,519 --> 00:31:09,519 tengo aquí 1743 00:31:09,519 --> 00:31:10,519 este 1744 00:31:10,519 --> 00:31:11,519 esta cajita 1745 00:31:11,519 --> 00:31:12,519 que es lo que tú habías hecho 1746 00:31:12,519 --> 00:31:13,519 javier 1747 00:31:13,519 --> 00:31:14,519 esta cajita 1748 00:31:14,519 --> 00:31:15,519 esperando 1749 00:31:15,519 --> 00:31:16,519 a desencadenar 1750 00:31:16,519 --> 00:31:17,519 cosas 1751 00:31:17,519 --> 00:31:18,519 para que coja 1752 00:31:18,519 --> 00:31:19,519 la forma 1753 00:31:19,519 --> 00:31:20,519 de 1754 00:31:20,519 --> 00:31:21,519 el 1755 00:31:21,519 --> 00:31:22,519 elemento 1756 00:31:22,519 --> 00:31:23,519 o si no 1757 00:31:23,519 --> 00:31:24,519 pasársela 1758 00:31:24,519 --> 00:31:25,519 por este parámetro 1759 00:31:25,519 --> 00:31:26,519 mes 1760 00:31:26,519 --> 00:31:27,519 al 1761 00:31:27,519 --> 00:31:28,519 a la misma geometría 1762 00:31:28,519 --> 00:31:29,519 es decir 1763 00:31:29,519 --> 00:31:30,519 se está metiendo 1764 00:31:30,519 --> 00:31:31,519 la geometría 1765 00:31:31,519 --> 00:31:32,519 de un objeto simplificado 1766 00:31:32,519 --> 00:31:33,519 en otro 1767 00:31:33,519 --> 00:31:34,519 que es el que venía 1768 00:31:34,519 --> 00:31:35,519 por defecto 1769 00:31:35,519 --> 00:31:36,519 vale 1770 00:31:36,519 --> 00:31:37,519 es cierto que 1771 00:31:37,519 --> 00:31:38,519 realmente 1772 00:31:38,519 --> 00:31:39,519 esto es una operación 1773 00:31:39,519 --> 00:31:40,519 muy conveniente 1774 00:31:40,519 --> 00:31:41,519 para 1775 00:31:41,519 --> 00:31:42,519 para asignar 1776 00:31:42,519 --> 00:31:43,519 el collider 1777 00:31:43,519 --> 00:31:44,519 pero por defecto 1778 00:31:44,519 --> 00:31:45,519 cuando metemos el fbx 1779 00:31:45,519 --> 00:31:46,519 aquí no lo está cogiendo bien 1780 00:31:46,519 --> 00:31:47,519 por eso 1781 00:31:47,519 --> 00:31:48,519 que hemos cambiado 1782 00:31:48,519 --> 00:31:49,519 el tamaño 1783 00:31:49,519 --> 00:31:50,519 de la proporción 1784 00:31:50,519 --> 00:31:51,519 del 1785 00:31:51,519 --> 00:31:52,519 de 1786 00:31:52,519 --> 00:31:53,519 la malla 1787 00:31:53,519 --> 00:31:54,519 pero por defecto 1788 00:31:54,519 --> 00:31:55,519 debería venir ya 1789 00:31:55,519 --> 00:31:56,519 con una 1790 00:31:56,519 --> 00:31:57,519 geometría vale 1791 00:31:57,519 --> 00:31:58,519 aquí aunque no se vea 1792 00:31:58,519 --> 00:31:59,519 sí que es verdad 1793 00:31:59,519 --> 00:32:00,519 que tiene 1794 00:32:00,519 --> 00:32:01,519 la propia forma 1795 00:32:01,519 --> 00:32:02,519 del 1796 00:32:02,519 --> 00:32:03,519 terreno 1797 00:32:03,519 --> 00:32:04,519 vale y yo 1798 00:32:04,519 --> 00:32:05,519 cuando llegue 1799 00:32:05,519 --> 00:32:06,519 se va a meter 1800 00:32:06,519 --> 00:32:07,519 pero 1801 00:32:07,519 --> 00:32:08,519 tener en cuenta 1802 00:32:08,519 --> 00:32:09,519 que no se ve 1803 00:32:09,519 --> 00:32:10,519 porque se está adaptando 1804 00:32:10,519 --> 00:32:11,519 a todas 1805 00:32:11,519 --> 00:32:12,519 las superficies 1806 00:32:12,519 --> 00:32:13,519 de 1807 00:32:13,519 --> 00:32:14,519 al poligonaje 1808 00:32:14,519 --> 00:32:15,519 de la malla 1809 00:32:15,519 --> 00:32:16,519 a veces para que funcione bien 1810 00:32:16,519 --> 00:32:17,519 es necesario 1811 00:32:17,519 --> 00:32:18,519 una versión simplificada 1812 00:32:18,519 --> 00:32:19,519 que por eso 1813 00:32:19,519 --> 00:32:20,519 estaba ese ejercicio 1814 00:32:20,519 --> 00:32:21,519 de asigna 1815 00:32:21,519 --> 00:32:22,519 al mes collider 1816 00:32:22,519 --> 00:32:23,519 un terreno 1817 00:32:23,519 --> 00:32:24,519 que 1818 00:32:24,519 --> 00:32:25,519 se corresponda 1819 00:32:25,519 --> 00:32:26,519 con la versión simplificada 1820 00:32:26,519 --> 00:32:27,519 vale en cualquiera 1821 00:32:27,519 --> 00:32:28,519 de los casos 1822 00:32:28,519 --> 00:32:29,519 cuando tenemos 1823 00:32:29,519 --> 00:32:30,519 este mes collider 1824 00:32:30,519 --> 00:32:31,519 funcionando 1825 00:32:31,519 --> 00:32:32,519 hay una opción aquí 1826 00:32:32,519 --> 00:32:33,519 que se puede marcar 1827 00:32:33,519 --> 00:32:34,519 y desmarcar 1828 00:32:34,519 --> 00:32:35,519 que lo que sirve 1829 00:32:35,519 --> 00:32:36,519 es primero 1830 00:32:36,519 --> 00:32:37,519 para poder 1831 00:32:37,519 --> 00:32:38,519 convertir 1832 00:32:38,519 --> 00:32:39,519 esta caja 1833 00:32:39,519 --> 00:32:40,519 en un trigger 1834 00:32:40,519 --> 00:32:41,519 ahora vemos lo que es un trigger 1835 00:32:41,519 --> 00:32:42,519 aunque viene del tema 1836 00:32:42,519 --> 00:32:43,519 y también 1837 00:32:43,519 --> 00:32:44,519 porque 1838 00:32:44,519 --> 00:32:45,519 lo que hace es simplificar 1839 00:32:45,519 --> 00:32:46,519 la geometría 1840 00:32:46,519 --> 00:32:47,519 imaginaos 1841 00:32:47,519 --> 00:32:48,519 que no nos interesa 1842 00:32:48,519 --> 00:32:49,519 el detalle 1843 00:32:49,519 --> 00:32:50,519 ten en cuenta 1844 00:32:50,519 --> 00:32:51,519 que todo el polígono 1845 00:32:51,519 --> 00:32:52,519 que vaya metiendo 1846 00:32:52,519 --> 00:32:53,519 en la geometría 1847 00:32:53,519 --> 00:32:54,519 o en los colliders 1848 00:32:54,519 --> 00:32:55,519 son recursos 1849 00:32:55,519 --> 00:32:56,519 que va a ir gastando 1850 00:32:56,519 --> 00:32:57,519 para ir calculando 1851 00:32:57,519 --> 00:32:58,519 cómo funciona el juego 1852 00:32:58,519 --> 00:32:59,519 entonces 1853 00:32:59,519 --> 00:33:00,519 en ocasiones 1854 00:33:00,519 --> 00:33:01,519 nos interesa 1855 00:33:01,519 --> 00:33:02,519 que se simplifiquen 1856 00:33:02,519 --> 00:33:03,519 las mallas 1857 00:33:03,519 --> 00:33:04,519 si andamos al convex 1858 00:33:04,519 --> 00:33:05,519 el problema que hay 1859 00:33:05,519 --> 00:33:06,519 es que nuevamente 1860 00:33:06,519 --> 00:33:07,519 hemos convertido esto 1861 00:33:07,519 --> 00:33:08,519 en una caja 1862 00:33:08,519 --> 00:33:09,519 y nos hemos cargado 1863 00:33:09,519 --> 00:33:10,519 el agujero 1864 00:33:10,519 --> 00:33:11,519 aunque la malla 1865 00:33:11,519 --> 00:33:12,519 que hemos metido asociada 1866 00:33:12,519 --> 00:33:13,519 sí que tiene el agujero 1867 00:33:13,519 --> 00:33:14,519 vale 1868 00:33:14,519 --> 00:33:15,519 por efecto 1869 00:33:15,519 --> 00:33:16,519 viene así 1870 00:33:16,519 --> 00:33:17,519 y aquí 1871 00:33:17,519 --> 00:33:18,519 de momento 1872 00:33:18,519 --> 00:33:19,519 nos interesa 1873 00:33:19,519 --> 00:33:20,519 que sea convex 1874 00:33:20,519 --> 00:33:21,519 para que tenga 1875 00:33:21,519 --> 00:33:22,519 ese agujero 1876 00:33:22,519 --> 00:33:23,519 vale 1877 00:33:23,519 --> 00:33:24,519 entonces 1878 00:33:24,519 --> 00:33:25,519 esto es 1879 00:33:25,519 --> 00:33:26,519 ir definiendo 1880 00:33:26,519 --> 00:33:27,519 cómo funciona el collider 1881 00:33:27,519 --> 00:33:28,519 y qué límites tiene 1882 00:33:28,519 --> 00:33:29,519 en el caso de 1883 00:33:29,519 --> 00:33:30,519 una forma 1884 00:33:30,519 --> 00:33:31,519 que no es primitiva 1885 00:33:31,519 --> 00:33:32,519 que no es un cubo 1886 00:33:32,519 --> 00:33:33,519 que no es una esfera 1887 00:33:33,519 --> 00:33:34,519 suelen tener 1888 00:33:34,519 --> 00:33:35,519 pues 1889 00:33:35,519 --> 00:33:36,519 formas 1890 00:33:36,519 --> 00:33:37,519 más complejas 1891 00:33:37,519 --> 00:33:38,519 que las de 1892 00:33:38,519 --> 00:33:39,519 las que nos proporciona 1893 00:33:39,519 --> 00:33:40,519 un collider 1894 00:33:40,519 --> 00:33:41,519 de tipo box 1895 00:33:41,519 --> 00:33:42,519 o de los que vienen 1896 00:33:42,519 --> 00:33:43,519 asociados a primitivas 1897 00:33:43,519 --> 00:33:44,519 para eso 1898 00:33:44,519 --> 00:33:45,519 intenta adaptar 1899 00:33:45,519 --> 00:33:46,519 a la forma 1900 00:33:46,519 --> 00:33:47,519 de la malla 1901 00:33:47,519 --> 00:33:48,519 pues por ejemplo 1902 00:33:48,519 --> 00:33:49,519 para conseguir 1903 00:33:49,519 --> 00:33:50,519 este agujero 1904 00:33:50,519 --> 00:33:51,519 vale 1905 00:33:51,519 --> 00:33:52,519 porque si no 1906 00:33:52,519 --> 00:33:53,519 no se podría conseguir 1907 00:33:53,519 --> 00:33:54,519 de otra forma 1908 00:33:54,519 --> 00:33:55,519 entonces 1909 00:33:55,519 --> 00:33:56,519 básicamente 1910 00:33:56,519 --> 00:33:57,519 ahora 1911 00:33:57,519 --> 00:33:58,519 lo que tenemos 1912 00:33:58,519 --> 00:33:59,519 en este nivel 1913 00:33:59,519 --> 00:34:00,519 no sé 1914 00:34:00,519 --> 00:34:01,519 me vais siguiendo 1915 00:34:01,519 --> 00:34:02,519 hasta aquí 1916 00:34:02,519 --> 00:34:03,519 más o menos 1917 00:34:03,519 --> 00:34:04,519 vale 1918 00:34:04,519 --> 00:34:05,519 ahora vamos a ver 1919 00:34:05,519 --> 00:34:06,519 los inconvenientes 1920 00:34:06,519 --> 00:34:07,519 que van a surgir 1921 00:34:07,519 --> 00:34:08,519 en el 1922 00:34:08,519 --> 00:34:09,519 nivel 2 1923 00:34:09,519 --> 00:34:10,519 relacionado con esto 1924 00:34:10,519 --> 00:34:11,519 pero antes de llegar a eso 1925 00:34:11,519 --> 00:34:12,519 me interesa 1926 00:34:12,519 --> 00:34:13,519 que veamos 1927 00:34:13,519 --> 00:34:14,519 cómo 1928 00:34:14,519 --> 00:34:15,519 este nivel 1929 00:34:15,519 --> 00:34:16,519 y el reinicio 1930 00:34:16,519 --> 00:34:17,519 de nivel 1931 00:34:17,519 --> 00:34:18,519 también 1932 00:34:18,519 --> 00:34:19,519 cuando se cae 1933 00:34:19,519 --> 00:34:20,519 por el precipicio 1934 00:34:20,519 --> 00:34:21,519 hasta aquí más o menos 1935 00:34:21,519 --> 00:34:22,519 me vais siguiendo 1936 00:34:22,519 --> 00:34:23,519 vale 1937 00:34:23,519 --> 00:34:24,519 perdonad que a veces 1938 00:34:24,519 --> 00:34:25,519 es un poco enrevesado 1939 00:34:25,519 --> 00:34:26,519 porque 1940 00:34:26,519 --> 00:34:27,519 hay muchas veces 1941 00:34:27,519 --> 00:34:28,519 que se dice 1942 00:34:28,519 --> 00:34:29,519 collider 1943 00:34:29,519 --> 00:34:30,519 si no me preguntáis 1944 00:34:30,519 --> 00:34:31,519 por favor 1945 00:34:31,519 --> 00:34:32,519 vale 1946 00:34:32,519 --> 00:34:33,519 a ver 1947 00:34:33,519 --> 00:34:34,519 nada 1948 00:34:34,519 --> 00:34:35,519 aquí 1949 00:34:35,519 --> 00:34:36,519 en este nivel 1950 00:34:36,519 --> 00:34:37,519 que es diferente 1951 00:34:37,519 --> 00:34:38,519 al siguiente 1952 00:34:38,519 --> 00:34:39,519 vale 1953 00:34:39,519 --> 00:34:40,519 lo que queremos 1954 00:34:40,519 --> 00:34:41,519 y lo que está 1955 00:34:41,519 --> 00:34:42,519 especificado en la tarea 1956 00:34:42,519 --> 00:34:43,519 es 1957 00:34:43,519 --> 00:34:44,519 que si se cae 1958 00:34:44,519 --> 00:34:45,519 dentro 1959 00:34:45,519 --> 00:34:46,519 pues que 1960 00:34:46,519 --> 00:34:47,519 cambie de nivel 1961 00:34:47,519 --> 00:34:48,519 y si se cae 1962 00:34:48,519 --> 00:34:49,519 de la plataforma 1963 00:34:49,519 --> 00:34:50,519 que se reinicie el nivel 1964 00:34:50,519 --> 00:34:51,519 esto si lo analizamos 1965 00:34:51,519 --> 00:34:52,519 lo que significa es 1966 00:34:52,519 --> 00:34:53,519 que la tabla 1967 00:34:53,519 --> 00:34:54,519 en ningún momento 1968 00:34:54,519 --> 00:34:55,519 hay que moverla 1969 00:34:55,519 --> 00:34:56,519 la tabla es 1970 00:34:56,519 --> 00:34:57,519 un elemento estático 1971 00:34:57,519 --> 00:34:58,519 que 1972 00:34:58,519 --> 00:34:59,519 pues 1973 00:34:59,519 --> 00:35:00,519 va a estar ahí 1974 00:35:00,519 --> 00:35:01,519 que eso sí 1975 00:35:01,519 --> 00:35:02,519 tiene que proporcionar 1976 00:35:02,519 --> 00:35:03,519 una superficie física 1977 00:35:03,519 --> 00:35:04,519 a través de un collider 1978 00:35:04,519 --> 00:35:05,519 vale 1979 00:35:05,519 --> 00:35:06,519 que marque el límite físico 1980 00:35:06,519 --> 00:35:07,519 en el que 1981 00:35:07,519 --> 00:35:08,519 contra el que va a chocar la pelota 1982 00:35:08,519 --> 00:35:09,519 es decir 1983 00:35:09,519 --> 00:35:10,519 como un objeto 1984 00:35:10,519 --> 00:35:11,519 y otro 1985 00:35:11,519 --> 00:35:12,519 tienen que chocar 1986 00:35:12,519 --> 00:35:13,519 el límite físico 1987 00:35:13,519 --> 00:35:14,519 y otro 1988 00:35:14,519 --> 00:35:15,519 tiene que tener 1989 00:35:15,519 --> 00:35:16,519 algún collider 1990 00:35:16,519 --> 00:35:17,519 de un tipo 1991 00:35:17,519 --> 00:35:18,519 vale 1992 00:35:18,519 --> 00:35:19,519 y ojo 1993 00:35:19,519 --> 00:35:20,519 los colliders 1994 00:35:20,519 --> 00:35:21,519 ya se veía en el tema 1995 00:35:21,519 --> 00:35:22,519 tienen siempre la opción 1996 00:35:22,519 --> 00:35:23,519 de East Trigger 1997 00:35:23,519 --> 00:35:24,519 vale 1998 00:35:24,519 --> 00:35:25,519 atención 1999 00:35:25,519 --> 00:35:26,519 cuando cualquier collider 2000 00:35:26,519 --> 00:35:27,519 tiene el East Trigger 2001 00:35:27,519 --> 00:35:28,519 marcado 2002 00:35:28,519 --> 00:35:29,519 vale 2003 00:35:29,519 --> 00:35:30,519 yo cuando dé a play 2004 00:35:30,519 --> 00:35:31,519 vais a ver 2005 00:35:31,519 --> 00:35:32,519 que atraviesa 2006 00:35:32,519 --> 00:35:33,519 vale 2007 00:35:33,519 --> 00:35:34,519 y diréis 2008 00:35:34,519 --> 00:35:35,519 pero si tiene un collider 2009 00:35:35,519 --> 00:35:36,519 ojo 2010 00:35:36,519 --> 00:35:37,519 los triggers 2011 00:35:37,519 --> 00:35:38,519 trigger es la traducción 2012 00:35:38,519 --> 00:35:39,519 de disparador 2013 00:35:39,519 --> 00:35:40,519 vale 2014 00:35:40,519 --> 00:35:41,519 sirven para desencadenar 2015 00:35:41,519 --> 00:35:42,519 ahora vemos 2016 00:35:42,519 --> 00:35:43,519 los métodos 2017 00:35:43,519 --> 00:35:44,519 que pueden hacerlo 2018 00:35:44,519 --> 00:35:45,519 por ejemplo 2019 00:35:45,519 --> 00:35:46,519 en este momento 2020 00:35:46,519 --> 00:35:47,519 de curso 2021 00:35:47,519 --> 00:35:48,519 pero 2022 00:35:48,519 --> 00:35:49,519 si hay un East Trigger 2023 00:35:49,519 --> 00:35:50,519 este 2024 00:35:50,519 --> 00:35:51,519 los colliders 2025 00:35:51,519 --> 00:35:52,519 cuando tienen el East Trigger 2026 00:35:52,519 --> 00:35:53,519 no funcionan ya como 2027 00:35:53,519 --> 00:35:54,519 paredes 2028 00:35:54,519 --> 00:35:55,519 no funcionan ya 2029 00:35:55,519 --> 00:35:56,519 como elementos físicos 2030 00:35:56,519 --> 00:35:57,519 contra los que colisionar 2031 00:35:57,519 --> 00:35:58,519 funcionan como áreas 2032 00:35:58,519 --> 00:35:59,519 para desencadenar 2033 00:35:59,519 --> 00:36:00,519 por eso 2034 00:36:00,519 --> 00:36:01,519 y aquí 2035 00:36:01,519 --> 00:36:02,519 es el motivo 2036 00:36:02,519 --> 00:36:03,519 por el que está plantado así 2037 00:36:03,519 --> 00:36:04,519 igual que 2038 00:36:04,519 --> 00:36:05,519 el terreno 2039 00:36:05,519 --> 00:36:06,519 tiene 2040 00:36:06,519 --> 00:36:07,519 un collider 2041 00:36:07,519 --> 00:36:08,519 que no es trigger 2042 00:36:08,519 --> 00:36:09,519 es decir 2043 00:36:09,519 --> 00:36:10,519 sirve de límite físico 2044 00:36:10,519 --> 00:36:11,519 no tiene el East Trigger 2045 00:36:11,519 --> 00:36:12,519 vale 2046 00:36:12,519 --> 00:36:13,519 porque queremos que funcionen 2047 00:36:13,519 --> 00:36:14,519 como 2048 00:36:14,519 --> 00:36:15,519 superficies 2049 00:36:15,519 --> 00:36:16,519 la meta 2050 00:36:16,519 --> 00:36:17,519 este collider 2051 00:36:17,519 --> 00:36:18,519 a ver 2052 00:36:18,519 --> 00:36:19,519 que tengo aquí 2053 00:36:19,519 --> 00:36:20,519 vale 2054 00:36:20,519 --> 00:36:21,519 fijaos que está ahí metido 2055 00:36:21,519 --> 00:36:22,519 pero ese sí es trigger 2056 00:36:22,519 --> 00:36:23,519 porque es que la función 2057 00:36:23,519 --> 00:36:24,519 de esta caja 2058 00:36:24,519 --> 00:36:25,519 que he metido aquí 2059 00:36:25,519 --> 00:36:26,519 de este cubo 2060 00:36:26,519 --> 00:36:27,519 es que cuando se meta la pelota 2061 00:36:27,519 --> 00:36:28,519 y choque 2062 00:36:28,519 --> 00:36:29,519 vale 2063 00:36:29,519 --> 00:36:30,519 y ojo 2064 00:36:30,519 --> 00:36:31,519 que digo chocar 2065 00:36:31,519 --> 00:36:32,519 pero no es el mejor verbo 2066 00:36:32,519 --> 00:36:33,519 en cuanto toque este área 2067 00:36:33,519 --> 00:36:34,519 y se introduzca dentro del área 2068 00:36:34,519 --> 00:36:36,519 que desencadene una acción 2069 00:36:36,519 --> 00:36:37,519 pero 2070 00:36:37,519 --> 00:36:38,519 bueno 2071 00:36:38,519 --> 00:36:39,519 yo ya le he dicho que acción es 2072 00:36:39,519 --> 00:36:40,519 el nivel 2073 00:36:40,519 --> 00:36:41,519 pero realmente cuando se mete la bola 2074 00:36:41,519 --> 00:36:42,519 por aquí 2075 00:36:42,519 --> 00:36:43,519 no está chocando con ese elemento 2076 00:36:43,519 --> 00:36:44,519 se 2077 00:36:44,519 --> 00:36:45,519 chocará contra 2078 00:36:45,519 --> 00:36:46,519 el agujero 2079 00:36:46,519 --> 00:36:47,519 es decir 2080 00:36:47,519 --> 00:36:48,519 si yo desactivo este script 2081 00:36:48,519 --> 00:36:49,519 que es el que hace 2082 00:36:49,519 --> 00:36:50,519 que cuando toque 2083 00:36:50,519 --> 00:36:51,519 este 2084 00:36:51,519 --> 00:36:52,519 elemento 2085 00:36:52,519 --> 00:36:53,519 este área 2086 00:36:53,519 --> 00:36:54,519 que hemos definido 2087 00:36:54,519 --> 00:36:55,519 con un collider 2088 00:36:55,519 --> 00:36:56,519 se introduzca 2089 00:36:56,519 --> 00:36:57,519 vais a ver 2090 00:36:57,519 --> 00:36:58,519 y dejo ahí esa cámara 2091 00:36:58,519 --> 00:36:59,519 que la pelota 2092 00:36:59,519 --> 00:37:00,519 no va a desencadenar nada 2093 00:37:00,519 --> 00:37:01,519 pues porque no tengo por código 2094 00:37:01,519 --> 00:37:02,519 que desencadene nada 2095 00:37:02,519 --> 00:37:03,519 pero fijaos 2096 00:37:03,519 --> 00:37:04,519 que el trigger 2097 00:37:04,519 --> 00:37:05,519 joder 2098 00:37:05,519 --> 00:37:06,519 sí que está 2099 00:37:06,519 --> 00:37:07,519 a ver 2100 00:37:07,519 --> 00:37:08,519 go 2101 00:37:08,519 --> 00:37:09,519 esto es porque también lo tengo 2102 00:37:09,519 --> 00:37:10,519 en algún otro script 2103 00:37:10,519 --> 00:37:11,519 ya configurado 2104 00:37:11,519 --> 00:37:12,519 este todo 2105 00:37:16,519 --> 00:37:17,519 creo que va a ser 2106 00:37:17,519 --> 00:37:18,519 la propia bola 2107 00:37:18,519 --> 00:37:19,519 la que tiene un script 2108 00:37:19,519 --> 00:37:20,519 vale 2109 00:37:20,519 --> 00:37:21,519 eh 2110 00:37:21,519 --> 00:37:23,519 tendría que quitar cosas del script 2111 00:37:23,519 --> 00:37:24,519 verdad 2112 00:37:26,519 --> 00:37:27,519 y por qué me cambié de nivel 2113 00:37:29,519 --> 00:37:30,519 un segundín eh 2114 00:37:31,519 --> 00:37:32,519 entonces 2115 00:37:32,519 --> 00:37:33,519 tengo este terreno 2116 00:37:34,519 --> 00:37:35,519 y tengo 2117 00:37:37,519 --> 00:37:38,519 bueno 2118 00:37:38,519 --> 00:37:39,519 si no está funcionando 2119 00:37:39,519 --> 00:37:40,519 vale 2120 00:37:40,519 --> 00:37:41,519 vale voy a crear 2121 00:37:41,519 --> 00:37:42,519 bueno 2122 00:37:42,519 --> 00:37:43,519 de todos modos 2123 00:37:43,519 --> 00:37:44,519 no está funcionando 2124 00:37:44,519 --> 00:37:45,519 del todo 2125 00:37:45,519 --> 00:37:46,519 como quiero 2126 00:37:46,519 --> 00:37:47,519 porque 2127 00:37:47,519 --> 00:37:48,519 en principio 2128 00:37:48,519 --> 00:37:49,519 si desactivo el script 2129 00:37:49,519 --> 00:37:50,519 a ver un segundo 2130 00:37:50,519 --> 00:37:51,519 que estoy dando para atrás 2131 00:37:51,519 --> 00:37:52,519 tututu 2132 00:37:52,519 --> 00:37:53,519 la bola 2133 00:37:53,519 --> 00:37:54,519 el goal 2134 00:37:54,519 --> 00:37:55,519 cambio escena 2135 00:37:55,519 --> 00:37:56,519 go 2136 00:37:56,519 --> 00:37:57,519 a ver 2137 00:37:57,519 --> 00:37:58,519 un segundito 2138 00:37:58,519 --> 00:37:59,519 esto 2139 00:37:59,519 --> 00:38:00,519 esto 2140 00:38:00,519 --> 00:38:01,519 esto 2141 00:38:01,519 --> 00:38:02,519 esto 2142 00:38:02,519 --> 00:38:03,519 esto 2143 00:38:03,519 --> 00:38:04,519 esto 2144 00:38:04,519 --> 00:38:05,519 esto 2145 00:38:05,519 --> 00:38:06,519 esto 2146 00:38:06,519 --> 00:38:07,519 esto 2147 00:38:07,519 --> 00:38:08,519 esto 2148 00:38:08,519 --> 00:38:09,519 oh 2149 00:38:09,519 --> 00:38:15,519 qué 2150 00:38:15,519 --> 00:38:16,519 por qué no hace caso 2151 00:38:16,519 --> 00:38:19,519 no me cambia de nivel 2152 00:38:19,519 --> 00:38:20,519 vale 2153 00:38:20,519 --> 00:38:27,519 esto 2154 00:38:27,519 --> 00:38:29,519 es porque en el script 2155 00:38:29,519 --> 00:38:30,519 yo tengo preparado 2156 00:38:30,519 --> 00:38:31,480 que 2157 00:38:31,480 --> 00:38:32,360 en algún momento 2158 00:38:32,360 --> 00:38:33,360 cambiar 2159 00:38:33,360 --> 00:38:34,519 no me quiero liar mucho 2160 00:38:34,519 --> 00:38:35,519 con esto 2161 00:38:35,519 --> 00:38:36,519 porque no 2162 00:38:36,519 --> 00:38:37,519 es lo que me interesa 2163 00:38:37,519 --> 00:38:40,000 East Trigger 2164 00:38:40,000 --> 00:38:41,099 a ver, pero 2165 00:38:41,099 --> 00:38:44,059 no entiendo, a ver, espera, a ver si es que 2166 00:38:44,059 --> 00:38:44,280 no 2167 00:38:44,280 --> 00:38:49,099 jope, ¿y por qué? 2168 00:38:50,139 --> 00:38:52,420 un segundo, que igual está aquí, no 2169 00:38:52,420 --> 00:38:57,980 jope, pues 2170 00:38:57,980 --> 00:39:00,280 esto es rarísimo 2171 00:39:00,280 --> 00:39:02,179 a ver si es que no he guardado 2172 00:39:02,179 --> 00:39:04,280 algo y tengo que 2173 00:39:04,280 --> 00:39:04,920 volver a hacerlo 2174 00:39:04,920 --> 00:39:07,179 pero nada, eh 2175 00:39:07,519 --> 00:39:11,960 y me iba a cambiar de nivel 2176 00:39:11,960 --> 00:39:12,860 no sé 2177 00:39:12,860 --> 00:39:15,960 no debería, ¿vale? pero por defecto 2178 00:39:16,519 --> 00:39:17,780 joder, voy a 2179 00:39:17,780 --> 00:39:19,960 remover directa, es que no puede ser 2180 00:39:20,739 --> 00:39:23,699 remove 2181 00:39:23,699 --> 00:39:25,199 remove 2182 00:39:25,199 --> 00:39:27,880 es que quiero que veáis el ejemplo porque me 2183 00:39:27,880 --> 00:39:29,960 sirve, si no lo genero yo ahora 2184 00:39:29,960 --> 00:39:31,300 pero vaya, que es que este 2185 00:39:31,300 --> 00:39:34,019 es el más fácil ahora mismo para crearlo 2186 00:39:34,019 --> 00:39:36,119 vale, ahora 2187 00:39:36,119 --> 00:39:37,119 vale, ¿veis? 2188 00:39:37,119 --> 00:39:37,159 vale, ¿veis? 2189 00:39:37,519 --> 00:39:40,000 ahora no tengo ningún script que se ha quedado ahí como bloqueado 2190 00:39:40,000 --> 00:39:41,800 porque realmente lo está desactivando 2191 00:39:41,800 --> 00:39:43,759 y debería, pero veis que la bola 2192 00:39:43,759 --> 00:39:45,980 ahora mismo está dentro 2193 00:39:45,980 --> 00:39:47,239 de un collider, pero claro 2194 00:39:47,239 --> 00:39:49,940 como ese collider es un trigger 2195 00:39:49,940 --> 00:39:52,119 no tiene ya las propiedades 2196 00:39:52,119 --> 00:39:54,239 de colisión, ¿vale? entonces lo atraviesa 2197 00:39:54,239 --> 00:39:55,219 ¿de qué sirve? 2198 00:39:55,719 --> 00:39:57,920 sirve pues para marcar zonas en las que 2199 00:39:57,920 --> 00:39:59,619 pase algo, pues oye, que cuando 2200 00:39:59,619 --> 00:40:01,860 pase por una puerta, pongo un área con 2201 00:40:01,860 --> 00:40:03,780 un isTrigger, ¿vale? marcado con ese collider 2202 00:40:03,780 --> 00:40:05,800 y cuando pase la puerta, pues que empiece a sonar 2203 00:40:05,800 --> 00:40:07,139 una alarma, o que 2204 00:40:07,519 --> 00:40:09,199 cambie de nivel, como sucede aquí 2205 00:40:09,199 --> 00:40:11,559 ese tipo de cosas, ¿vale? entonces hay que distinguir 2206 00:40:11,559 --> 00:40:13,500 entre los dos usos que tiene 2207 00:40:13,500 --> 00:40:15,340 un collider, yo no sé por qué funciona 2208 00:40:15,340 --> 00:40:17,679 si lo está desactivando, pero bueno, se habría quedado 2209 00:40:17,679 --> 00:40:19,820 ahí congelado, ¿vale? no sé si 2210 00:40:19,820 --> 00:40:21,599 entendéis, esto lo iremos practicando 2211 00:40:21,599 --> 00:40:23,400 en más temas, de todos modos, y ahora 2212 00:40:23,400 --> 00:40:24,420 lo vamos a ver más, pero 2213 00:40:24,420 --> 00:40:27,440 sobre todo seguidme hasta ahí, hasta ese momento 2214 00:40:27,440 --> 00:40:29,619 entonces, cuando 2215 00:40:29,619 --> 00:40:31,259 más o menos sí, ¿vale? 2216 00:40:31,400 --> 00:40:33,519 lo importante es eso, distinguir que hay colliders 2217 00:40:33,519 --> 00:40:35,480 que no son trigger 2218 00:40:35,480 --> 00:40:37,219 que son por defecto, que sirven como 2219 00:40:37,519 --> 00:40:39,179 condicionadores, realmente, y luego 2220 00:40:39,179 --> 00:40:40,920 están los que desencadenan acciones 2221 00:40:40,920 --> 00:40:43,119 ¿vale? por ejemplo 2222 00:40:43,119 --> 00:40:45,259 una pregunta, cuando 2223 00:40:45,259 --> 00:40:46,259 es trigger, por ejemplo 2224 00:40:46,259 --> 00:40:48,599 cuando lo metes en 2225 00:40:48,599 --> 00:40:51,380 con el código, lo haces 2226 00:40:51,380 --> 00:40:53,119 como pones trigger 2227 00:40:53,119 --> 00:40:55,099 como trigger, y cuando no, lo pones como 2228 00:40:55,099 --> 00:40:56,900 collider, son diferentes códigos 2229 00:40:56,900 --> 00:40:59,159 me parece, ¿no? claro, hay dos 2230 00:40:59,159 --> 00:41:01,179 métodos, ¿vale? que son los de la familia 2231 00:41:01,179 --> 00:41:03,360 onTrigger y los de la familia onCollision 2232 00:41:03,360 --> 00:41:05,280 que están relacionados exactamente con esto 2233 00:41:06,340 --> 00:41:07,300 voy a explicar 2234 00:41:07,519 --> 00:41:09,159 segundo cómo funciona, por ejemplo, este 2235 00:41:09,159 --> 00:41:10,719 trigger, ¿vale? para hacer una introducción 2236 00:41:10,719 --> 00:41:13,039 y luego vemos la diferencia, ¿vale? 2237 00:41:13,599 --> 00:41:15,440 cuando, para hacer que se reinicie 2238 00:41:15,440 --> 00:41:16,719 el nivel, lo que 2239 00:41:16,719 --> 00:41:19,219 lo suyo, ¿vale? lo suyo sería crear 2240 00:41:19,219 --> 00:41:21,300 un GameObject que 2241 00:41:21,300 --> 00:41:23,259 realmente lo único que tiene en sí mismo 2242 00:41:23,259 --> 00:41:25,300 es un BoxCollider que es un trigger 2243 00:41:25,300 --> 00:41:27,259 ¿qué significa? que si yo creo 2244 00:41:27,259 --> 00:41:29,199 un BoxCollider que abarca toda la zona 2245 00:41:29,199 --> 00:41:31,000 inferior, en cuanto la bola se caiga 2246 00:41:31,000 --> 00:41:33,239 ¿vale? lo vemos aquí, en cuanto 2247 00:41:33,239 --> 00:41:34,900 la bola se caiga y toque ese 2248 00:41:34,900 --> 00:41:37,320 collider, que no sirve de superficie 2249 00:41:37,519 --> 00:41:39,300 casi no de desencadenador 2250 00:41:39,300 --> 00:41:41,619 vais a ver que yo cuando veáis 2251 00:41:41,619 --> 00:41:43,599 que se cae la bola, en cuanto toca ese collider 2252 00:41:43,599 --> 00:41:45,719 yo he hecho un código 2253 00:41:45,719 --> 00:41:46,639 he incorporado un código 2254 00:41:46,639 --> 00:41:49,639 que ahora vemos, que lo que hará es 2255 00:41:49,639 --> 00:41:51,199 detectar que ha habido esa colisión 2256 00:41:51,199 --> 00:41:53,780 o mejor dicho, ese trigger 2257 00:41:53,780 --> 00:41:55,719 ¿vale? y dispara la acción 2258 00:41:55,719 --> 00:41:57,679 de reiniciar este mismo nivel en el que 2259 00:41:57,679 --> 00:41:58,980 estamos, ¿sí? 2260 00:41:59,420 --> 00:42:01,119 que no es lo mismo que 2261 00:42:01,119 --> 00:42:03,659 lo que está sucediendo en todo momento 2262 00:42:03,659 --> 00:42:05,380 de que la bola, lo digo porque 2263 00:42:05,380 --> 00:42:07,480 en alguna de las dudas 2264 00:42:07,519 --> 00:42:09,000 que me pusisteis, era 2265 00:42:09,000 --> 00:42:11,259 en todo momento se está reiniciando el nivel 2266 00:42:11,259 --> 00:42:13,519 claro, pues porque, por ejemplo 2267 00:42:13,519 --> 00:42:15,000 si hubiéramos puesto el trigger 2268 00:42:15,000 --> 00:42:17,199 relacionado con este collider 2269 00:42:17,199 --> 00:42:18,780 en cuanto tocara este collider 2270 00:42:18,780 --> 00:42:21,259 pues sería este el que desencadenaría que en todo momento 2271 00:42:21,259 --> 00:42:23,139 se reinicie, ¿vale? entonces 2272 00:42:23,139 --> 00:42:25,519 cuando tenemos este objeto precipicio 2273 00:42:25,519 --> 00:42:27,300 por ejemplo, ¿vale? de hecho 2274 00:42:27,300 --> 00:42:29,019 lo voy a crear yo de cero para que veáis 2275 00:42:29,019 --> 00:42:31,400 como lo haría, ¿vale? cuando creamos 2276 00:42:31,400 --> 00:42:32,500 un empty object 2277 00:42:32,500 --> 00:42:34,960 y decimos, este es el precipicio 2278 00:42:34,960 --> 00:42:36,579 lo voy a llamar 2279 00:42:36,579 --> 00:42:37,259 o el 2280 00:42:37,519 --> 00:42:39,340 ¿cómo se llama? el umbral 2281 00:42:39,340 --> 00:42:41,320 no sé, el reinicio 2282 00:42:41,320 --> 00:42:43,239 nivel, ¿vale? yo voy a hacer aquí un área 2283 00:42:43,239 --> 00:42:44,940 que lo que hace es reiniciar el nivel 2284 00:42:44,940 --> 00:42:47,119 yo ese objeto no voy a querer en ningún momento 2285 00:42:47,119 --> 00:42:48,940 que muestre nada visual 2286 00:42:48,940 --> 00:42:51,039 va a servir solo como área de desencadenar 2287 00:42:51,039 --> 00:42:53,039 cosas, ¿vale? por eso aquí no vais a ver 2288 00:42:53,039 --> 00:42:54,940 en ningún momento un mesh renderer 2289 00:42:54,940 --> 00:42:56,300 por ejemplo si hubiera una geometría 2290 00:42:56,300 --> 00:42:57,440 ni un 2291 00:42:57,440 --> 00:43:01,019 nada relacionado eso con 2292 00:43:01,019 --> 00:43:02,460 a ver, por ejemplo la bola 2293 00:43:02,460 --> 00:43:05,019 pues es un mesh renderer, la propia geometría 2294 00:43:05,019 --> 00:43:07,280 que es este mesh filter 2295 00:43:07,280 --> 00:43:07,480 ¿vale? 2296 00:43:07,519 --> 00:43:09,219 se pueden crear, como sucede 2297 00:43:09,219 --> 00:43:11,840 con los empty objects 2298 00:43:11,840 --> 00:43:13,699 objetos que solo tienen una posición 2299 00:43:13,699 --> 00:43:15,320 y nada físico, ¿vale? ojo 2300 00:43:15,320 --> 00:43:16,780 cuando creamos un nuevo empty object 2301 00:43:16,780 --> 00:43:18,880 lo normal es resetearlo porque 2302 00:43:18,880 --> 00:43:21,759 a no ser que cambiamos una configuración 2303 00:43:21,759 --> 00:43:23,579 lo genera en el centro 2304 00:43:23,579 --> 00:43:25,400 del visor donde estemos, si estamos aquí 2305 00:43:25,400 --> 00:43:27,559 lo genera aquí, entonces vais a ver que ya 2306 00:43:27,559 --> 00:43:29,340 a veces puede tener unas coordenadas por defecto 2307 00:43:29,340 --> 00:43:31,480 lo reiniciamos y ahí estamos otra vez en el 2308 00:43:31,480 --> 00:43:33,380 punto de origen, ¿vale? y yo como quiero 2309 00:43:33,380 --> 00:43:34,579 generar ese precipicio 2310 00:43:34,579 --> 00:43:37,380 lo que hago es bajarlo porque quiero 2311 00:43:37,519 --> 00:43:39,759 que esté abajo y decirle, ¿vale? voy a generar 2312 00:43:39,759 --> 00:43:42,659 un área que dispare algo, ¿vale? esto ya 2313 00:43:42,659 --> 00:43:44,619 más allá del código es pensar qué queremos hacer 2314 00:43:44,619 --> 00:43:47,639 ¿no? y decimos, queremos que cuando caiga la pelota 2315 00:43:47,639 --> 00:43:49,280 pues haya un área 2316 00:43:49,280 --> 00:43:50,880 aquí sí que nos da igual que sea la forma 2317 00:43:50,880 --> 00:43:52,420 primitiva o una muy vasta 2318 00:43:52,420 --> 00:43:54,719 porque lo que queremos es que cuando caiga de aquí 2319 00:43:54,719 --> 00:43:56,679 haya un área que detecte 2320 00:43:56,679 --> 00:43:58,880 que la bola ha tocado esa área, ¿no? entonces 2321 00:43:58,880 --> 00:44:00,019 lo que vamos a hacer es 2322 00:44:00,019 --> 00:44:01,800 para que si la pelota, igual 2323 00:44:01,800 --> 00:44:04,099 si la pelota sale con mucha fuerza pues que no 2324 00:44:04,099 --> 00:44:05,179 se escape 2325 00:44:05,179 --> 00:44:07,320 un área que siempre que se caiga la pelota 2326 00:44:07,320 --> 00:44:08,760 tenga por narices que tocar 2327 00:44:08,760 --> 00:44:11,140 este box collider, ¿vale? 2328 00:44:11,140 --> 00:44:13,140 y por defecto vais a ver que si yo hago eso 2329 00:44:13,140 --> 00:44:15,059 cuando yo me caigo de aquí 2330 00:44:15,059 --> 00:44:17,100 empieza a caerse la pelota 2331 00:44:17,100 --> 00:44:18,700 empieza a caerse y se queda ahí flotando 2332 00:44:18,700 --> 00:44:21,080 porque está colisionando que aunque 2333 00:44:21,080 --> 00:44:22,539 no se vea una forma física 2334 00:44:22,539 --> 00:44:25,059 ¿vale? aquí lo que vamos a querer no es que 2335 00:44:25,059 --> 00:44:26,740 choque contra esto, sino que 2336 00:44:26,740 --> 00:44:29,059 lo pueda atravesar incluso y 2337 00:44:29,059 --> 00:44:31,120 desencadene otra acción, ¿vale? 2338 00:44:31,420 --> 00:44:33,019 lo que pasa es que aquí surgen 2339 00:44:33,019 --> 00:44:34,920 dos posibilidades, una 2340 00:44:34,920 --> 00:44:36,840 que desencadene la acción 2341 00:44:37,320 --> 00:44:38,260 en cuanto toca 2342 00:44:38,260 --> 00:44:41,039 este área 2343 00:44:41,039 --> 00:44:42,940 pues que desencadene una acción 2344 00:44:42,940 --> 00:44:44,980 ¿vale? y como no es un trigger 2345 00:44:44,980 --> 00:44:46,800 al caer aquí, se queda aquí 2346 00:44:46,800 --> 00:44:49,080 pero podemos definir con un 2347 00:44:49,080 --> 00:44:50,940 collision enter, un collision stay 2348 00:44:50,940 --> 00:44:53,380 diferentes, las diferentes 2349 00:44:53,380 --> 00:44:54,660 acepciones que tiene esa familia 2350 00:44:54,660 --> 00:44:57,420 el collision, el método 2351 00:44:57,420 --> 00:44:59,140 con collision lo que sirve es para que 2352 00:44:59,140 --> 00:45:00,539 en cuanto un objeto toque a otro 2353 00:45:00,539 --> 00:45:02,900 que es un colisionador, es decir, no un trigger 2354 00:45:02,900 --> 00:45:04,980 no tiene la marca de la casilla de isTrigger 2355 00:45:04,980 --> 00:45:07,120 que desencadene algo, ¿vale? 2356 00:45:07,320 --> 00:45:08,420 por 2357 00:45:08,420 --> 00:45:11,019 en cambio, si nosotros lo que estamos 2358 00:45:11,019 --> 00:45:12,940 generando es un trigger 2359 00:45:12,940 --> 00:45:15,300 de detección, ¿vale? lo que vamos a definir 2360 00:45:15,300 --> 00:45:17,160 con los métodos de onTrigger 2361 00:45:17,160 --> 00:45:19,019 es que en cuanto atraviese esta 2362 00:45:19,019 --> 00:45:21,019 plataforma, y veis que sigue bajando, pero 2363 00:45:21,019 --> 00:45:23,100 lo ha atravesado en algún momento, nosotros 2364 00:45:23,100 --> 00:45:25,180 por código podamos definir 2365 00:45:25,180 --> 00:45:26,880 qué acción se desencadena cuando 2366 00:45:26,880 --> 00:45:29,200 sucede eso, ¿vale? entonces 2367 00:45:29,200 --> 00:45:30,980 vamos a ver las dos formas 2368 00:45:30,980 --> 00:45:32,980 de hacerlo, voy a dejar el collider de forma que 2369 00:45:32,980 --> 00:45:34,860 sea un colisionador, ¿no? y entonces 2370 00:45:34,860 --> 00:45:37,120 cuando yo creo un script de 2371 00:45:37,320 --> 00:45:39,039 reinicioNivel 2372 00:45:39,039 --> 00:45:41,120 ¿vale? lo genero, porque 2373 00:45:41,120 --> 00:45:42,500 la función que va a tener es 2374 00:45:42,500 --> 00:45:45,240 asociada a este gameObject 2375 00:45:45,240 --> 00:45:47,240 de reinicio es, pues que cuando llegue 2376 00:45:47,240 --> 00:45:49,300 ahí, podamos desencadenar, pues por ejemplo 2377 00:45:49,300 --> 00:45:51,160 este reinicioNivel, lo que vamos a hacer es 2378 00:45:51,160 --> 00:45:53,400 voy a abrir ese script 2379 00:45:53,400 --> 00:45:55,120 que acabo de crear, ¿vale? este está por 2380 00:45:55,120 --> 00:45:56,700 defecto, ¿lo veis? entiendo 2381 00:45:56,700 --> 00:45:59,200 hola, por cierto, que creo que ha llegado alguien 2382 00:45:59,200 --> 00:46:01,340 más a la tutoría 2383 00:46:01,340 --> 00:46:02,320 ¿vale? 2384 00:46:03,200 --> 00:46:05,100 tenemos este reinicioNivel, ¿vale? 2385 00:46:05,120 --> 00:46:06,580 y voy a ir a lo más básico 2386 00:46:07,320 --> 00:46:09,600 que nosotros aquí abajo, fuera del 2387 00:46:09,600 --> 00:46:10,519 start y del update 2388 00:46:10,519 --> 00:46:13,880 el que un evento 2389 00:46:13,880 --> 00:46:16,019 de colisión o de trigger se desencadene 2390 00:46:16,019 --> 00:46:17,720 realmente no está asociado con 2391 00:46:17,720 --> 00:46:19,340 un momento de ejecución del juego 2392 00:46:19,340 --> 00:46:21,780 ¿no? no es ni al start, ni en 2393 00:46:21,780 --> 00:46:24,019 cada fotograma, sino que queremos que se ejecute 2394 00:46:24,019 --> 00:46:25,840 en el momento que suceda 2395 00:46:25,840 --> 00:46:27,960 esa colisión, por eso hay que pensar 2396 00:46:27,960 --> 00:46:30,000 que igual que podíamos crear 2397 00:46:30,000 --> 00:46:32,000 el fixUpdate 2398 00:46:32,000 --> 00:46:33,840 ¿vale? y os hablé también 2399 00:46:33,840 --> 00:46:35,900 el otro día del lateUpdate, que son momentos 2400 00:46:35,900 --> 00:46:37,740 de ejecución en el ciclo de ejecución 2401 00:46:37,740 --> 00:46:40,039 que os mostré un esquema 2402 00:46:40,039 --> 00:46:41,940 el otro día, ¿vale? también se puede 2403 00:46:41,940 --> 00:46:43,900 por ejemplo, meter uno 2404 00:46:43,900 --> 00:46:45,519 de la familia onCollisionEnter 2405 00:46:45,519 --> 00:46:47,840 ¿vale? y fijaos que cuando empezáis 2406 00:46:47,840 --> 00:46:49,019 a escribir onCollision 2407 00:46:49,019 --> 00:46:51,820 vuelvo a hacerlo, el IntelliSense, esta ayuda 2408 00:46:51,820 --> 00:46:53,920 que tenemos, si elegís una de las 2409 00:46:53,920 --> 00:46:55,480 opciones, ya os completa, digamos 2410 00:46:55,480 --> 00:46:57,820 el método por 2411 00:46:57,820 --> 00:46:59,240 completo, ¿vale? os lo escribe 2412 00:46:59,240 --> 00:47:01,860 no tenéis que saberlo todo de memoria 2413 00:47:01,860 --> 00:47:04,320 porque si decís un onCollisionExit 2414 00:47:04,320 --> 00:47:05,820 le dais doble clic y ya lo 2415 00:47:05,900 --> 00:47:07,940 prepara, ¿vale? esta familia 2416 00:47:07,940 --> 00:47:09,840 de onCollisionEnter, que tienen el enter 2417 00:47:09,840 --> 00:47:12,320 el stay y el exit, muy similares 2418 00:47:12,320 --> 00:47:13,639 a cuando hacíamos los inputs 2419 00:47:13,639 --> 00:47:16,260 este input down, getKeyButton 2420 00:47:16,260 --> 00:47:17,539 down, getKeyButton 2421 00:47:17,539 --> 00:47:19,639 up, etcétera 2422 00:47:19,639 --> 00:47:21,380 es que detecte 2423 00:47:21,380 --> 00:47:23,740 que en cuanto haya una colisión aquí 2424 00:47:23,740 --> 00:47:26,220 ¿vale? sea en el momento en el que colisiona 2425 00:47:26,220 --> 00:47:27,760 en todo momento 2426 00:47:27,760 --> 00:47:29,940 con el stay, en todo momento 2427 00:47:29,940 --> 00:47:31,240 mientras se está colisionando 2428 00:47:31,240 --> 00:47:33,519 ¿vale? stay 2429 00:47:33,519 --> 00:47:34,980 sería otro 2430 00:47:34,980 --> 00:47:35,059 ¿vale? 2431 00:47:35,900 --> 00:47:38,300 el exit, vamos a hacer un ejemplo de cada uno 2432 00:47:38,300 --> 00:47:40,400 el onCollisionEnter 2433 00:47:40,400 --> 00:47:41,880 es en cuanto un objeto 2434 00:47:41,880 --> 00:47:44,420 con un colisionador toque a este 2435 00:47:44,420 --> 00:47:46,460 ¿vale? que se desencadene algo 2436 00:47:46,460 --> 00:47:48,059 y para ver que se desencadena, por ejemplo 2437 00:47:48,059 --> 00:47:49,180 vamos a poner un debug log 2438 00:47:49,180 --> 00:47:50,480 que sea 2439 00:47:50,480 --> 00:47:56,200 han colisionado dos objetos 2440 00:47:56,200 --> 00:47:57,700 por poner algo, ¿vale? 2441 00:47:58,139 --> 00:47:59,840 ahora mismo estamos diciendo que cuanto 2442 00:47:59,840 --> 00:48:00,460 este 2443 00:48:00,460 --> 00:48:04,079 el gameObject que tenga este script 2444 00:48:04,079 --> 00:48:04,920 ¿vale? 2445 00:48:05,900 --> 00:48:07,900 reciba una colisión 2446 00:48:07,900 --> 00:48:09,900 ¿vale? pues que lance esta frase 2447 00:48:09,900 --> 00:48:11,900 entonces, si nos vamos fijando en la consola 2448 00:48:11,900 --> 00:48:13,900 voy a limpiarla 2449 00:48:13,900 --> 00:48:15,900 cuando yo ejecuto el juego 2450 00:48:15,900 --> 00:48:17,900 aunque aquí ha habido una colisión no ocurre nada 2451 00:48:17,900 --> 00:48:19,900 ¿vale? pero yo voy moviendo la pelota 2452 00:48:19,900 --> 00:48:21,900 y en cuanto, a ver, marco aquí esto 2453 00:48:21,900 --> 00:48:23,900 en cuanto toque la colisión 2454 00:48:23,900 --> 00:48:25,900 en cuanto toque un objeto con otro, colisionan 2455 00:48:25,900 --> 00:48:27,900 y dice, eh, han colisionado dos objetos 2456 00:48:27,900 --> 00:48:29,900 ¿vale? 2457 00:48:29,900 --> 00:48:31,900 con esto veis que la pelota 2458 00:48:31,900 --> 00:48:33,900 no está atravesando el objeto 2459 00:48:33,900 --> 00:48:35,900 pero sí que ha detectado la colisión, entonces 2460 00:48:35,900 --> 00:48:37,900 al entrar en el primer momento 2461 00:48:37,900 --> 00:48:39,900 que se da esa colisión 2462 00:48:39,900 --> 00:48:41,900 pues aquí nosotros podemos por código 2463 00:48:41,900 --> 00:48:43,900 poner todo lo que queramos 2464 00:48:43,900 --> 00:48:45,900 aquí he puesto un debug log, pero también podremos decir 2465 00:48:45,900 --> 00:48:47,900 que la pelota, por ejemplo 2466 00:48:47,900 --> 00:48:49,900 reciba una fuerza inversa hacia arriba 2467 00:48:49,900 --> 00:48:51,900 ¿vale? entonces 2468 00:48:51,900 --> 00:48:53,900 ese es, por ejemplo 2469 00:48:53,900 --> 00:48:55,900 es una explicación de long collision 2470 00:48:55,900 --> 00:48:57,900 que queremos que en todo 2471 00:48:57,900 --> 00:48:59,900 momento que la pelota, en este caso 2472 00:48:59,900 --> 00:49:01,900 o que existe una colisión 2473 00:49:01,900 --> 00:49:03,900 en todo momento que se estén colisionando esos dos objetos 2474 00:49:03,900 --> 00:49:05,900 no sólo al empezar esa colisión 2475 00:49:05,900 --> 00:49:07,900 y por eso sólo lanza el mensaje una vez 2476 00:49:07,900 --> 00:49:09,900 sino que en cada fotograma 2477 00:49:09,900 --> 00:49:11,900 que se estén tocando los dos objetos 2478 00:49:11,900 --> 00:49:13,900 quiero que ponga 2479 00:49:13,900 --> 00:49:15,900 debug log 2480 00:49:15,900 --> 00:49:17,900 quiero que ponga 2481 00:49:17,900 --> 00:49:19,900 la pelota 2482 00:49:19,900 --> 00:49:21,900 o algo 2483 00:49:21,900 --> 00:49:23,900 está colisionando 2484 00:49:23,900 --> 00:49:25,900 eh 2485 00:49:25,900 --> 00:49:27,900 todo el rato, yo que sé 2486 00:49:27,900 --> 00:49:29,900 para distinguirlo, bueno, el mensaje es 2487 00:49:29,900 --> 00:49:31,900 parecido al de antes 2488 00:49:31,900 --> 00:49:33,900 pero vais a ver que al ejecutarlo 2489 00:49:33,900 --> 00:49:35,900 ya no sólo se lanza el mensaje una vez 2490 00:49:35,900 --> 00:49:37,900 cuando toca, todo momento 2491 00:49:37,900 --> 00:49:39,900 que se estén tocando 2492 00:49:39,900 --> 00:49:41,900 se está ejecutando ese 2493 00:49:41,900 --> 00:49:43,900 a ver un segundo, porque no sé si es que no he guardado 2494 00:49:43,900 --> 00:49:45,900 vale, perdonad, que es que no he guardado 2495 00:49:45,900 --> 00:49:47,900 por eso no se está ejecutando bien 2496 00:49:47,900 --> 00:49:49,900 aquí le doy 2497 00:49:49,900 --> 00:49:51,900 limpio la 2498 00:49:51,900 --> 00:49:53,900 consola 2499 00:49:53,900 --> 00:49:55,900 y ahora sí que debería que 2500 00:49:55,900 --> 00:49:57,900 al meterme 2501 00:49:57,900 --> 00:49:59,900 veis que ahora salen muchos mensajes 2502 00:49:59,900 --> 00:50:01,900 cada fotograma que se estén tocando 2503 00:50:01,900 --> 00:50:03,900 está existiendo esa colisión 2504 00:50:03,900 --> 00:50:05,900 y estoy permaneciendo en esa colisión 2505 00:50:05,900 --> 00:50:07,900 y por tanto sigue lanzando mensajes 2506 00:50:07,900 --> 00:50:09,900 pero mirad, voy a sacar la bola 2507 00:50:09,900 --> 00:50:11,900 me voy a ir al límite de este 2508 00:50:11,900 --> 00:50:13,900 área que he definido, se cae otra vez 2509 00:50:13,900 --> 00:50:15,900 y fijaos que ya como no están 2510 00:50:15,900 --> 00:50:17,900 tocándose, pues ya no hay 2511 00:50:17,900 --> 00:50:19,900 más mensajes, que si consiguiera 2512 00:50:19,900 --> 00:50:21,900 otra vez poner la pelota tocando este objeto 2513 00:50:21,900 --> 00:50:23,900 seguiría en el tiempo que estén tocándose 2514 00:50:23,900 --> 00:50:25,900 cada fotograma haría una 2515 00:50:25,900 --> 00:50:27,900 ejecución de lo que pongamos dentro de ese método 2516 00:50:27,900 --> 00:50:29,900 y luego por último 2517 00:50:29,900 --> 00:50:31,900 el onCollisionExit 2518 00:50:31,900 --> 00:50:33,900 lo que hace es 2519 00:50:33,900 --> 00:50:35,900 que en cuanto la pelota deje de colisionar con otra 2520 00:50:35,900 --> 00:50:37,900 veis que ahora 2521 00:50:37,900 --> 00:50:39,900 yo cuando colisiono 2522 00:50:39,900 --> 00:50:41,900 no pasa nada, ha entrado 2523 00:50:41,900 --> 00:50:43,900 ahora estamos en el CollisionEnter 2524 00:50:43,900 --> 00:50:45,900 ahora todo este rato que no ha sido 2525 00:50:45,900 --> 00:50:47,900 el primer impacto 2526 00:50:47,900 --> 00:50:49,900 estamos en el onCollisionStay 2527 00:50:49,900 --> 00:50:51,900 y ahora cuando me salga vais a ver que solo 2528 00:50:51,900 --> 00:50:53,900 se va a lanzar un mensaje cuando deje de tocar 2529 00:50:53,900 --> 00:50:55,900 que es 2530 00:50:55,900 --> 00:50:57,900 algo está colisionando, porque es la salida 2531 00:50:57,900 --> 00:50:59,900 de la colisión 2532 00:50:59,900 --> 00:51:01,900 lo que hacen los onCollision 2533 00:51:01,900 --> 00:51:03,900 en cualquiera de sus variantes es 2534 00:51:03,900 --> 00:51:05,900 definir 2535 00:51:05,900 --> 00:51:07,900 que cuando dos objetos colisionen 2536 00:51:07,900 --> 00:51:09,900 o mejor dicho, cuando un objeto 2537 00:51:09,900 --> 00:51:11,900 como es este el que tiene el script 2538 00:51:11,900 --> 00:51:13,900 cuando un objeto, ahora mismo cualquiera 2539 00:51:13,900 --> 00:51:15,900 podría ser la bola o podría ser que la plataforma 2540 00:51:15,900 --> 00:51:17,900 se cayera también, cuando la tocara 2541 00:51:17,900 --> 00:51:19,900 lanzaría el mensaje, pues diría 2542 00:51:19,900 --> 00:51:21,900 aquí ha habido una colisión 2543 00:51:21,900 --> 00:51:23,900 vale 2544 00:51:23,900 --> 00:51:25,900 el Trigger en cambio 2545 00:51:25,900 --> 00:51:27,900 es el mismo concepto 2546 00:51:27,900 --> 00:51:29,900 solo que con objetos que son triggers 2547 00:51:29,900 --> 00:51:31,900 y por tanto sirven para que se puedan 2548 00:51:31,900 --> 00:51:33,900 atravesar, os vuelvo a poner el ejemplo de antes 2549 00:51:33,900 --> 00:51:35,900 imaginaos que tenéis una puerta 2550 00:51:35,900 --> 00:51:37,900 y tenéis que pasar por la puerta 2551 00:51:37,900 --> 00:51:39,900 pero al pasar por la puerta queréis desencadenar 2552 00:51:39,900 --> 00:51:41,900 que se encienda una luz, automáticamente 2553 00:51:41,900 --> 00:51:43,900 como si lo hubiera tocado un sensor 2554 00:51:43,900 --> 00:51:45,900 tu ahí no quieres que el Collider sea algo 2555 00:51:45,900 --> 00:51:47,900 físico, pero quieres que esa área 2556 00:51:47,900 --> 00:51:49,900 detecte que un personaje está atravesando la puerta 2557 00:51:49,900 --> 00:51:51,900 en ese caso pondríamos un Trigger 2558 00:51:51,900 --> 00:51:53,900 en este caso pues lo voy a poner 2559 00:51:53,900 --> 00:51:55,900 el Trigger marcado 2560 00:51:55,900 --> 00:51:57,900 vale, pues aquí 2561 00:51:57,900 --> 00:51:59,900 lo que habría que hacer es 2562 00:51:59,900 --> 00:52:01,900 borro 2563 00:52:01,900 --> 00:52:03,900 esto que tengo ahora mismo de onCollision 2564 00:52:03,900 --> 00:52:05,900 y voy a generar otro 2565 00:52:05,900 --> 00:52:07,900 método, nuevamente 2566 00:52:07,900 --> 00:52:09,900 fuera de las ejecuciones, de los tiempos de ejecución 2567 00:52:09,900 --> 00:52:11,900 porque es un propio momento 2568 00:52:11,900 --> 00:52:13,900 de ejecución basado en 2569 00:52:13,900 --> 00:52:15,900 que haya ese Trigger y veréis que hay 2570 00:52:15,900 --> 00:52:17,900 también onTrigger, enter, exit, stay 2571 00:52:17,900 --> 00:52:19,900 es exactamente lo mismo solo que 2572 00:52:19,900 --> 00:52:21,900 relacionado, y cuando le doble clic 2573 00:52:21,900 --> 00:52:23,900 lo rellena entero 2574 00:52:23,900 --> 00:52:25,900 relacionado con los Triggers 2575 00:52:25,900 --> 00:52:27,900 pues aquí el exit 2576 00:52:27,900 --> 00:52:29,900 vamos a poner que lo que muestra es 2577 00:52:29,900 --> 00:52:31,900 debug log 2578 00:52:33,900 --> 00:52:35,900 me han 2579 00:52:35,900 --> 00:52:37,900 atravesado 2580 00:52:37,900 --> 00:52:39,900 y lo mismo, yo cuando 2581 00:52:39,900 --> 00:52:41,900 la pelota ahora 2582 00:52:41,900 --> 00:52:43,900 juegue, me muevo 2583 00:52:43,900 --> 00:52:45,900 y vais a ver que la pelota ya no se queda ahí 2584 00:52:45,900 --> 00:52:47,900 porque es un Trigger 2585 00:52:47,900 --> 00:52:49,900 uno de los dos elementos, uno es como 2586 00:52:49,900 --> 00:52:51,900 incorpóreo, pero al atravesarlo 2587 00:52:51,900 --> 00:52:53,900 sí que lo ha atravesado 2588 00:52:53,900 --> 00:52:55,900 por dejarlo ya un poco más 2589 00:52:55,900 --> 00:52:57,900 zanjado y ver todas las posibilidades 2590 00:52:57,900 --> 00:52:59,900 si yo a esto le pongo el onTriggerStay 2591 00:52:59,900 --> 00:53:01,900 vais a ver que 2592 00:53:01,900 --> 00:53:03,900 el tiempo, que tampoco va a ser muy largo 2593 00:53:03,900 --> 00:53:05,900 que está atravesando ese 2594 00:53:05,900 --> 00:53:07,900 precipicio, este 2595 00:53:07,900 --> 00:53:09,900 área, vais a ver 2596 00:53:09,900 --> 00:53:11,900 que en todo momento 2597 00:53:11,900 --> 00:53:13,900 está soltando el mensaje, por eso va a haber 2598 00:53:13,900 --> 00:53:15,900 más de uno, y luego ya 2599 00:53:15,900 --> 00:53:17,900 cuando ha salido por debajo 2600 00:53:17,900 --> 00:53:19,900 ha habido 8 momentos que 2601 00:53:19,900 --> 00:53:21,900 ha estado dentro la pelota 2602 00:53:21,900 --> 00:53:23,900 y con el onTriggerExit 2603 00:53:23,900 --> 00:53:25,900 sería un poco lo mismo, pero 2604 00:53:25,900 --> 00:53:27,900 cuando detectará que deja de estar dentro 2605 00:53:27,900 --> 00:53:29,900 de ese área, no sé si 2606 00:53:29,900 --> 00:53:31,900 hasta aquí entiendo que me vais entendiendo 2607 00:53:31,900 --> 00:53:33,900 y esto parece un poco 2608 00:53:33,900 --> 00:53:35,900 lo mismo, pero ya veis que el método cambia 2609 00:53:35,900 --> 00:53:37,900 pero 2610 00:53:37,900 --> 00:53:39,900 en ciertas ocasiones nos puede interesar uno u otro 2611 00:53:39,900 --> 00:53:41,900 por ejemplo eso, aquí porque he 2612 00:53:41,900 --> 00:53:43,900 cambiado de nivel y no se ve, pero yo realmente 2613 00:53:43,900 --> 00:53:45,900 ese límite que estoy metiendo ahí 2614 00:53:45,900 --> 00:53:47,900 no quiero que sea corpóreo, por tanto será 2615 00:53:47,900 --> 00:53:49,900 onTrigger lo que pongo, que quiero 2616 00:53:49,900 --> 00:53:51,900 que sea que en cuanto la 2617 00:53:51,900 --> 00:53:53,900 mira, de hecho vamos a hacer un ejemplo 2618 00:53:53,900 --> 00:53:55,900 voy a hacer 2619 00:53:55,900 --> 00:53:57,900 que el 2620 00:53:57,900 --> 00:53:59,900 terreno, que tiene 2621 00:53:59,900 --> 00:54:01,900 un MeshCollider, que es colisionador 2622 00:54:01,900 --> 00:54:03,900 cuando la pelota 2623 00:54:03,900 --> 00:54:05,900 toque ese terreno, reciba un impulso que le 2624 00:54:05,900 --> 00:54:07,900 lance para arriba, pues vamos a hacerlo así 2625 00:54:07,900 --> 00:54:09,900 un poco rápido, yo lo que voy a hacer 2626 00:54:09,900 --> 00:54:11,900 voy a hacer otro script diferente 2627 00:54:11,900 --> 00:54:13,900 en paralelo 2628 00:54:13,900 --> 00:54:15,900 simplemente por el ejemplo, que sería 2629 00:54:15,900 --> 00:54:17,900 un poco lo que he creado 2630 00:54:17,900 --> 00:54:19,900 lo que se ha creado en el nivel 4 este de pinball 2631 00:54:19,900 --> 00:54:21,900 que os he enseñado, a ver 2632 00:54:21,900 --> 00:54:23,900 fuerza 2633 00:54:23,900 --> 00:54:25,900 choque, yo que sé 2634 00:54:25,900 --> 00:54:27,900 y se lo aplico a 2635 00:54:27,900 --> 00:54:29,900 a la superficie, al terreno, a la plataforma 2636 00:54:29,900 --> 00:54:31,900 esta va a 2637 00:54:31,900 --> 00:54:33,900 reaccionar aquí, o a la pelota 2638 00:54:33,900 --> 00:54:35,900 se puede poner a cualquiera de los dos, porque al final 2639 00:54:35,900 --> 00:54:39,900 lo que va a aplicar 2640 00:54:39,900 --> 00:54:41,900 lo voy a poner mejor a la bola 2641 00:54:41,900 --> 00:54:43,900 porque la que va a recibir la bola 2642 00:54:43,900 --> 00:54:45,900 la fuerza es la bola, entonces es más fácil 2643 00:54:45,900 --> 00:54:47,900 definirlo 2644 00:54:47,900 --> 00:54:49,900 pongo otro script que es fuerza choque 2645 00:54:49,900 --> 00:54:51,900 se puede poner más de un script 2646 00:54:51,900 --> 00:54:53,900 se irán sumando las 2647 00:54:53,900 --> 00:54:55,900 lo que hayamos indicado 2648 00:54:55,900 --> 00:54:57,900 en cada uno, y si yo ahora en fuerza choque 2649 00:54:57,900 --> 00:54:59,900 lo que le digo es 2650 00:54:59,900 --> 00:55:01,900 lo que voy a decirle es 2651 00:55:01,900 --> 00:55:03,900 oye, ojo 2652 00:55:03,900 --> 00:55:05,900 cuando haya un OnCollision 2653 00:55:05,900 --> 00:55:07,900 Enter 2654 00:55:07,900 --> 00:55:09,900 lo que voy a hacer es añadirle una fuerza hacia arriba 2655 00:55:09,900 --> 00:55:11,900 y me meto en otro 2656 00:55:11,900 --> 00:55:13,900 ámbito ahora mismo 2657 00:55:13,900 --> 00:55:15,900 vamos a irlo completando, pero otro ámbito 2658 00:55:15,900 --> 00:55:17,900 lo que vamos a querer hacer es que esta bola 2659 00:55:17,900 --> 00:55:19,900 mediante su RigidBody 2660 00:55:19,900 --> 00:55:21,900 y ojo, el RigidBody 2661 00:55:21,900 --> 00:55:23,900 hago un pequeño repaso de que es 2662 00:55:23,900 --> 00:55:25,900 el RigidBody es 2663 00:55:25,900 --> 00:55:27,900 el componente que activa 2664 00:55:27,900 --> 00:55:29,900 el comportamiento físico 2665 00:55:29,900 --> 00:55:31,900 igual que los Colliders sirven para marcar 2666 00:55:31,900 --> 00:55:33,900 límites o marcar áreas que desencadenen 2667 00:55:33,900 --> 00:55:35,900 eventos o código 2668 00:55:35,900 --> 00:55:37,900 en ciertos momentos 2669 00:55:37,900 --> 00:55:39,900 el RigidBody hasta que no se pone 2670 00:55:39,900 --> 00:55:41,900 no, por ejemplo, existe ninguna 2671 00:55:41,900 --> 00:55:43,900 física, es decir, si yo tengo 2672 00:55:43,900 --> 00:55:45,900 el RigidBody aplicado a la bola 2673 00:55:45,900 --> 00:55:47,900 la bola se mueve por las leyes de la física 2674 00:55:47,900 --> 00:55:49,900 y tiene esa gravedad, porque 2675 00:55:49,900 --> 00:55:51,900 por defecto tiene este parámetro de usar gravedad 2676 00:55:51,900 --> 00:55:53,900 si yo lo quitara 2677 00:55:53,900 --> 00:55:55,900 por mucho que tengan Collider 2678 00:55:55,900 --> 00:55:57,900 los dos, pues nada, cae 2679 00:55:57,900 --> 00:55:59,900 porque no hay ningún objeto que tenga un comportamiento 2680 00:55:59,900 --> 00:56:01,900 físico, por eso el RigidBody 2681 00:56:01,900 --> 00:56:03,900 lo debería tener 2682 00:56:03,900 --> 00:56:05,900 como mínimo siempre 2683 00:56:05,900 --> 00:56:07,900 el objeto que se mueve 2684 00:56:07,900 --> 00:56:09,900 o que tiene que ver afectado por la gravedad 2685 00:56:09,900 --> 00:56:11,900 lo pueden tener también todos los objetos 2686 00:56:11,900 --> 00:56:13,900 pero para que exista una colisión 2687 00:56:13,900 --> 00:56:15,900 tiene que haber un elemento 2688 00:56:15,900 --> 00:56:17,900 que se esté moviendo, sino nunca chocan 2689 00:56:17,900 --> 00:56:19,900 por otro lado, entonces 2690 00:56:19,900 --> 00:56:21,900 vuelvo a la bola a ponerle 2691 00:56:21,900 --> 00:56:23,900 el RigidBody, que lo había aplicado 2692 00:56:23,900 --> 00:56:25,900 y ahora la bola 2693 00:56:25,900 --> 00:56:27,900 se somete a la fuerza de la gravedad 2694 00:56:27,900 --> 00:56:29,900 con, esto también está 2695 00:56:29,900 --> 00:56:31,900 en el mapa, con la masa 2696 00:56:31,900 --> 00:56:33,900 con la resistencia al aire que definamos aquí 2697 00:56:33,900 --> 00:56:35,900 ahora mismo no es lo que más me interesa 2698 00:56:35,900 --> 00:56:37,900 pero el comportamiento físico 2699 00:56:37,900 --> 00:56:39,900 de una bola no es el mismo 2700 00:56:39,900 --> 00:56:41,900 si la resistencia al aire es muy alta 2701 00:56:41,900 --> 00:56:43,900 que vais a ver que se va a ir cayendo 2702 00:56:43,900 --> 00:56:45,900 un poco más despacio que si no lo es 2703 00:56:45,900 --> 00:56:47,900 o si la masa es 2704 00:56:47,900 --> 00:56:49,900 de 100 kilos en vez de 6 2705 00:56:49,900 --> 00:56:51,900 vais a ver que cambia 2706 00:56:51,900 --> 00:56:53,900 ahora 2707 00:56:53,900 --> 00:56:55,900 aunque cuando se da play tarda un poco 2708 00:56:55,900 --> 00:56:57,900 en arrancar 2709 00:56:57,900 --> 00:56:59,900 la caída de la bola es 2710 00:56:59,900 --> 00:57:01,900 un poco más rápida porque el peso ha cambiado 2711 00:57:01,900 --> 00:57:03,900 pero lo que me interesa es 2712 00:57:03,900 --> 00:57:05,900 que cuando 2713 00:57:05,900 --> 00:57:07,900 esto por defecto viene aquí 2714 00:57:07,900 --> 00:57:09,900 escondido 2715 00:57:09,900 --> 00:57:11,900 el RigidBody también tiene información relacionada 2716 00:57:11,900 --> 00:57:13,900 con las fuerzas 2717 00:57:13,900 --> 00:57:15,900 vale, vais a ver que en el tiempo 2718 00:57:15,900 --> 00:57:17,900 que se está cayendo la bola sin yo tocar ninguna tecla 2719 00:57:17,900 --> 00:57:19,900 ahí ha habido una variación de números 2720 00:57:19,900 --> 00:57:21,900 vale, y hay 2721 00:57:21,900 --> 00:57:23,900 una dirección de ejes 2722 00:57:23,900 --> 00:57:25,900 que digamos que más allá de las fuerzas 2723 00:57:25,900 --> 00:57:27,900 que vayamos aportando 2724 00:57:27,900 --> 00:57:29,900 nos dice si la pelota yo la estoy moviendo hacia la izquierda 2725 00:57:29,900 --> 00:57:31,900 o a la derecha, vale 2726 00:57:31,900 --> 00:57:33,900 voy a darle hacia adelante y suelto 2727 00:57:33,900 --> 00:57:35,900 y por la propia inercia la pelota va teniendo 2728 00:57:35,900 --> 00:57:37,900 el RigidBody que cada vez se irá reduciendo 2729 00:57:37,900 --> 00:57:39,900 aquí por ejemplo no para nunca 2730 00:57:39,900 --> 00:57:41,900 porque la inercia vale 2731 00:57:41,900 --> 00:57:43,900 le acabo de dar un toque 2732 00:57:43,900 --> 00:57:45,900 y he soltado el teclado al control 2733 00:57:45,900 --> 00:57:47,900 la pelota sigue rodando porque no hay fricción 2734 00:57:47,900 --> 00:57:49,900 vale, este material de madera 2735 00:57:49,900 --> 00:57:51,900 pues por ejemplo 2736 00:57:51,900 --> 00:57:53,900 volviendo un poco a lo de antes 2737 00:57:53,900 --> 00:57:55,900 la plataforma del terreno 2738 00:57:55,900 --> 00:57:57,900 el material que tiene de madera 2739 00:57:57,900 --> 00:57:59,900 pues tiene una fricción 2740 00:57:59,900 --> 00:58:01,900 bastante reducida 2741 00:58:01,900 --> 00:58:03,900 o la bola, vamos a ver el material 2742 00:58:03,900 --> 00:58:05,900 de la bola, el material físico 2743 00:58:05,900 --> 00:58:07,900 lo tengo 2744 00:58:07,900 --> 00:58:09,900 a ver 2745 00:58:09,900 --> 00:58:11,900 aquí está, tengo la madera 2746 00:58:11,900 --> 00:58:13,900 y la 2747 00:58:13,900 --> 00:58:15,900 y la 2748 00:58:15,900 --> 00:58:17,900 el acero de la pelota 2749 00:58:17,900 --> 00:58:19,900 vale, si yo digo que la fricción 2750 00:58:19,900 --> 00:58:21,900 de ambos elementos 2751 00:58:21,900 --> 00:58:23,900 sea bastante elevada 2752 00:58:23,900 --> 00:58:25,900 vale 2753 00:58:25,900 --> 00:58:27,900 cuando le de al play y se esté moviendo el objeto 2754 00:58:27,900 --> 00:58:29,900 y esté en movimiento 2755 00:58:29,900 --> 00:58:31,900 vais a ver que ya sí que va a ir frenando 2756 00:58:31,900 --> 00:58:33,900 o debería, a ver 2757 00:58:33,900 --> 00:58:35,900 también está esta opción 2758 00:58:35,900 --> 00:58:37,900 es que para empezar, a ver, tengo aplicado 2759 00:58:37,900 --> 00:58:39,900 acero, vale, y en el terreno tengo 2760 00:58:39,900 --> 00:58:41,900 madera, vale 2761 00:58:41,900 --> 00:58:43,900 en madera tengo una fricción alta 2762 00:58:43,900 --> 00:58:45,900 y en esta tengo 2763 00:58:45,900 --> 00:58:47,900 una fricción alta, luego 2764 00:58:47,900 --> 00:58:49,900 esto se ve en el tema, hay que 2765 00:58:49,900 --> 00:58:51,900 ir aplicando como se combinan 2766 00:58:51,900 --> 00:58:53,900 los elementos entre sí, entonces 2767 00:58:53,900 --> 00:58:55,900 no es lo mismo 2768 00:58:55,900 --> 00:58:57,900 ahora debería ir frenando más, vale 2769 00:58:57,900 --> 00:58:59,900 que se combinen en el máximo 2770 00:58:59,900 --> 00:59:01,900 que irá sumando más 2771 00:59:01,900 --> 00:59:03,900 a ver porque no 2772 00:59:03,900 --> 00:59:05,900 voy gastando 2773 00:59:05,900 --> 00:59:07,900 creo que es porque no he 2774 00:59:07,900 --> 00:59:09,900 guardado la partida 2775 00:59:09,900 --> 00:59:11,900 a ver 2776 00:59:11,900 --> 00:59:13,900 esta fuerza 2777 00:59:13,900 --> 00:59:15,900 se está haciendo de manera continua 2778 00:59:15,900 --> 00:59:17,900 y a ver, un segundín 2779 00:59:17,900 --> 00:59:19,900 si voy a la bola, simplemente por ver 2780 00:59:19,900 --> 00:59:21,900 el funcionamiento, vale 2781 00:59:21,900 --> 00:59:23,900 ah bueno 2782 00:59:23,900 --> 00:59:25,900 claro, ya también 2783 00:59:25,900 --> 00:59:27,900 ahora os digo otro elemento 2784 00:59:27,900 --> 00:59:29,900 que es lo que está haciendo, tenemos en cuenta 2785 00:59:29,900 --> 00:59:31,900 que la bola, el comportamiento físico no tiene 2786 00:59:31,900 --> 00:59:33,900 ninguna resistencia al aire, entonces es como si 2787 00:59:33,900 --> 00:59:35,900 estuviera flotando en el espacio 2788 00:59:35,900 --> 00:59:37,900 es como la gravedad, aparte de la propia fricción 2789 00:59:37,900 --> 00:59:39,900 vale, es este 2790 00:59:39,900 --> 00:59:41,900 drag el que está definiendo 2791 00:59:41,900 --> 00:59:43,900 que siga arrastrándose o no en el 2792 00:59:43,900 --> 00:59:45,900 espacio, si no hay nada que lo detiene 2793 00:59:45,900 --> 00:59:47,900 y aquí casi que estaba flotando 2794 00:59:47,900 --> 00:59:49,900 empieza a avanzar y nada lo detiene 2795 00:59:49,900 --> 00:59:51,900 es el drag el que está haciendo esa resistencia 2796 00:59:51,900 --> 00:59:53,900 ahora sí que frena 2797 00:59:53,900 --> 00:59:55,900 ¿alguien ha dicho, ha soltado 2798 00:59:55,900 --> 00:59:57,900 algún, ha pedido 2799 00:59:57,900 --> 00:59:59,900 una pregunta 2800 00:59:59,900 --> 01:00:01,900 materiales, si cambian los materiales 2801 01:00:01,900 --> 01:00:03,900 las características, por ejemplo 2802 01:00:03,900 --> 01:00:05,900 el rozamiento, la resistencia, lo que sea 2803 01:00:05,900 --> 01:00:07,900 automáticamente te lo cambia donde lo tengas 2804 01:00:07,900 --> 01:00:09,900 ya aplicado, o lo tienes que volver a aplicar 2805 01:00:09,900 --> 01:00:11,900 lo suyo es que guardéis la escena cuando lo hagáis 2806 01:00:11,900 --> 01:00:13,900 pero sí, sí debería aplicarlo 2807 01:00:13,900 --> 01:00:15,900 sí debería, vale, lo que pasa 2808 01:00:15,900 --> 01:00:17,900 es que ahora 2809 01:00:17,900 --> 01:00:19,900 igual que antes cuando botaba 2810 01:00:19,900 --> 01:00:21,900 la pelota, botaba 2811 01:00:21,900 --> 01:00:23,900 según cambiaba aquí, vale, fijaos 2812 01:00:23,900 --> 01:00:25,900 es que la fricción no estaba funcionando porque no tenía ninguna 2813 01:00:25,900 --> 01:00:27,900 resistencia al aire, entonces se estaba 2814 01:00:27,900 --> 01:00:29,900 moviendo continuamente en el 2815 01:00:29,900 --> 01:00:31,900 espacio, digamos, pero 2816 01:00:31,900 --> 01:00:33,900 si voy a los materiales, fijaos 2817 01:00:33,900 --> 01:00:35,900 tengo aquí la bola, y la bola 2818 01:00:35,900 --> 01:00:37,900 le digo que es de la cero 2819 01:00:37,900 --> 01:00:39,900 tenga mucho bote 2820 01:00:39,900 --> 01:00:41,900 si le doy al play, vamos 2821 01:00:41,900 --> 01:00:43,900 si lo cambio aquí en el material, vale, y le doy al play 2822 01:00:43,900 --> 01:00:45,900 vais a ver que ya tiene ese bote aplicado 2823 01:00:45,900 --> 01:00:47,900 entonces sí se aplica directamente 2824 01:00:47,900 --> 01:00:49,900 si yo por ejemplo digo cero, vais a ver que no 2825 01:00:49,900 --> 01:00:51,900 vale 2826 01:00:51,900 --> 01:00:53,900 entonces sí, se cambia directamente 2827 01:00:53,900 --> 01:00:55,900 si cambias el material físico 2828 01:00:55,900 --> 01:00:57,900 ya afecta a todos los materiales que lo tengan 2829 01:00:57,900 --> 01:00:59,900 aplicados, a todos los colliders que tengan 2830 01:00:59,900 --> 01:01:01,900 aplicados ese material físico, sí 2831 01:01:01,900 --> 01:01:03,900 sí 2832 01:01:03,900 --> 01:01:05,900 a ver, es que como no veo a veces 2833 01:01:05,900 --> 01:01:07,900 vale, sí, me 2834 01:01:07,900 --> 01:01:09,900 queda resuelta 2835 01:01:09,900 --> 01:01:11,900 la duda 2836 01:01:11,900 --> 01:01:13,900 sí, vale, perfecto 2837 01:01:13,900 --> 01:01:15,900 entonces, vamos a seguir con esto 2838 01:01:15,900 --> 01:01:17,900 lo que hay que pensar 2839 01:01:17,900 --> 01:01:19,900 cuando añadimos fuerzas, vale 2840 01:01:19,900 --> 01:01:21,900 es que a la que estamos añadiendole 2841 01:01:21,900 --> 01:01:23,900 fuerzas en todo momento es a este cuerpo de simulación 2842 01:01:23,900 --> 01:01:25,900 física, este rigidbody, por eso 2843 01:01:25,900 --> 01:01:27,900 cuando afectemos por código 2844 01:01:27,900 --> 01:01:29,900 a algún elemento que 2845 01:01:29,900 --> 01:01:31,900 aplique fuerzas a nivel físico 2846 01:01:31,900 --> 01:01:33,900 tendremos que afectar a este componente 2847 01:01:33,900 --> 01:01:35,900 porque lo que básicamente vamos a hacer 2848 01:01:35,900 --> 01:01:37,900 es darle una velocidad a una fuerza 2849 01:01:37,900 --> 01:01:39,900 en un ángulo de velocidad también 2850 01:01:39,900 --> 01:01:41,900 vale, no es 2851 01:01:41,900 --> 01:01:43,900 esto, a lo mejor es un poco enrevesado 2852 01:01:43,900 --> 01:01:45,900 pero vamos a ello 2853 01:01:45,900 --> 01:01:47,900 básicamente lo que estamos intentando hacer 2854 01:01:47,900 --> 01:01:49,900 es que cuando la pelota 2855 01:01:49,900 --> 01:01:51,900 a ver 2856 01:01:51,900 --> 01:01:53,900 y la tengo aquí 2857 01:01:53,900 --> 01:01:55,900 la fuerza de choque, aquí está, no sé 2858 01:01:55,900 --> 01:01:57,900 porque no se está viendo, la tengo aquí oculta 2859 01:01:57,900 --> 01:01:59,900 debe ser, vale, la fuerza de choque 2860 01:01:59,900 --> 01:02:01,900 vale, tengo aquí un script 2861 01:02:01,900 --> 01:02:03,900 que ahora lo que yo meta aquí va a funcionar 2862 01:02:03,900 --> 01:02:05,900 no, entonces, por ejemplo 2863 01:02:05,900 --> 01:02:07,900 para hacer la prueba, siempre las pruebas, los debug logs 2864 01:02:07,900 --> 01:02:09,900 vienen perfectos 2865 01:02:13,900 --> 01:02:15,900 la pelota 2866 01:02:15,900 --> 01:02:17,900 se ha posado, vale 2867 01:02:17,900 --> 01:02:19,900 y ahora cuando guardo y le doy aquí a la ejecución 2868 01:02:19,900 --> 01:02:21,900 cuando choque 2869 01:02:21,900 --> 01:02:23,900 la pelota se ha posado, y solo una vez 2870 01:02:23,900 --> 01:02:25,900 porque es una enter, vale 2871 01:02:25,900 --> 01:02:27,900 entonces, ahora lo que vamos a hacer, ya que sabemos 2872 01:02:27,900 --> 01:02:29,900 que está funcionando este script, es 2873 01:02:29,900 --> 01:02:31,900 aplicar una fuerza al 2874 01:02:31,900 --> 01:02:33,900 rigidbody, vale 2875 01:02:33,900 --> 01:02:35,900 para que lo empuje hacia otro lado, vale 2876 01:02:35,900 --> 01:02:37,900 que esto entiendo que ya 2877 01:02:37,900 --> 01:02:39,900 cuando habéis empezado con la práctica 2878 01:02:39,900 --> 01:02:41,900 habréis hecho algo similar, no 2879 01:02:41,900 --> 01:02:43,900 recordad que cuando declaramos una variable 2880 01:02:43,900 --> 01:02:45,900 como un float o un 2881 01:02:45,900 --> 01:02:47,900 int o un booleano, lo primero que se ponía era 2882 01:02:47,900 --> 01:02:49,900 el tipo de variable 2883 01:02:49,900 --> 01:02:51,900 en este caso, números decimales 2884 01:02:51,900 --> 01:02:53,900 y esto, aquí se pone el 2885 01:02:53,900 --> 01:02:55,900 el 2886 01:02:55,900 --> 01:02:57,900 nombre de esa variable, vale 2887 01:02:57,900 --> 01:02:59,900 pero ya os adelanté en algún momento que 2888 01:02:59,900 --> 01:03:01,900 el tipo de variable también puede ser o puede 2889 01:03:01,900 --> 01:03:03,900 coincidir con el nombre de los componentes 2890 01:03:03,900 --> 01:03:05,900 esto si recordáis 2891 01:03:05,900 --> 01:03:07,900 hicimos alguna prueba que es pues 2892 01:03:07,900 --> 01:03:09,900 el rigidbody tiene una especie de contenedor 2893 01:03:09,900 --> 01:03:11,900 vale, porque es una clase 2894 01:03:11,900 --> 01:03:13,900 en sí misma, vale, esta terminología 2895 01:03:13,900 --> 01:03:15,900 no quiero meterme mucho porque es 2896 01:03:15,900 --> 01:03:17,900 más enrevesado que entenderlo así 2897 01:03:17,900 --> 01:03:19,900 como que las variables 2898 01:03:19,900 --> 01:03:21,900 también pueden ser cajas 2899 01:03:21,900 --> 01:03:23,900 este ejemplo de las cajas, que albergue 2900 01:03:23,900 --> 01:03:25,900 una digamos 2901 01:03:25,900 --> 01:03:27,900 una referencia a un componente 2902 01:03:27,900 --> 01:03:29,900 entonces yo voy a poner este rigidbody 2903 01:03:29,900 --> 01:03:31,900 y le voy a llamar 2904 01:03:31,900 --> 01:03:33,900 por convención muchas veces se pone esto de rb 2905 01:03:33,900 --> 01:03:35,900 de rb, de rigidbody 2906 01:03:35,900 --> 01:03:37,900 pero lo de siempre, este es el nombre 2907 01:03:37,900 --> 01:03:39,900 se podría llamar también 2908 01:03:39,900 --> 01:03:41,900 aplicafuerzas 2909 01:03:41,900 --> 01:03:43,900 lo que sea, vale, esto es un nombre 2910 01:03:43,900 --> 01:03:45,900 para luego referenciarlo 2911 01:03:45,900 --> 01:03:47,900 y en este rigidbody, en esta caja que hemos preparado aquí 2912 01:03:47,900 --> 01:03:49,900 que hemos declarado, vale 2913 01:03:49,900 --> 01:03:51,900 cuando arranque el script 2914 01:03:51,900 --> 01:03:53,900 ahora mismo tenemos una caja que sabemos que 2915 01:03:53,900 --> 01:03:55,900 puede contener aquí un rigidbody 2916 01:03:55,900 --> 01:03:57,900 pero tenemos que indicar por código 2917 01:03:57,900 --> 01:03:59,900 que lo que vayamos a hacer sobre esta variable 2918 01:03:59,900 --> 01:04:01,900 sea sobre este rigidbody 2919 01:04:01,900 --> 01:04:03,900 aplicado 2920 01:04:03,900 --> 01:04:05,900 que está dentro 2921 01:04:05,900 --> 01:04:07,900 del objeto concreto 2922 01:04:07,900 --> 01:04:09,900 es decir 2923 01:04:09,900 --> 01:04:11,900 voy a explicar 2924 01:04:11,900 --> 01:04:13,900 voy a escribir primero la línea 2925 01:04:13,900 --> 01:04:15,900 y luego la vemos en detalle 2926 01:04:15,900 --> 01:04:17,900 esta variable 2927 01:04:17,900 --> 01:04:19,900 al lanzar el script en el start 2928 01:04:19,900 --> 01:04:21,900 vamos a decirle que 2929 01:04:21,900 --> 01:04:23,900 guarde dentro un componente 2930 01:04:23,900 --> 01:04:25,900 o que coja lo relativo a un componente 2931 01:04:25,900 --> 01:04:27,900 que también es de tipo 2932 01:04:27,900 --> 01:04:29,900 rigidbody 2933 01:04:29,900 --> 01:04:31,900 esto las primeras veces que se hace es complicado 2934 01:04:31,900 --> 01:04:33,900 es muy importante 2935 01:04:33,900 --> 01:04:35,900 no es aplicar fuerzas 2936 01:04:35,900 --> 01:04:37,900 es muy importante entenderlo 2937 01:04:37,900 --> 01:04:39,900 aquí hemos generado una caja 2938 01:04:39,900 --> 01:04:41,900 que se puede dirigir a lo que tenga 2939 01:04:41,900 --> 01:04:43,900 un componente rigidbody 2940 01:04:43,900 --> 01:04:45,900 esté en el game object que esté 2941 01:04:45,900 --> 01:04:47,900 es decir, es una clase que está ahí configurada 2942 01:04:47,900 --> 01:04:49,900 para 2943 01:04:49,900 --> 01:04:51,900 tocar 2944 01:04:51,900 --> 01:04:53,900 para poder aplicar 2945 01:04:53,900 --> 01:04:55,900 todo lo relativo a rigidbody 2946 01:04:55,900 --> 01:04:57,900 pero hasta que no le decimos 2947 01:04:57,900 --> 01:04:59,900 que toque el rigidbody 2948 01:04:59,900 --> 01:05:01,900 que guarde el rigidbody que está aplicado en este objeto 2949 01:05:01,900 --> 01:05:03,900 el script fuerza choque 2950 01:05:03,900 --> 01:05:05,900 está en este objeto 2951 01:05:05,900 --> 01:05:07,900 lo que va a hacer aquí es 2952 01:05:07,900 --> 01:05:09,900 aquí tenemos un código que lo que le va a decir 2953 01:05:09,900 --> 01:05:11,900 es, oye, búscame o coge 2954 01:05:11,900 --> 01:05:13,900 el componente rigidbody que haya en este objeto 2955 01:05:13,900 --> 01:05:15,900 más adelante 2956 01:05:15,900 --> 01:05:17,900 se va a poder decir, oye 2957 01:05:17,900 --> 01:05:19,900 quiero que me cojas 2958 01:05:19,900 --> 01:05:21,900 por ejemplo 2959 01:05:21,900 --> 01:05:23,900 a ver 2960 01:05:23,900 --> 01:05:25,900 esto lo hago de ejemplo, es más avanzado 2961 01:05:25,900 --> 01:05:27,900 imaginaos que tengo otro objeto, lo creo muy rápido 2962 01:05:27,900 --> 01:05:29,900 un cubo 2963 01:05:29,900 --> 01:05:31,900 que también tenga un rigidbody 2964 01:05:31,900 --> 01:05:33,900 a ver 2965 01:05:33,900 --> 01:05:35,900 el cubo 2966 01:05:35,900 --> 01:05:37,900 y aquí hay un cubo también que tiene 2967 01:05:37,900 --> 01:05:39,900 y de hecho, vamos a hacer el ejemplo bien hecho 2968 01:05:39,900 --> 01:05:41,900 y así también lo explico 2969 01:05:41,900 --> 01:05:43,900 dejo ahí el cubo 2970 01:05:43,900 --> 01:05:45,900 de este cubo aquí 2971 01:05:45,900 --> 01:05:47,900 lo voy a hacer más pequeño 2972 01:05:47,900 --> 01:05:49,900 simplemente para el ejemplo 2973 01:05:49,900 --> 01:05:51,900 y 2974 01:05:51,900 --> 01:05:53,900 lo pongo aquí 2975 01:05:53,900 --> 01:05:55,900 por defecto las formas primitivas 2976 01:05:55,900 --> 01:05:57,900 ya tienen su collider 2977 01:05:57,900 --> 01:05:59,900 lo que no va a ocurrir es que caiga 2978 01:05:59,900 --> 01:06:01,900 por el efecto de la gravedad dado que 2979 01:06:01,900 --> 01:06:03,900 le hemos puesto un rigidbody 2980 01:06:03,900 --> 01:06:05,900 le damos a rigidbody y ahora con su masa 2981 01:06:05,900 --> 01:06:07,900 etcétera, bueno, la dejo por defecto 2982 01:06:07,900 --> 01:06:09,900 ya caen los dos objetos y se quedan ahí 2983 01:06:09,900 --> 01:06:11,900 y de hecho, mirad que yo la bola 2984 01:06:11,900 --> 01:06:13,900 si choco contra ese objeto lo empuja 2985 01:06:13,900 --> 01:06:15,900 porque tiene comportamiento 2986 01:06:15,900 --> 01:06:17,900 físico 2987 01:06:17,900 --> 01:06:19,900 y fijaos que reacciona 2988 01:06:19,900 --> 01:06:21,900 y bueno, mirad que siempre 2989 01:06:21,900 --> 01:06:23,900 que la pelota toca un collider 2990 01:06:23,900 --> 01:06:25,900 como teníamos ese onCollisionEnter 2991 01:06:25,900 --> 01:06:27,900 desencadena un mensaje, cada vez que choco 2992 01:06:27,900 --> 01:06:29,900 imaginaos 2993 01:06:29,900 --> 01:06:31,900 en vez de poner un debug log quito vida 2994 01:06:31,900 --> 01:06:33,900 pues menos 20 cada vez que choco 2995 01:06:33,900 --> 01:06:35,900 vale, lo que me importa ahora mismo 2996 01:06:35,900 --> 01:06:37,900 es que yo 2997 01:06:37,900 --> 01:06:39,900 esto es para explicar el que es componer 2998 01:06:39,900 --> 01:06:41,900 que es algo muy interesante 2999 01:06:41,900 --> 01:06:43,900 ahora mismo cuando choque la pelota 3000 01:06:43,900 --> 01:06:45,900 le voy a poner 3001 01:06:45,900 --> 01:06:47,900 cuando hay una colisión 3002 01:06:47,900 --> 01:06:49,900 voy a hacer que aplicar fuerzas 3003 01:06:49,900 --> 01:06:51,900 que es 3004 01:06:51,900 --> 01:06:53,900 ese componente que está dentro del mismo objeto 3005 01:06:53,900 --> 01:06:55,900 que está aplicado 3006 01:06:55,900 --> 01:06:57,900 a la bola 3007 01:06:57,900 --> 01:06:59,900 en ese caso, le voy a aplicar una fuerza 3008 01:06:59,900 --> 01:07:01,900 con 3009 01:07:01,900 --> 01:07:03,900 uno de los métodos 3010 01:07:03,900 --> 01:07:05,900 de RigidBody 3011 01:07:05,900 --> 01:07:07,900 vale, esto 3012 01:07:07,900 --> 01:07:09,900 porque ha sido hasta este punto 3013 01:07:09,900 --> 01:07:11,900 para que nosotros digamos podamos lanzar 3014 01:07:11,900 --> 01:07:13,900 un AddForce por ejemplo 3015 01:07:13,900 --> 01:07:15,900 yo aunque aquí empiece a escribir Add 3016 01:07:15,900 --> 01:07:17,900 no sale nada 3017 01:07:17,900 --> 01:07:19,900 no existe este método en sí mismo 3018 01:07:19,900 --> 01:07:21,900 es un método que está asociado siempre 3019 01:07:21,900 --> 01:07:23,900 a un RigidBody 3020 01:07:23,900 --> 01:07:25,900 entonces hasta que no tenemos esta caja 3021 01:07:25,900 --> 01:07:27,900 ya llena con 3022 01:07:27,900 --> 01:07:29,900 un RigidBody, con un componente 3023 01:07:29,900 --> 01:07:31,900 aquí no podemos aplicar fuerzas, es decir 3024 01:07:31,900 --> 01:07:33,900 aquí tenemos que decir 3025 01:07:33,900 --> 01:07:35,900 a este RigidBody que estoy guardando aquí 3026 01:07:35,900 --> 01:07:37,900 llamado AplicaFuerzas, le voy a añadir una fuerza 3027 01:07:37,900 --> 01:07:39,900 en este caso que sea 3028 01:07:39,900 --> 01:07:41,900 hacia arriba 3029 01:07:41,900 --> 01:07:43,900 para que sea hacia arriba 3030 01:07:43,900 --> 01:07:45,900 se podría hacer un vector 3 3031 01:07:45,900 --> 01:07:47,900 con los números 3032 01:07:47,900 --> 01:07:49,900 que nosotros queramos en cada eje 3033 01:07:49,900 --> 01:07:51,900 o se puede 3034 01:07:51,900 --> 01:07:53,900 usar una de las opciones simplificadas 3035 01:07:53,900 --> 01:07:55,900 que hay, por ejemplo el de Up 3036 01:07:55,900 --> 01:07:57,900 que es el de 3037 01:07:57,900 --> 01:07:59,900 que tiene una dirección hacia arriba 3038 01:07:59,900 --> 01:08:01,900 ahí estamos viendo que es el atajo 3039 01:08:01,900 --> 01:08:03,900 del 0, 1, 0 y el 1 es 3040 01:08:03,900 --> 01:08:05,900 el eje Y, el eje vertical 3041 01:08:05,900 --> 01:08:07,900 entonces aquí va a haber un salto 3042 01:08:07,900 --> 01:08:09,900 cuando choque va a añadir 3043 01:08:09,900 --> 01:08:11,900 una fuerza hacia arriba 3044 01:08:11,900 --> 01:08:13,900 ahora mismo va a ser muy pequeño 3045 01:08:13,900 --> 01:08:15,900 ese salto, va a aplicar muy poca fuerza 3046 01:08:15,900 --> 01:08:17,899 porque es solo un 1 3047 01:08:17,899 --> 01:08:19,899 más o menos se ve 3048 01:08:19,899 --> 01:08:21,899 voy a decir que esa fuerza 3049 01:08:21,899 --> 01:08:23,899 para que no sea un 0, 1, 0 3050 01:08:23,899 --> 01:08:25,899 lo voy a multiplicar por 100 3051 01:08:25,899 --> 01:08:27,899 esto para que se vea 3052 01:08:27,899 --> 01:08:29,899 claramente 3053 01:08:29,899 --> 01:08:31,899 le doy y cuando choca 3054 01:08:31,899 --> 01:08:33,899 y primero tendré que guardar 3055 01:08:33,899 --> 01:08:35,899 el script 3056 01:08:35,899 --> 01:08:37,899 esta guardada 3057 01:08:37,899 --> 01:08:39,899 AddForce, CollisionEnter 3058 01:08:39,899 --> 01:08:41,899 AplicaFuerzas, AddForce 3059 01:08:41,899 --> 01:08:43,899 vector 3060 01:08:43,899 --> 01:08:45,899 lo voy a poner mucho más 3061 01:08:45,899 --> 01:08:47,899 y guardo 3062 01:08:47,899 --> 01:08:49,899 cuando la pelota 3063 01:08:49,899 --> 01:08:51,899 la bola que es la que tiene 3064 01:08:51,899 --> 01:08:53,899 este script de fuerza choque toque otro 3065 01:08:53,899 --> 01:08:55,899 collider, le va a aplicar 3066 01:08:55,899 --> 01:08:57,899 a esta pelota una fuerza 3067 01:08:57,899 --> 01:08:59,899 hacia arriba 3068 01:08:59,899 --> 01:09:01,899 ¿Qué está ocurriendo? 3069 01:09:01,899 --> 01:09:03,899 el problema que está viendo 3070 01:09:03,899 --> 01:09:05,899 cuando la pelota gira 3071 01:09:05,899 --> 01:09:07,899 es que ahora 3072 01:09:07,899 --> 01:09:09,899 me he pasado 3073 01:09:13,899 --> 01:09:15,899 veis que ahora cada vez que 3074 01:09:15,899 --> 01:09:17,899 choca con el suelo está aplicando 3075 01:09:17,899 --> 01:09:19,899 una fuerza, ahora no es el material que está dando el bote 3076 01:09:19,899 --> 01:09:21,899 es 3077 01:09:21,899 --> 01:09:23,899 que la pelota al chocar 3078 01:09:23,899 --> 01:09:25,899 está recibiendo una fuerza hacia arriba 3079 01:09:25,899 --> 01:09:27,899 por ejemplo en vez de decir 3080 01:09:27,899 --> 01:09:29,899 que vaya hacia 3081 01:09:29,899 --> 01:09:31,899 arriba vamos a decir que la fuerza sea hacia adelante 3082 01:09:31,899 --> 01:09:33,899 y por esto precisamente 3083 01:09:33,899 --> 01:09:35,899 es por lo que es importante lo de gestionar bien la orientación 3084 01:09:35,899 --> 01:09:37,899 que he dicho antes Javi 3085 01:09:37,899 --> 01:09:39,899 del juego porque el hacia adelante 3086 01:09:39,899 --> 01:09:41,899 se refiere en este caso hacia el eje Z 3087 01:09:41,899 --> 01:09:43,899 entonces cuando la pelota 3088 01:09:43,899 --> 01:09:45,899 esto quiere decir cuando la pelota colisione con algo 3089 01:09:45,899 --> 01:09:47,899 va a recibir una fuerza 3090 01:09:47,899 --> 01:09:49,899 de 1000 en este caso porque 3091 01:09:49,899 --> 01:09:51,899 está multiplicándose por eso en el vector 3092 01:09:51,899 --> 01:09:53,899 hacia el fondo, hacia el Z 3093 01:09:53,899 --> 01:09:55,899 y vais a ver que yo sin tocar nada 3094 01:09:55,899 --> 01:09:57,899 cuando toco ya tiene una fuerza 3095 01:09:57,899 --> 01:09:59,899 que se aplica, yo no he tocado nada, ¿veis? 3096 01:09:59,899 --> 01:10:01,899 de hecho si le doy más fuerte 3097 01:10:01,899 --> 01:10:03,899 voy a ponerle dos ceros más 3098 01:10:03,899 --> 01:10:05,899 va a ser demasiado, lo que va a hacer es salir disparado 3099 01:10:05,899 --> 01:10:07,899 precisamente en la dirección de la caja 3100 01:10:07,899 --> 01:10:09,899 y va a chocar contra la caja, de hecho me pasa 3101 01:10:09,899 --> 01:10:11,899 y le ha dado una fuerza 3102 01:10:11,899 --> 01:10:13,899 increíble, voy a quitarle un cero 3103 01:10:13,899 --> 01:10:15,899 ¿vale? 3104 01:10:15,899 --> 01:10:17,899 aquí lanzó el juego y ahora sin tocar 3105 01:10:17,899 --> 01:10:19,899 nada, plas, le ha lanzado una fuerza 3106 01:10:19,899 --> 01:10:21,899 bastante fuerte, ¿vale? veis que la acción 3107 01:10:21,899 --> 01:10:23,899 de 3108 01:10:23,899 --> 01:10:25,899 añadir esta fuerza 3109 01:10:25,899 --> 01:10:27,899 se aplica en el momento que se detecta una colisión 3110 01:10:27,899 --> 01:10:29,899 ¿vale? 3111 01:10:29,899 --> 01:10:31,899 entonces si 3112 01:10:31,899 --> 01:10:33,899 por ejemplo yo pusiera aquí un stay sería una locura 3113 01:10:33,899 --> 01:10:35,899 porque cada fotograma estaría aplicando 3114 01:10:35,899 --> 01:10:37,899 una fuerza de 10000 en este caso 3115 01:10:37,899 --> 01:10:39,899 entonces se irían sumando 3116 01:10:39,899 --> 01:10:41,899 o que cuando salga sea cuando aplique la fuerza 3117 01:10:41,899 --> 01:10:43,899 bueno, pues 3118 01:10:43,899 --> 01:10:45,899 esto me sirve 3119 01:10:45,899 --> 01:10:47,899 no sé si me vais siguiendo 3120 01:10:47,899 --> 01:10:49,899 sirve para 3121 01:10:49,899 --> 01:10:51,899 ir viendo que long collision enter 3122 01:10:51,899 --> 01:10:53,899 sirve para detectar 3123 01:10:53,899 --> 01:10:55,899 estas colisiones 3124 01:10:55,899 --> 01:10:57,899 por lo que he puesto este cubo 3125 01:10:57,899 --> 01:10:59,899 también tiene su rigid body 3126 01:10:59,899 --> 01:11:01,899 y a lo mejor lo que podemos hacer 3127 01:11:01,899 --> 01:11:03,899 esto es más avanzado, pero ya lo hemos hecho 3128 01:11:03,899 --> 01:11:05,899 realmente al instanciar, es 3129 01:11:05,899 --> 01:11:07,899 que podemos decir, ¿vale? 3130 01:11:07,899 --> 01:11:09,899 por código, vamos a hacer el planteamiento de que cuando 3131 01:11:09,899 --> 01:11:11,899 la bola colisione con algo 3132 01:11:11,899 --> 01:11:13,899 es decir, contra la plataforma va a ser lo primero que colisione 3133 01:11:13,899 --> 01:11:15,899 que sea el cubo el que reciba 3134 01:11:15,899 --> 01:11:17,899 una fuerza, claro ahí 3135 01:11:17,899 --> 01:11:19,899 ahora mismo el código 3136 01:11:19,899 --> 01:11:21,899 lo que está haciendo es 3137 01:11:21,899 --> 01:11:23,899 aplicar fuerza al componente 3138 01:11:23,899 --> 01:11:25,899 que lleva el objeto, porque estamos cogiendo el 3139 01:11:25,899 --> 01:11:27,899 componente, ¿vale? 3140 01:11:27,899 --> 01:11:29,899 al instanciado a la bola 3141 01:11:29,899 --> 01:11:31,899 porque está cogiendo el componente del 3142 01:11:31,899 --> 01:11:33,899 mismo objeto que tiene la bola, pero nosotros 3143 01:11:33,899 --> 01:11:35,899 por ejemplo aquí lo que podemos decir es 3144 01:11:35,899 --> 01:11:37,899 yo quiero que coja 3145 01:11:39,899 --> 01:11:41,899 el componente de otro objeto 3146 01:11:41,899 --> 01:11:43,899 si recordáis lo que hacíamos era 3147 01:11:43,899 --> 01:11:45,899 por ejemplo mediante un serialize field 3148 01:11:45,899 --> 01:11:47,899 lo que podemos hacer es 3149 01:11:47,899 --> 01:11:49,899 indicar objetos de la escena, ¿vale? 3150 01:11:49,899 --> 01:11:51,899 voy a decir que tal game object 3151 01:11:51,899 --> 01:11:53,899 que va a ser el cubo, ¿vale? 3152 01:11:53,899 --> 01:11:55,899 que sea el que del que 3153 01:11:55,899 --> 01:11:57,899 cojamos el componente, entonces 3154 01:11:57,899 --> 01:11:59,899 ahora mismo nosotros en esta bola 3155 01:11:59,899 --> 01:12:01,899 bueno, voy a guardar porque si no 3156 01:12:01,899 --> 01:12:03,899 no se refleja 3157 01:12:03,899 --> 01:12:05,899 lo que hemos hecho es que en el cubo 3158 01:12:05,899 --> 01:12:07,899 digo, en la bola, perdonad 3159 01:12:07,899 --> 01:12:09,899 haya un espacio esperando a que le digamos 3160 01:12:09,899 --> 01:12:11,899 oye, este objeto cubo 3161 01:12:11,899 --> 01:12:13,899 ¿vale? que sea el que yo 3162 01:12:13,899 --> 01:12:15,899 referencio en 3163 01:12:15,899 --> 01:12:17,899 en este, en esta caja 3164 01:12:17,899 --> 01:12:19,899 que he creado aquí de un game object 3165 01:12:19,899 --> 01:12:21,899 entonces nosotros lo que podemos decir es 3166 01:12:21,899 --> 01:12:23,899 oye, yo quiero coger el componente 3167 01:12:23,899 --> 01:12:25,899 ¿vale? pero de 3168 01:12:25,899 --> 01:12:27,899 el componente RigidBody pero de otro 3169 01:12:27,899 --> 01:12:29,899 objeto que está en la escena que es el cubo 3170 01:12:29,899 --> 01:12:31,899 ¿vale? ahora mismo 3171 01:12:31,899 --> 01:12:33,899 lo que estamos haciendo es 3172 01:12:33,899 --> 01:12:35,899 ¿vale? tenemos una caja de tipo RigidBody 3173 01:12:35,899 --> 01:12:37,899 en la que a través de esta variable 3174 01:12:37,899 --> 01:12:39,899 podremos introducirnos 3175 01:12:39,899 --> 01:12:41,899 en todos los parámetros 3176 01:12:41,899 --> 01:12:43,899 que tenga un componente RigidBody 3177 01:12:43,899 --> 01:12:45,899 pero, ¿vale? yo puedo decirle luego 3178 01:12:45,899 --> 01:12:47,899 ¿vale? pero que este RigidBody lo que coja es 3179 01:12:47,899 --> 01:12:49,899 el componente 3180 01:12:49,899 --> 01:12:51,899 RigidBody, ¿vale? es el mismo 3181 01:12:51,899 --> 01:12:53,899 componente, se escribe así la sintaxis 3182 01:12:53,899 --> 01:12:55,899 hay que aprendérsela, del objeto 3183 01:12:55,899 --> 01:12:57,899 que yo haya indicado que es este cubo 3184 01:12:57,900 --> 01:12:59,900 ¿vale? ahora mismo estamos 3185 01:12:59,900 --> 01:13:01,900 a través de un script que está 3186 01:13:01,900 --> 01:13:03,900 en la bola, luego afectando 3187 01:13:03,900 --> 01:13:05,900 a otro objeto que hemos 3188 01:13:05,900 --> 01:13:07,900 indicado mediante el serializeField 3189 01:13:07,900 --> 01:13:09,900 entonces ahora aplicar fuerzas en todo momento 3190 01:13:09,900 --> 01:13:11,900 a quien está afectando, no es a la bola 3191 01:13:11,900 --> 01:13:13,900 está cogiendo el componente RigidBody 3192 01:13:13,900 --> 01:13:15,900 del cubo, ¿vale? porque aquí 3193 01:13:15,900 --> 01:13:17,900 estamos afectando al cubo 3194 01:13:17,900 --> 01:13:19,900 entonces vais a ver ahora que 3195 01:13:19,900 --> 01:13:21,900 cuando la pelota 3196 01:13:21,900 --> 01:13:23,900 toque, voy a de hecho 3197 01:13:23,900 --> 01:13:25,900 hacer que el cubo este ya posado 3198 01:13:25,900 --> 01:13:27,900 ¿vale? para que veáis que no es, porque 3199 01:13:27,900 --> 01:13:29,900 el cubo está tocando, sino que es la pelota 3200 01:13:29,900 --> 01:13:31,900 cuando yo 3201 01:13:31,900 --> 01:13:33,900 consiga que la pelota colisione con algo 3202 01:13:33,900 --> 01:13:35,900 veis que el cubo se ha ido bien lejos 3203 01:13:35,900 --> 01:13:37,900 voy a bajarle un poco la fuerza para que se vea mejor 3204 01:13:37,900 --> 01:13:39,900 ¿vale? entonces 3205 01:13:39,900 --> 01:13:41,900 aquí estamos referenciando un objeto con otro 3206 01:13:41,900 --> 01:13:43,900 ¿vale? cuando tal 3207 01:13:43,900 --> 01:13:45,900 se ha ido para adelante, ha salido despedido 3208 01:13:45,900 --> 01:13:47,900 ¿vale? ¿qué tal hasta aquí? 3209 01:13:47,900 --> 01:13:49,900 me vais siguiendo, esto me sirve un poco para que veáis 3210 01:13:49,900 --> 01:13:51,900 el GetComponent, ¿vale? o por 3211 01:13:51,900 --> 01:13:53,900 ejemplo, también hay formas más avanzadas 3212 01:13:53,900 --> 01:13:55,900 ya las iremos poniendo en juego 3213 01:13:55,900 --> 01:13:57,900 que es que en vez de decir 3214 01:13:57,900 --> 01:13:59,900 mediante un serializeField 3215 01:13:59,900 --> 01:14:01,900 y arrastrando al inspector, como hacíamos 3216 01:14:01,900 --> 01:14:03,900 en las instancias, que sea el otro objeto 3217 01:14:03,900 --> 01:14:05,900 en el que se introduzca para coger el componente 3218 01:14:05,900 --> 01:14:07,900 hay otras formas de 3219 01:14:07,900 --> 01:14:09,900 hacer esto, que es por ejemplo 3220 01:14:09,900 --> 01:14:11,900 el método 3221 01:14:11,900 --> 01:14:13,900 find, que es si aquí decimos 3222 01:14:13,900 --> 01:14:15,900 que un GameObject 3223 01:14:15,900 --> 01:14:17,900 busque 3224 01:14:17,900 --> 01:14:19,900 un objeto que tenga 3225 01:14:19,900 --> 01:14:21,900 un nombre concreto 3226 01:14:21,900 --> 01:14:23,900 ¿vale? por ejemplo, esto es simplemente para que os suene 3227 01:14:23,900 --> 01:14:25,900 que existe ¿vale? entiendo que ahora mismo es más avanzado 3228 01:14:25,900 --> 01:14:27,900 pero si vamos a 3229 01:14:27,900 --> 01:14:29,900 viendo que dentro de la clase GameObject 3230 01:14:29,900 --> 01:14:31,900 hay un, igual que aquí pasaba 3231 01:14:31,900 --> 01:14:33,900 que hasta que no estamos usando una 3232 01:14:33,900 --> 01:14:35,900 variable de tipo RigidBody, no sale 3233 01:14:35,900 --> 01:14:37,900 statForce, cuando ponemos la clase 3234 01:14:37,900 --> 01:14:39,900 GameObject ¿vale? la clase con la 3235 01:14:39,900 --> 01:14:41,900 G mayúscula, hay un método 3236 01:14:41,900 --> 01:14:43,900 suyo que es find, y find sirve 3237 01:14:43,900 --> 01:14:45,900 como pasa si nos ponemos aquí 3238 01:14:45,900 --> 01:14:47,900 que encuentra objetos 3239 01:14:47,900 --> 01:14:49,900 GameObject por un nombre ¿vale? 3240 01:14:49,900 --> 01:14:51,900 y entonces ahora estamos diciendo, oye 3241 01:14:51,900 --> 01:14:53,900 en el nivel que estemos, búscame 3242 01:14:53,900 --> 01:14:55,900 a ver si hay un GameObject 3243 01:14:55,900 --> 01:14:57,900 llamado cubo ¿vale? que es el que hemos dicho 3244 01:14:57,900 --> 01:14:59,900 y si existe ¿vale? 3245 01:14:59,900 --> 01:15:01,900 cuando lo busques, coge de ese objeto 3246 01:15:01,900 --> 01:15:03,900 su componente RigidBody 3247 01:15:03,900 --> 01:15:05,900 el que esté dentro de cubo ¿vale? 3248 01:15:05,900 --> 01:15:07,900 ahora mismo lo que estamos haciendo es lo mismo 3249 01:15:07,900 --> 01:15:09,900 ¿vale? sin tener 3250 01:15:09,900 --> 01:15:11,900 sin tener que apelar a 3251 01:15:11,900 --> 01:15:13,900 ningún objeto mediante el 3252 01:15:13,900 --> 01:15:15,900 inspector, es decir, ahora la bola 3253 01:15:15,900 --> 01:15:17,900 no tiene ningún campo 3254 01:15:17,900 --> 01:15:19,900 en ningún momento hemos dicho que sea el cubo 3255 01:15:19,900 --> 01:15:21,900 arrastrando del que coja este componente 3256 01:15:21,900 --> 01:15:23,900 hemos dicho, oye busca 3257 01:15:23,900 --> 01:15:25,900 que haya un objeto que se llame cubo, y si eso 3258 01:15:25,900 --> 01:15:27,900 guarda en esta variable aplicarFuerza 3259 01:15:27,900 --> 01:15:29,900 su RigidBody, y ahora 3260 01:15:29,900 --> 01:15:31,900 aplicarFuerza le estamos diciendo 3261 01:15:31,900 --> 01:15:33,900 que a este RigidBody que hemos guardado 3262 01:15:33,900 --> 01:15:35,900 le aplicamos esa fuerza, y vais a ver que el comportamiento 3263 01:15:35,900 --> 01:15:37,900 es en lo mismo ¿vale? 3264 01:15:37,900 --> 01:15:39,900 a ver, he bajado 3265 01:15:39,900 --> 01:15:41,900 ah vale, le he bajado un poco la fuerza 3266 01:15:41,900 --> 01:15:43,900 pero veis que cuando 3267 01:15:43,900 --> 01:15:45,900 a ver, cuando yo, cuando la bola 3268 01:15:45,900 --> 01:15:47,900 conseguimos que toque esa superficie, le aplica 3269 01:15:47,900 --> 01:15:49,900 una fuerza al cubo, es decir 3270 01:15:49,900 --> 01:15:51,900 un script que se encuentra en la bola 3271 01:15:51,900 --> 01:15:53,900 está afectando 3272 01:15:53,900 --> 01:15:55,900 a un componente de otro objeto 3273 01:15:55,900 --> 01:15:57,900 hasta aquí 3274 01:15:57,900 --> 01:15:59,900 ¿qué tal? esto me sirve un poco para hablar 3275 01:15:59,900 --> 01:16:01,900 del GetComponent dado que hay que usarlo 3276 01:16:01,900 --> 01:16:03,900 en esta práctica para ir 3277 01:16:03,900 --> 01:16:05,900 para afectar a los RigidBodies 3278 01:16:05,900 --> 01:16:07,900 ¿si? 3279 01:16:07,900 --> 01:16:09,900 ¿qué tal? decidme algo, porfa 3280 01:16:11,900 --> 01:16:13,900 un poco complicado 3281 01:16:13,900 --> 01:16:15,900 vale, lo que hay que, esto si lo vais 3282 01:16:15,900 --> 01:16:17,900 practicando, vale, lo iréis viendo 3283 01:16:17,900 --> 01:16:19,900 de momento, lo que me importa es 3284 01:16:19,900 --> 01:16:21,900 que podéis crear, vale, un poco el resumen 3285 01:16:21,900 --> 01:16:23,900 es que podéis crear variables 3286 01:16:23,900 --> 01:16:25,900 cuando queráis cambiar algo de un componente 3287 01:16:25,900 --> 01:16:27,900 vale, tendréis que crear una variable 3288 01:16:27,900 --> 01:16:29,900 de ámbito global, vale, que esté en todo el script 3289 01:16:29,900 --> 01:16:31,900 aquí fuera, del start y del resto de métodos 3290 01:16:31,900 --> 01:16:33,900 del nombre 3291 01:16:33,900 --> 01:16:35,900 de esa 3292 01:16:35,900 --> 01:16:37,900 de ese componente, vale 3293 01:16:37,900 --> 01:16:39,900 le ponéis un nombre de variable y luego 3294 01:16:39,900 --> 01:16:41,900 con esto no vale solo, luego 3295 01:16:41,900 --> 01:16:43,900 a esa variable también habrá que capturar 3296 01:16:43,900 --> 01:16:45,900 su componente, vale 3297 01:16:45,900 --> 01:16:47,900 por ejemplo, a lo mejor en 3298 01:16:47,900 --> 01:16:49,900 la propia bola 3299 01:16:49,900 --> 01:16:51,900 una pregunta antes de que sigas 3300 01:16:51,900 --> 01:16:53,900 cuando dices capturar su componente, ¿te refieres a poner 3301 01:16:53,900 --> 01:16:55,900 el nombre del componente del objeto al que 3302 01:16:55,900 --> 01:16:57,900 le quieres aplicar, no? en ese caso era 3303 01:16:57,900 --> 01:16:59,900 el cubo, el otro o cualquier otro, ¿no? 3304 01:16:59,900 --> 01:17:01,900 si, aquí está todo lo del 3305 01:17:01,900 --> 01:17:03,900 cubo, vale, eso me servía para deciros que este 3306 01:17:03,900 --> 01:17:05,900 getComponent 3307 01:17:05,900 --> 01:17:07,900 lo que hacemos es meter 3308 01:17:07,900 --> 01:17:09,900 en las posibilidades que tiene 3309 01:17:09,900 --> 01:17:11,900 este RigidBody, esta clase, vale 3310 01:17:11,900 --> 01:17:13,900 le tenemos que decir que 3311 01:17:13,900 --> 01:17:15,900 al componente que se refiere, que coja el 3312 01:17:15,900 --> 01:17:17,900 que está en el mismo objeto 3313 01:17:17,900 --> 01:17:19,900 como no se especifica objeto, vale 3314 01:17:19,900 --> 01:17:21,900 es lo mismo que poner esto 3315 01:17:21,900 --> 01:17:23,900 cuando nosotros ponemos getObject 3316 01:17:23,900 --> 01:17:25,900 vale, estamos refiriéndonos al 3317 01:17:25,900 --> 01:17:27,900 propio getObject que tiene este script, ¿no? 3318 01:17:27,900 --> 01:17:29,900 entonces estamos diciendo que 3319 01:17:29,900 --> 01:17:31,900 de este getObject que tiene el script 3320 01:17:31,900 --> 01:17:33,900 que coja su componente RigidBody y me lo guardas 3321 01:17:33,900 --> 01:17:35,900 en la variable que he creado para ese 3322 01:17:35,900 --> 01:17:37,900 componente, vais a verlo, esto lo vais 3323 01:17:37,900 --> 01:17:39,900 a usar también en el animator, en otros 3324 01:17:39,900 --> 01:17:41,900 componentes que hay, es muy 3325 01:17:41,900 --> 01:17:43,900 repetitivo, hay que crear una variable con el nombre 3326 01:17:43,900 --> 01:17:45,900 del componente, por ejemplo 3327 01:17:45,900 --> 01:17:47,900 imaginaos que es lo que iba a decir 3328 01:17:47,900 --> 01:17:49,900 que quiero afectar a algo del 3329 01:17:49,900 --> 01:17:51,900 sphereCollider, vale, entonces yo puedo 3330 01:17:51,900 --> 01:17:53,900 ahora crear una clase 3331 01:17:53,900 --> 01:17:55,900 una variable llamada 3332 01:17:55,900 --> 01:17:57,900 sphereCollider, veis que existe 3333 01:17:57,900 --> 01:17:59,900 y la llamo sc 3334 01:17:59,900 --> 01:18:01,900 porque es el nombre que yo he querido, vale 3335 01:18:01,900 --> 01:18:03,900 y luego para afectar 3336 01:18:03,900 --> 01:18:05,900 para cambiar cualquiera de las 3337 01:18:05,900 --> 01:18:07,900 funcionalidades que tengo en el sphereCollider 3338 01:18:07,900 --> 01:18:09,900 habrá que hacer algo parecido, le voy a decir 3339 01:18:09,900 --> 01:18:11,900 esa variable que he creado, pues 3340 01:18:11,900 --> 01:18:13,900 cógeme el componente de este objeto 3341 01:18:13,900 --> 01:18:15,900 que se llama, vale 3342 01:18:15,900 --> 01:18:17,900 y esta sintaxis hay que aprendérsela, es así 3343 01:18:17,900 --> 01:18:19,900 uy va, espera, he escrito algo muy raro 3344 01:18:19,900 --> 01:18:21,900 entre 3345 01:18:21,900 --> 01:18:23,900 estos símbolos de más menos ponemos 3346 01:18:23,900 --> 01:18:25,900 otra vez, vale, y es repetitivo porque 3347 01:18:25,900 --> 01:18:27,900 funcionalmente queremos guardar en esa 3348 01:18:27,900 --> 01:18:29,900 variable el mismo componente 3349 01:18:29,900 --> 01:18:31,900 vale, coge el componente llamado 3350 01:18:31,900 --> 01:18:33,900 sphereCollider que hay dentro de ese GameOverKit 3351 01:18:33,900 --> 01:18:35,900 vale, y ahora 3352 01:18:35,900 --> 01:18:37,900 todo lo que yo haga sobre sc 3353 01:18:37,900 --> 01:18:39,900 si le doy al punto, va a tener 3354 01:18:39,900 --> 01:18:41,900 las propiedades de 3355 01:18:41,900 --> 01:18:43,900 de ese 3356 01:18:43,900 --> 01:18:45,900 sphereCollider, por ejemplo 3357 01:18:45,900 --> 01:18:47,900 si yo 3358 01:18:47,900 --> 01:18:49,900 le doy a isTrigger, vale 3359 01:18:49,900 --> 01:18:51,900 isTrigger 3360 01:18:51,900 --> 01:18:53,900 lo que voy a poder hacer es 3361 01:18:53,900 --> 01:18:55,900 que el isTrigger sea falso o 3362 01:18:55,900 --> 01:18:57,900 verdadero 3363 01:18:57,900 --> 01:18:59,900 a ver, espera, porque esto ahora mismo tendría 3364 01:18:59,900 --> 01:19:01,900 que saber cómo se varía, a ver un segundo 3365 01:19:01,900 --> 01:19:03,900 que esto me lo va a decir aquí 3366 01:19:03,900 --> 01:19:05,900 isTrigger, vale 3367 01:19:05,900 --> 01:19:07,900 pero fijaos que me están saliendo ahora opciones 3368 01:19:07,900 --> 01:19:09,900 que se encuentran dentro de este 3369 01:19:09,900 --> 01:19:11,900 componente 3370 01:19:11,900 --> 01:19:13,900 por ejemplo, si quisiera cambiar 3371 01:19:13,900 --> 01:19:15,900 el centro o el radio de esta 3372 01:19:15,900 --> 01:19:17,900 sphereCollider, vamos a ver que hay 3373 01:19:17,900 --> 01:19:19,900 una opción que se llama 3374 01:19:19,900 --> 01:19:21,900 Radius, vale, y yo ahora 3375 01:19:21,900 --> 01:19:23,900 en Radius, importante para 3376 01:19:23,900 --> 01:19:25,900 saber cómo se trabaja con cada uno 3377 01:19:25,900 --> 01:19:27,900 mirad que es lo que os pide, vale 3378 01:19:27,900 --> 01:19:29,900 el radio de la sphere a medida 3379 01:19:29,900 --> 01:19:31,900 en el objeto local space 3380 01:19:31,900 --> 01:19:33,900 vale, como el radio aquí 3381 01:19:33,900 --> 01:19:35,900 el Radius es un número, yo puedo decir 3382 01:19:35,900 --> 01:19:37,900 fijaos, vale, es un 0.5 y yo puedo 3383 01:19:37,900 --> 01:19:39,900 decirle, no, el Radius 3384 01:19:39,900 --> 01:19:41,900 lo voy a poner 3385 01:19:41,900 --> 01:19:43,900 en el update para que se los ejecute una vez 3386 01:19:43,900 --> 01:19:45,900 el Radius, lo que quiero es que cuando empiece 3387 01:19:45,900 --> 01:19:47,900 el juego, por código yo voy a poder 3388 01:19:47,900 --> 01:19:49,900 cambiar a que valga 2 3389 01:19:49,900 --> 01:19:51,900 vale, y vais a ver que yo 3390 01:19:51,900 --> 01:19:53,900 y guardo, aunque yo antes de lanzar 3391 01:19:53,900 --> 01:19:55,900 el juego, está aquí en el 3392 01:19:55,900 --> 01:19:57,900 vector como 0.5, cuando yo 3393 01:19:57,900 --> 01:19:59,900 lance el juego en el start, me lo voy a poner 3394 01:19:59,900 --> 01:20:01,900 como un 2, lo veis 3395 01:20:01,900 --> 01:20:03,900 y ahora de pronto, que 3396 01:20:03,900 --> 01:20:05,900 igual este es el problema que te pasaba 3397 01:20:05,900 --> 01:20:07,900 Javi, que ahora está flotando 3398 01:20:07,900 --> 01:20:09,900 se ha ampliado el radio 3399 01:20:09,900 --> 01:20:11,900 del Collider y por eso está flotando 3400 01:20:11,900 --> 01:20:13,900 que es lo que te he dicho antes, digo, parece que está flotando 3401 01:20:13,900 --> 01:20:15,900 pues, será que es que el Collider lo tiene más grande 3402 01:20:15,900 --> 01:20:17,900 vale, entonces 3403 01:20:17,900 --> 01:20:19,900 lo que me sirve es para ver 3404 01:20:19,900 --> 01:20:21,900 cómo podemos 3405 01:20:21,900 --> 01:20:23,900 entrar en cada componente haciendo este esquema 3406 01:20:23,900 --> 01:20:25,900 de declarar el componente con su tipo 3407 01:20:25,900 --> 01:20:27,900 luego, lo capturamos 3408 01:20:27,900 --> 01:20:29,900 de este modo, poniendo aquí el nombre de ese 3409 01:20:29,900 --> 01:20:31,900 componente y luego ya 3410 01:20:31,900 --> 01:20:33,900 pues tenemos estas variables, aplicarFuerzas 3411 01:20:33,900 --> 01:20:35,900 y sc, que si ponemos un punto 3412 01:20:35,900 --> 01:20:37,900 vale, nos permiten 3413 01:20:37,900 --> 01:20:39,900 acceder a los métodos asociados 3414 01:20:39,900 --> 01:20:41,900 con ese 3415 01:20:41,900 --> 01:20:43,900 con ese componente 3416 01:20:43,900 --> 01:20:45,900 por ejemplo el isTrigger 3417 01:20:45,900 --> 01:20:47,900 que es un check 3418 01:20:47,900 --> 01:20:49,900 vale, especifica si este Collider está configurado 3419 01:20:49,900 --> 01:20:51,900 como un trigger, tendría que ver la documentación 3420 01:20:51,900 --> 01:20:53,900 porque ahora mismo no me acuerdo, pero en teoría 3421 01:20:53,900 --> 01:20:55,900 si lo ponemos, vale 3422 01:20:55,900 --> 01:20:57,900 como es un booleano, vale 3423 01:20:57,900 --> 01:20:59,900 es o sí o no, vale 3424 01:20:59,900 --> 01:21:01,900 fijaos que el isTrigger incluso 3425 01:21:01,900 --> 01:21:03,900 cuando choque 3426 01:21:03,900 --> 01:21:05,900 podríamos incluso ponerlo aquí en el collisionEnter 3427 01:21:05,900 --> 01:21:07,900 podríamos decir, cuando 3428 01:21:07,900 --> 01:21:09,900 el 3429 01:21:09,900 --> 01:21:11,900 cuando el 3430 01:21:11,900 --> 01:21:13,900 la bola 3431 01:21:13,900 --> 01:21:15,900 colisione con algo, quiero que 3432 01:21:15,900 --> 01:21:17,900 el radio de la esfera 3433 01:21:17,900 --> 01:21:19,900 cambie a 2 y el isTrigger pasa a ser 3434 01:21:19,900 --> 01:21:21,900 falso, vale, entonces 3435 01:21:21,900 --> 01:21:23,900 o verdadero, mejor dicho, para que sea 3436 01:21:23,900 --> 01:21:25,900 para que de pronto vais a ver 3437 01:21:25,900 --> 01:21:27,900 que esta casilla cuando choca 3438 01:21:27,900 --> 01:21:29,900 se pone verdadera y lo va a atravesar, no 3439 01:21:29,900 --> 01:21:31,900 es decir, yo ahora le doy al play y cuando toque 3440 01:21:31,900 --> 01:21:33,900 la pelota con algo 3441 01:21:33,900 --> 01:21:35,900 con colisione, que en el primer momento va a ser esta 3442 01:21:35,900 --> 01:21:37,900 esta madera, va a 3443 01:21:37,900 --> 01:21:39,900 cambiar del 3444 01:21:39,900 --> 01:21:41,900 componente FirCollider el radio a 2 3445 01:21:41,900 --> 01:21:43,900 y el isTrigger 3446 01:21:43,900 --> 01:21:45,900 se va a marcar y cuando lo 3447 01:21:45,900 --> 01:21:47,900 se convierta en isTrigger lo va a atravesar, porque de pronto 3448 01:21:47,900 --> 01:21:49,900 se ha convertido en un trigger 3449 01:21:49,900 --> 01:21:51,900 ya no va a estar funcionando como Collider 3450 01:21:51,900 --> 01:21:53,900 de pronto va a pasar a ser un trigger, vale 3451 01:21:53,900 --> 01:21:55,900 vais a ver que cuando choca 3452 01:21:55,900 --> 01:21:57,900 de pronto se marca y se pone en 2 3453 01:21:57,900 --> 01:21:59,900 y aparte me han atravesado porque en algún 3454 01:21:59,900 --> 01:22:01,900 momento habíamos puesto, ah vale 3455 01:22:01,900 --> 01:22:03,900 que el precipicio estaba 3456 01:22:03,900 --> 01:22:05,900 con el me ha atravesado este de que 3457 01:22:05,900 --> 01:22:07,900 de que 3458 01:22:07,900 --> 01:22:09,900 que teníamos aquí puesto, vale, se están sumando 3459 01:22:09,900 --> 01:22:11,900 ya las cosas, no, que es que cuando la bola 3460 01:22:11,900 --> 01:22:13,900 o algo colisionara con este 3461 01:22:13,900 --> 01:22:15,900 precipicio pues lo atravesaba 3462 01:22:15,900 --> 01:22:17,900 y en todo momento en el 3463 01:22:17,900 --> 01:22:19,900 que estuviera, vuelvo a abrir este 3464 01:22:19,900 --> 01:22:21,900 esto que teníamos aquí 3465 01:22:21,900 --> 01:22:23,900 cuando, a ver 3466 01:22:23,900 --> 01:22:25,900 este no es 3467 01:22:25,900 --> 01:22:27,900 teníamos el 3468 01:22:27,900 --> 01:22:29,900 perdonad, el precipicio 3469 01:22:29,900 --> 01:22:31,900 no, como lo llamo yo 3470 01:22:31,900 --> 01:22:33,900 ah, el reinicio, espera 3471 01:22:33,900 --> 01:22:35,900 reinicio nivel, aquí está, vale, en el 3472 01:22:35,900 --> 01:22:37,900 onTriggerState que pusiera me han atravesado y por eso 3473 01:22:37,900 --> 01:22:39,900 lo ha hecho, vale, y todo se está desencadenando 3474 01:22:39,900 --> 01:22:41,900 ya por triggers y por colliders 3475 01:22:41,900 --> 01:22:43,900 y por, es decir 3476 01:22:43,900 --> 01:22:45,900 el onCollision, vale, más o menos 3477 01:22:45,900 --> 01:22:47,900 hasta aquí me vais siguiendo y es 3478 01:22:47,900 --> 01:22:49,900 importante, bueno, va a ser esencial esto 3479 01:22:49,900 --> 01:22:51,900 que estoy hablando de coger los componentes 3480 01:22:51,900 --> 01:22:53,900 y poder operar con los componentes 3481 01:22:53,900 --> 01:22:55,900 a través de 3482 01:22:55,900 --> 01:22:57,900 de código 3483 01:22:57,900 --> 01:22:59,900 vale, es decir, ahora mismo ya hemos 3484 01:22:59,900 --> 01:23:01,900 aprendido en esto que estamos viendo 3485 01:23:01,900 --> 01:23:03,900 lo repito, lo iréis practicando 3486 01:23:03,900 --> 01:23:05,900 vale, pero con esto de component 3487 01:23:05,900 --> 01:23:07,900 y las clases, las variables que tienen 3488 01:23:07,900 --> 01:23:09,900 un tipo de variable 3489 01:23:09,900 --> 01:23:11,900 que es una clase realmente relacionada 3490 01:23:11,900 --> 01:23:13,900 con un componente, podemos acceder 3491 01:23:13,900 --> 01:23:15,900 a cualquier de los parámetros y cambiar por código 3492 01:23:15,900 --> 01:23:17,900 cualquiera de los parámetros 3493 01:23:17,900 --> 01:23:19,900 o casi cualquiera de los scripts 3494 01:23:19,900 --> 01:23:21,900 de los, perdonad, de los componentes 3495 01:23:21,900 --> 01:23:23,900 que vayamos aquí 3496 01:23:23,900 --> 01:23:25,900 todos los que hay, que vayamos haciendo 3497 01:23:25,900 --> 01:23:27,900 que tenemos más adelante en el tema 4 3498 01:23:27,900 --> 01:23:29,900 que tenemos un texto que queremos que ponga algo 3499 01:23:29,900 --> 01:23:31,900 pues accederemos a su componente 3500 01:23:31,900 --> 01:23:33,900 del texto 3501 01:23:33,900 --> 01:23:35,900 y lo podremos cambiar por código 3502 01:23:35,900 --> 01:23:37,900 y la operación será siempre similar 3503 01:23:37,900 --> 01:23:39,900 vale, declarando el tipo de variable 3504 01:23:39,900 --> 01:23:41,900 pues por ejemplo Renderer 3505 01:23:41,900 --> 01:23:43,900 vale, el mesRenderer tiene 3506 01:23:43,900 --> 01:23:45,900 una clase que es Renderer 3507 01:23:45,900 --> 01:23:47,900 pues con esto 3508 01:23:47,900 --> 01:23:49,900 pues yo que sé, en Renderer 3509 01:23:49,900 --> 01:23:51,900 nos meteríamos en el Renderer 3510 01:23:51,900 --> 01:23:53,900 ¿que queremos afectar algo al Renderer? 3511 01:23:53,900 --> 01:23:55,900 primero tendremos que coger 3512 01:23:55,900 --> 01:23:57,900 su componente 3513 01:23:57,900 --> 01:23:59,900 que es Renderer, aunque se llame mesRenderer 3514 01:23:59,900 --> 01:24:01,900 este si que tiene la particularidad 3515 01:24:01,900 --> 01:24:03,900 que solo hay que poner Renderer 3516 01:24:03,900 --> 01:24:05,900 pues ahora por ejemplo 3517 01:24:05,900 --> 01:24:07,900 podríamos desde aquí, desde el código 3518 01:24:07,900 --> 01:24:09,900 perdonad 3519 01:24:09,900 --> 01:24:11,900 desde el código podríamos 3520 01:24:11,900 --> 01:24:13,900 por ejemplo cambiar su color 3521 01:24:13,900 --> 01:24:15,900 ya es más avanzado porque además este 3522 01:24:15,900 --> 01:24:17,900 como tiene tantas propiedades 3523 01:24:17,900 --> 01:24:19,900 tiene más 3524 01:24:19,900 --> 01:24:21,900 características 3525 01:24:21,900 --> 01:24:23,900 pero yo que sé 3526 01:24:23,900 --> 01:24:25,900 en el Start también 3527 01:24:25,900 --> 01:24:27,900 una vez tenemos aquí ya el Renderer 3528 01:24:27,900 --> 01:24:29,900 podemos decir, si no me equivoco 3529 01:24:29,900 --> 01:24:31,900 no me acuerdo, había que hacer 3530 01:24:31,900 --> 01:24:33,900 material, color 3531 01:24:33,900 --> 01:24:35,900 vale, y por ejemplo desde aquí 3532 01:24:35,900 --> 01:24:37,900 todo partiendo de que hemos capturado 3533 01:24:37,900 --> 01:24:39,900 el Renderer podemos decirle 3534 01:24:39,900 --> 01:24:41,900 que el color sea, yo que sé 3535 01:24:41,900 --> 01:24:43,900 black 3536 01:24:43,900 --> 01:24:45,900 color black, vale 3537 01:24:45,900 --> 01:24:47,900 esto ya os digo que es más avanzado 3538 01:24:47,900 --> 01:24:49,900 pero vais a ver que ahora al empezar el juego 3539 01:24:49,900 --> 01:24:51,900 la pelota se debería volver negra 3540 01:24:51,900 --> 01:24:53,900 bueno, aparte de todo lo que ya habíamos hecho 3541 01:24:53,900 --> 01:24:55,900 entonces desde el código podemos ir 3542 01:24:55,900 --> 01:24:57,900 cambiando todas las opciones que están 3543 01:24:57,900 --> 01:24:59,900 configuradas en los componentes 3544 01:24:59,900 --> 01:25:01,900 vale, esto lo estoy contando así un poco con ejemplos 3545 01:25:01,900 --> 01:25:03,900 de ya más componentes pero 3546 01:25:03,900 --> 01:25:05,900 me sirve para que sepáis 3547 01:25:05,900 --> 01:25:07,900 que este es el primer paso que estamos dando 3548 01:25:07,900 --> 01:25:09,900 para afectar, o al menos 3549 01:25:09,900 --> 01:25:11,900 consciente, para afectar a los componentes 3550 01:25:11,900 --> 01:25:13,900 y claro, con los componentes es donde vamos 3551 01:25:13,900 --> 01:25:15,900 cambiando todas las opciones 3552 01:25:15,900 --> 01:25:17,900 el Transform, vale, que hasta ahora hemos 3553 01:25:17,900 --> 01:25:19,900 usado en las primeras prácticas para cambiar el 3554 01:25:19,900 --> 01:25:21,900 position, la rotación, etc 3555 01:25:21,900 --> 01:25:23,900 no había que hacer todo este proceso 3556 01:25:23,900 --> 01:25:25,900 porque como es el componente 3557 01:25:25,900 --> 01:25:27,900 por defecto que viene con los 3558 01:25:27,900 --> 01:25:29,900 GameObjects, vale 3559 01:25:29,900 --> 01:25:31,900 ya viene configurado para que al hacer 3560 01:25:31,900 --> 01:25:33,900 al poner la palabra Transform, vale 3561 01:25:33,900 --> 01:25:35,900 no haya que hacer esto de capturar 3562 01:25:35,900 --> 01:25:37,900 porque es que siempre está, entonces la palabra 3563 01:25:37,900 --> 01:25:39,900 Transform con minúscula aquí 3564 01:25:39,900 --> 01:25:41,900 ya está apelando al 3565 01:25:41,900 --> 01:25:43,900 y si veis aquí abajo a la clase Transform 3566 01:25:43,900 --> 01:25:45,900 con mayúscula, vale, lo mismo que estamos 3567 01:25:45,900 --> 01:25:47,900 haciendo aquí, aquí también podríamos poner 3568 01:25:47,900 --> 01:25:49,900 Transform, vale, y estamos hablando 3569 01:25:49,900 --> 01:25:51,900 de esa variable, pero esta ya 3570 01:25:51,900 --> 01:25:53,900 del propio objeto que tiene 3571 01:25:53,900 --> 01:25:55,900 bueno, pues el propio GameObject 3572 01:25:55,900 --> 01:25:57,900 cuando ponemos el Transform ya, pues por ejemplo 3573 01:25:57,900 --> 01:25:59,900 podemos llamar a 3574 01:25:59,900 --> 01:26:01,900 la posición, y no deja de ser 3575 01:26:01,900 --> 01:26:03,900 uno de los valores, uno de los campos 3576 01:26:03,900 --> 01:26:05,900 que están aquí preparados en un 3577 01:26:05,900 --> 01:26:07,900 componente, vale, solo que para el 3578 01:26:07,900 --> 01:26:09,900 resto de componentes, pues hay que hacer 3579 01:26:09,900 --> 01:26:11,900 esta operación, y como hemos visto además 3580 01:26:11,900 --> 01:26:13,900 mmm, también está 3581 01:26:13,900 --> 01:26:15,900 simplificada porque esto, y esto es exactamente 3582 01:26:15,900 --> 01:26:17,900 lo mismo, vale, es una subclase 3583 01:26:17,900 --> 01:26:19,900 un método que está dentro de 3584 01:26:19,900 --> 01:26:21,900 un componente superior 3585 01:26:21,900 --> 01:26:23,900 me vais siguiendo hasta aquí 3586 01:26:23,900 --> 01:26:25,900 más o menos, me estoy deteniendo mucho 3587 01:26:25,900 --> 01:26:27,900 en esto, pero es que es básico para de aquí 3588 01:26:27,900 --> 01:26:29,900 en adelante 3589 01:26:29,900 --> 01:26:31,900 vale, esto cuando 3590 01:26:31,900 --> 01:26:33,900 vayáis haciendo la práctica, como al RigidBody 3591 01:26:33,900 --> 01:26:35,900 tenéis que aplicarle fuerzas o torques 3592 01:26:35,900 --> 01:26:37,900 no, vais a tener que 3593 01:26:37,900 --> 01:26:39,900 acceder 3594 01:26:39,900 --> 01:26:41,900 a un RigidBody siempre, así que en esta práctica 3595 01:26:41,900 --> 01:26:43,900 ya por narices, tenéis 3596 01:26:43,900 --> 01:26:45,900 que ponerlo en juego, sí, a ver 3597 01:26:45,900 --> 01:26:47,900 eh, alguien, ah, vale, no, que pensaba 3598 01:26:47,900 --> 01:26:49,900 que habéis dicho algo, que hacen algo por ahí, vale 3599 01:26:49,900 --> 01:26:51,900 entonces 3600 01:26:51,900 --> 01:26:53,900 eh, fuerza choque 3601 01:26:53,900 --> 01:26:55,900 lo voy a guardar y lo voy a 3602 01:26:55,900 --> 01:26:57,900 quitar de este objeto porque lo he hecho de prueba 3603 01:26:57,900 --> 01:26:59,900 pero yo no quiero que la bola le dé 3604 01:26:59,900 --> 01:27:01,900 ninguna fuerza a otro elemento 3605 01:27:01,900 --> 01:27:03,900 o a sí misma cuando choque, yo quiero que por la gravedad 3606 01:27:03,900 --> 01:27:05,900 pues se quede ahí, vale 3607 01:27:05,900 --> 01:27:07,900 entonces, aquí está la bola 3608 01:27:07,900 --> 01:27:09,900 el cubo este lo voy a ocultar 3609 01:27:09,900 --> 01:27:11,900 vale, lo voy a dejar ahí pero 3610 01:27:11,900 --> 01:27:13,900 inactivo, mejor dicho 3611 01:27:13,900 --> 01:27:15,900 y ahora, aquí está 3612 01:27:15,900 --> 01:27:17,900 vale 3613 01:27:17,900 --> 01:27:19,900 hasta aquí tenemos esto 3614 01:27:19,900 --> 01:27:21,900 la bola, vale 3615 01:27:21,900 --> 01:27:23,900 y para ir un poco más ágil 3616 01:27:23,900 --> 01:27:25,900 voy a abrir directamente 3617 01:27:25,900 --> 01:27:27,900 el script que yo he aplicado a la bola en este caso 3618 01:27:27,900 --> 01:27:29,900 vale, para no hacerlo de cero, pero si 3619 01:27:29,900 --> 01:27:31,900 os fijáis, lo que se ha hecho 3620 01:27:31,900 --> 01:27:33,900 ahora además que ya hemos hablado de varias cosas 3621 01:27:33,900 --> 01:27:35,900 es 3622 01:27:35,900 --> 01:27:37,900 declarar varias variables 3623 01:27:37,900 --> 01:27:39,900 vale, que sean globales 3624 01:27:39,900 --> 01:27:41,900 recordad que las que 3625 01:27:41,900 --> 01:27:43,900 se declaran aquí encima 3626 01:27:43,900 --> 01:27:45,900 fuera de todo el resto de métodos 3627 01:27:45,900 --> 01:27:47,900 vale, serán variables que luego 3628 01:27:47,900 --> 01:27:49,900 se podrán ir usando sin problema 3629 01:27:49,900 --> 01:27:51,900 dentro del resto de métodos 3630 01:27:51,900 --> 01:27:53,900 que no es lo mismo que declararla dentro de un método 3631 01:27:53,900 --> 01:27:55,900 que recordad que se encapsulaba 3632 01:27:55,900 --> 01:27:57,900 y se quedaba en local 3633 01:27:57,900 --> 01:27:59,900 y por tanto, pues 3634 01:27:59,900 --> 01:28:01,900 habría métodos que no se pueden usar 3635 01:28:01,900 --> 01:28:03,900 en otra sección 3636 01:28:03,900 --> 01:28:05,900 en otro módulo, vale 3637 01:28:05,900 --> 01:28:07,900 en otra función de ejecución 3638 01:28:07,900 --> 01:28:09,900 esto ya lo vimos en su momento 3639 01:28:09,900 --> 01:28:11,900 si tenéis duda me vais diciendo 3640 01:28:11,900 --> 01:28:13,900 entonces aquí, básicamente 3641 01:28:13,900 --> 01:28:15,900 cuando se estaba planteando qué hacer con la bola en este nivel 3642 01:28:15,900 --> 01:28:17,900 pues era, yo lo que voy a querer es 3643 01:28:17,900 --> 01:28:19,900 mover la bola horizontal y verticalmente 3644 01:28:19,900 --> 01:28:21,900 o al menos 3645 01:28:21,900 --> 01:28:23,900 aunque sea en profundidad, vale 3646 01:28:23,900 --> 01:28:25,900 que la captura del movimiento sea 3647 01:28:25,900 --> 01:28:27,900 con la lógica vertical, es decir, la flecha hacia arriba 3648 01:28:27,900 --> 01:28:29,900 y la flecha hacia abajo, vale 3649 01:28:29,900 --> 01:28:31,900 y son valores que están 3650 01:28:31,900 --> 01:28:33,900 asociados a un float, vale 3651 01:28:33,900 --> 01:28:35,900 luego va a haber otras dos variables 3652 01:28:35,900 --> 01:28:37,900 que sirven para dar luego, para multiplicar 3653 01:28:37,900 --> 01:28:39,900 por una fuerza 3654 01:28:39,900 --> 01:28:41,900 o por una fuerza pero de torsión, vale 3655 01:28:41,900 --> 01:28:43,900 que también son floats, voy un poco rápido 3656 01:28:43,900 --> 01:28:45,900 porque creo que esto 3657 01:28:45,900 --> 01:28:47,900 se explica solo y si no, volvemos a ello 3658 01:28:47,900 --> 01:28:49,900 aquí se ha declarado una wake, que es otro momento 3659 01:28:49,900 --> 01:28:51,900 de ejecución que vimos el otro día 3660 01:28:51,900 --> 01:28:53,900 no nos hace falta, lo borro, vale 3661 01:28:53,900 --> 01:28:55,900 y luego este RigidBody 3662 01:28:55,900 --> 01:28:57,900 porque hasta que no hacemos la operación 3663 01:28:57,900 --> 01:28:59,900 de aplicar fuerzas 3664 01:28:59,900 --> 01:29:01,900 a un RigidBody concreto, vale 3665 01:29:01,900 --> 01:29:03,900 que si veis es exactamente la misma operación 3666 01:29:03,900 --> 01:29:05,900 que había hecho, he declarado 3667 01:29:05,900 --> 01:29:07,900 la variable RigidBody y luego al empezar 3668 01:29:07,900 --> 01:29:09,900 este script, al ejecutarse 3669 01:29:09,900 --> 01:29:11,900 pues oye, en esta variable 3670 01:29:11,900 --> 01:29:13,900 RigidBody captúrame o guarda 3671 01:29:13,900 --> 01:29:15,900 o apela o no sé 3672 01:29:15,900 --> 01:29:17,900 get, coge el componente 3673 01:29:17,900 --> 01:29:19,900 RigidBody que como no hemos puesto 3674 01:29:19,900 --> 01:29:21,900 nada más, que sea el que tiene 3675 01:29:21,900 --> 01:29:23,900 el propio objeto, es decir, ahora mismo 3676 01:29:23,900 --> 01:29:25,900 con este código, estamos ya teniendo 3677 01:29:25,900 --> 01:29:27,900 una puerta al RigidBody que tiene la bola 3678 01:29:27,900 --> 01:29:29,900 que es el mismo 3679 01:29:29,900 --> 01:29:31,900 GameObject que tiene aplicado este componente 3680 01:29:31,900 --> 01:29:33,900 vale, luego 3681 01:29:33,900 --> 01:29:35,900 más adelante al empezar, ya 3682 01:29:35,900 --> 01:29:37,900 como luego lo vamos a usar para multiplicar aquí 3683 01:29:37,900 --> 01:29:39,900 vale, como hacíamos con el speed 3684 01:29:39,900 --> 01:29:41,900 en la variable speed 3685 01:29:41,900 --> 01:29:43,900 de por ejemplo la práctica 2, no 3686 01:29:43,900 --> 01:29:45,900 o velocidad, aquí hemos puesto 3687 01:29:45,900 --> 01:29:47,900 que al empezar el juego, pues se guarden 3688 01:29:47,900 --> 01:29:49,900 estas variables de float, pues un 60 3689 01:29:49,900 --> 01:29:51,900 y un 80, esto pues se puede cambiar 3690 01:29:51,900 --> 01:29:53,900 para que tenga más o menos fuerza 3691 01:29:53,900 --> 01:29:55,900 en el update 3692 01:29:55,900 --> 01:29:57,900 importante, vale 3693 01:29:57,900 --> 01:29:59,900 hemos llamado 3694 01:29:59,900 --> 01:30:01,900 a estas dos variables que habíamos declarado 3695 01:30:01,900 --> 01:30:03,900 aquí, que por cierto 3696 01:30:03,900 --> 01:30:05,900 son serializeField, sólo para poder 3697 01:30:05,900 --> 01:30:07,900 verlas en vivo 3698 01:30:07,900 --> 01:30:09,900 y directo, cuando ejecutemos el juego 3699 01:30:09,900 --> 01:30:11,900 vale, para que se vean aquí 3700 01:30:11,900 --> 01:30:13,900 vale, que cuando yo esté 3701 01:30:13,900 --> 01:30:15,900 pulsando una tecla, vale 3702 01:30:15,900 --> 01:30:17,900 ahora lo vemos, veis que van del 0 3703 01:30:17,900 --> 01:30:19,900 del 1 al menos 1, según estoy 3704 01:30:19,900 --> 01:30:21,900 pulsando teclas con los valores 3705 01:30:21,900 --> 01:30:23,900 intermedios, pero realmente 3706 01:30:23,900 --> 01:30:25,900 lo he hecho serializable para 3707 01:30:25,900 --> 01:30:27,900 poder visualizar 3708 01:30:27,900 --> 01:30:29,900 aquí los valores 3709 01:30:29,900 --> 01:30:31,900 vale, pero no estoy, bueno 3710 01:30:31,900 --> 01:30:33,900 veis que si arrastro en vivo hacia la izquierda 3711 01:30:33,900 --> 01:30:35,900 o hacia la derecha, estoy dando 3712 01:30:35,900 --> 01:30:37,900 valores a estas 3713 01:30:37,900 --> 01:30:39,900 variables, vale, aunque 3714 01:30:39,900 --> 01:30:41,900 no se vea el número porque es una ejecución 3715 01:30:41,900 --> 01:30:43,900 muy rápida, veis que la bola 3716 01:30:43,900 --> 01:30:45,900 si yo voy hacia la derecha con el ratón o hacia la 3717 01:30:45,900 --> 01:30:47,900 izquierda, se va moviendo 3718 01:30:47,900 --> 01:30:49,900 entonces 3719 01:30:49,900 --> 01:30:51,900 tengo aquí dos variables 3720 01:30:51,900 --> 01:30:53,900 de mover, horizontal 3721 01:30:53,900 --> 01:30:55,900 o vertical, que lo que están capturando 3722 01:30:55,900 --> 01:30:57,900 es un axis 3723 01:30:57,900 --> 01:30:59,900 vale, llamado vertical bola 3724 01:30:59,900 --> 01:31:01,900 o horizontal bola, y la está guardando 3725 01:31:01,900 --> 01:31:03,900 el concepto de getAxis 3726 01:31:03,900 --> 01:31:05,900 ¿qué tal lo tenéis? 3727 01:31:05,900 --> 01:31:07,900 ya, esto es del tema 2 3728 01:31:07,900 --> 01:31:09,900 pero, ¿sabéis que 3729 01:31:09,900 --> 01:31:11,900 porque estoy usando un getAxis y no estoy 3730 01:31:11,900 --> 01:31:13,900 poniendo el 3731 01:31:13,900 --> 01:31:15,900 si le doy a la tecla 3732 01:31:15,900 --> 01:31:17,900 que sea el vector hacia arriba, si le doy 3733 01:31:17,900 --> 01:31:19,900 ¿sabéis porque estoy usando el axis? es decir 3734 01:31:19,900 --> 01:31:21,900 es algo que si no me voy a parar 3735 01:31:21,900 --> 01:31:23,900 el getAxis es porque utilizas las teclas 3736 01:31:23,900 --> 01:31:25,900 de movimiento de las flechas y ya 3737 01:31:25,900 --> 01:31:27,900 automáticamente se pone, me parece, ¿no? 3738 01:31:27,900 --> 01:31:29,900 eso es, es decir 3739 01:31:29,900 --> 01:31:31,900 el axis, vale, tengo que ir 3740 01:31:31,900 --> 01:31:33,900 un segundo al, recordad que los 3741 01:31:33,900 --> 01:31:35,900 ejes se configuran en los project 3742 01:31:35,900 --> 01:31:37,900 settings, vale, en el input manager, están 3743 01:31:37,900 --> 01:31:39,900 estos axis, vale, que tenían sus 3744 01:31:39,900 --> 01:31:41,900 nombres, vale, aquí yo he 3745 01:31:41,900 --> 01:31:43,900 creado más, pero vais a fijaros que hay 3746 01:31:43,900 --> 01:31:45,900 a ver, uno que se llama vertical bola 3747 01:31:45,900 --> 01:31:47,900 y horizontal bola, que son los que estoy usando 3748 01:31:47,900 --> 01:31:49,900 ahora, y dentro de esto 3749 01:31:49,900 --> 01:31:51,900 hemos configurado, vale 3750 01:31:51,900 --> 01:31:53,900 esto ya lo vimos el otro día un poco 3751 01:31:53,900 --> 01:31:55,900 si no lo decimos, que haya 3752 01:31:55,900 --> 01:31:57,900 un eje, vale, un axis, los axis 3753 01:31:57,900 --> 01:31:59,900 son como ejes, que el 3754 01:31:59,900 --> 01:32:01,900 negativo sea la A 3755 01:32:01,900 --> 01:32:03,900 y el positivo sea la D 3756 01:32:03,900 --> 01:32:05,900 ¿esto que significa? que este eje 3757 01:32:05,900 --> 01:32:07,900 tiene un menos uno en la A 3758 01:32:07,900 --> 01:32:09,900 un uno en la D 3759 01:32:09,900 --> 01:32:11,900 vale, y yo cuando vaya tocando uno de 3760 01:32:11,900 --> 01:32:13,900 esos dos extremos, como voy a hacer ahora 3761 01:32:13,900 --> 01:32:15,900 a ver, espera, cuando yo 3762 01:32:15,900 --> 01:32:17,900 le de a la tecla, fijaos que 3763 01:32:17,900 --> 01:32:19,900 lo que está capturando hasta 3764 01:32:19,900 --> 01:32:21,900 tarda un tiempo en llegar, es o menos uno 3765 01:32:21,900 --> 01:32:23,900 y cuando doy a la derecha uno 3766 01:32:23,900 --> 01:32:25,900 a la izquierda menos uno, vale, es un eje 3767 01:32:25,900 --> 01:32:27,900 que tiene dos extremos, dos valores 3768 01:32:27,900 --> 01:32:29,900 y esto es muy útil, como pasa 3769 01:32:29,900 --> 01:32:31,900 en los joystick, son los mandos 3770 01:32:31,900 --> 01:32:33,900 que tenemos siempre dos ejes, el horizontal 3771 01:32:33,900 --> 01:32:35,900 y el vertical, ahora tengo el otro, vale 3772 01:32:35,900 --> 01:32:37,900 que le doy a arriba o abajo 3773 01:32:37,900 --> 01:32:39,900 a la W o a la S 3774 01:32:39,900 --> 01:32:41,900 y va de uno a menos uno 3775 01:32:41,900 --> 01:32:43,900 esta es la forma más óptima que ir poniendo 3776 01:32:43,900 --> 01:32:45,900 vale, lo digo, voy a ir un segundo a 3777 01:32:45,900 --> 01:32:47,900 uno de los hilos del foro 3778 01:32:47,900 --> 01:32:49,900 una compañera estaba trabajando 3779 01:32:49,900 --> 01:32:51,900 a ver, perdonad 3780 01:32:51,900 --> 01:32:53,900 esto yo lo tenía ya abierto, pero 3781 01:32:53,900 --> 01:32:55,900 vale, creo que ha sido aquí 3782 01:32:55,900 --> 01:32:57,900 justo, un segundo 3783 01:32:57,900 --> 01:32:59,900 una compañera estaba 3784 01:32:59,900 --> 01:33:01,900 incorporando todos los 3785 01:33:01,900 --> 01:33:03,900 inputs por teclas independientes 3786 01:33:03,900 --> 01:33:05,900 y hombre, por poder se puede 3787 01:33:05,900 --> 01:33:07,900 pero es mucho menos eficiente y no tiene 3788 01:33:07,900 --> 01:33:09,900 no tiene 3789 01:33:09,900 --> 01:33:11,900 la mejor lógica, entonces 3790 01:33:11,900 --> 01:33:13,900 si nos metemos, vale, si queréis 3791 01:33:13,900 --> 01:33:15,900 revisar, que también está la respuesta 3792 01:33:15,900 --> 01:33:17,900 esta compañera 3793 01:33:17,900 --> 01:33:19,900 lo que estaba haciendo era 3794 01:33:19,900 --> 01:33:21,900 que todos los inputs, si os fijáis era 3795 01:33:21,900 --> 01:33:23,900 flecha arriba 3796 01:33:23,900 --> 01:33:25,900 esta fuerza, si no 3797 01:33:25,900 --> 01:33:27,900 si esta flecha a la izquierda 3798 01:33:27,900 --> 01:33:29,900 si no esta flecha a la derecha 3799 01:33:29,900 --> 01:33:31,900 si no esta flecha abajo, vale 3800 01:33:31,900 --> 01:33:33,900 estaba haciendo por cada 3801 01:33:33,900 --> 01:33:35,900 tecla una dirección de fuerza 3802 01:33:35,900 --> 01:33:37,900 vale, y esto es una 3803 01:33:37,900 --> 01:33:39,900 es un enfoque que implica 3804 01:33:39,900 --> 01:33:41,900 muchas líneas y cuando estamos 3805 01:33:41,900 --> 01:33:43,900 usando elementos que lo que tienen son 3806 01:33:43,900 --> 01:33:45,900 dos ejes de dirección, es decir, izquierda a derecha 3807 01:33:45,900 --> 01:33:47,900 arriba a abajo, en profundidad 3808 01:33:47,900 --> 01:33:49,900 hacia adelante o hacia detrás 3809 01:33:49,900 --> 01:33:51,900 con un eje podemos ir 3810 01:33:51,900 --> 01:33:53,900 reflejando de manera muy sencilla 3811 01:33:53,900 --> 01:33:55,900 los dos extremos de una dirección, vale 3812 01:33:55,900 --> 01:33:57,900 en vez de usar dos controles diferentes 3813 01:33:57,900 --> 01:33:59,900 para arriba y abajo, con el eje 3814 01:33:59,900 --> 01:34:01,900 tenemos ese 3815 01:34:01,900 --> 01:34:03,900 ese recorrido entre un punto y el otro 3816 01:34:03,900 --> 01:34:05,900 y si no estamos haciendo ningún 3817 01:34:05,900 --> 01:34:07,900 input, será cero 3818 01:34:07,900 --> 01:34:09,900 esto del x axis, además a diferencia de esto 3819 01:34:09,900 --> 01:34:11,900 cuando tocamos una tecla es 3820 01:34:11,900 --> 01:34:13,900 o sí o no, es decir, si pulsas una tecla 3821 01:34:13,900 --> 01:34:15,900 no hay sensibilidades, se activa o no se 3822 01:34:15,900 --> 01:34:17,900 activa, con los axis 3823 01:34:17,900 --> 01:34:19,900 si estuviéramos usando un 3824 01:34:19,900 --> 01:34:21,900 joystick, entre ese menos uno 3825 01:34:21,900 --> 01:34:23,900 o el uno que marcan los 3826 01:34:23,900 --> 01:34:25,900 extremos del joystick, tenemos valores 3827 01:34:25,900 --> 01:34:27,900 intermedios para darle sensibilidad 3828 01:34:27,900 --> 01:34:29,900 vale, no tengo aquí el joystick pero igual que 3829 01:34:29,900 --> 01:34:31,900 cuando estamos ejecutando el juego 3830 01:34:31,900 --> 01:34:33,900 vemos aquí 3831 01:34:33,900 --> 01:34:35,900 que hay un momento que hasta 3832 01:34:35,900 --> 01:34:37,900 que llega al uno, vale, fijaos aquí 3833 01:34:37,900 --> 01:34:39,900 pues hay unos valores intermedios 3834 01:34:39,900 --> 01:34:41,900 que si estamos con el axis configurado 3835 01:34:41,900 --> 01:34:43,900 para un joystick, si yo pulso 3836 01:34:43,900 --> 01:34:45,900 la mitad del joystick hacia abajo 3837 01:34:45,900 --> 01:34:47,900 vale, pues se quedaría en el menos cero con cinco 3838 01:34:47,900 --> 01:34:49,900 vale, y sería el valor que está 3839 01:34:49,900 --> 01:34:51,900 guardando esta variable moveH que es la que 3840 01:34:51,900 --> 01:34:53,900 tenemos aquí preparada, vale 3841 01:34:53,900 --> 01:34:55,900 moveH está cogiendo el input 3842 01:34:55,900 --> 01:34:57,900 de horizontal bola 3843 01:34:57,900 --> 01:34:59,900 y no deja de ser un float, es un número 3844 01:34:59,900 --> 01:35:01,900 que al estar configurado como un getAxis 3845 01:35:01,900 --> 01:35:03,900 va entre el menos uno y el uno 3846 01:35:03,900 --> 01:35:05,900 que vamos a hacer con eso, que en todo momento 3847 01:35:05,900 --> 01:35:07,900 al multiplicar un vector 3848 01:35:07,900 --> 01:35:09,900 por menos uno o por uno, estamos 3849 01:35:09,900 --> 01:35:11,900 dándole ya una dirección 3850 01:35:11,900 --> 01:35:13,900 vale, pero que puede ser 3851 01:35:13,900 --> 01:35:15,900 hacia un lado o hacia el otro 3852 01:35:15,900 --> 01:35:17,900 al ser negativo este vector forward por defecto 3853 01:35:17,900 --> 01:35:19,900 si me pongo encima es uno hacia adelante 3854 01:35:19,900 --> 01:35:21,900 si lo multiplico por uno 3855 01:35:21,900 --> 01:35:23,900 pues será hacia adelante, pero si lo 3856 01:35:23,900 --> 01:35:25,900 multiplico por menos uno 3857 01:35:25,900 --> 01:35:27,900 irá hacia atrás, vale 3858 01:35:27,900 --> 01:35:29,900 entonces con un solo 3859 01:35:29,900 --> 01:35:31,900 con una sola variable bien configurada 3860 01:35:31,900 --> 01:35:33,900 ya tenemos las dos direcciones de manera muy fácil 3861 01:35:33,900 --> 01:35:35,900 ahora mismo en esta línea estamos 3862 01:35:35,900 --> 01:35:37,900 añadiendo una fuerza en profundidad, vale 3863 01:35:37,900 --> 01:35:39,900 con el vector de profundidad que se mueve 3864 01:35:39,900 --> 01:35:41,900 según el input que estemos dando 3865 01:35:41,900 --> 01:35:43,900 si no le damos ningún input 3866 01:35:43,900 --> 01:35:45,900 como esto va a valer cero, pues esto 3867 01:35:45,900 --> 01:35:47,900 vale cero y no se mueve, no se aplica ninguna fuerza 3868 01:35:47,900 --> 01:35:49,900 vale, y luego aparte tenemos 3869 01:35:49,900 --> 01:35:51,900 esta variable de fuerza que es otro float 3870 01:35:51,900 --> 01:35:53,900 que nos sirve para, oye esto que estamos 3871 01:35:53,900 --> 01:35:55,900 aquí ejecutando, pues que se multiplique 3872 01:35:55,900 --> 01:35:57,900 por esta fuerza, entonces 3873 01:35:57,900 --> 01:35:59,900 si se mueve muy despacín, pues la fuerza 3874 01:35:59,900 --> 01:36:01,900 la aumentamos, vale, o la disminuimos 3875 01:36:01,900 --> 01:36:03,900 fijaos que tengo 3876 01:36:03,900 --> 01:36:05,900 un forward para avanzar 3877 01:36:05,900 --> 01:36:07,900 porque lo he hecho, lo he 3878 01:36:07,900 --> 01:36:09,900 disgregado en dos tipos de fuerza 3879 01:36:09,900 --> 01:36:11,900 distintas, para ir hacia adelante y hacia atrás 3880 01:36:11,900 --> 01:36:13,900 se ha 3881 01:36:13,900 --> 01:36:15,900 puesto aquí esta 3882 01:36:15,900 --> 01:36:17,900 fuerza 3883 01:36:17,900 --> 01:36:19,900 invertido 3884 01:36:19,900 --> 01:36:21,900 aquí lo que no sé es porque, bueno 3885 01:36:21,900 --> 01:36:23,900 si se está duplicando una 3886 01:36:23,900 --> 01:36:25,900 esto podría estar comentado borrado, de hecho 3887 01:36:25,900 --> 01:36:27,900 esto es un error, pues se está aplicando el torque 3888 01:36:27,900 --> 01:36:29,900 dos veces, vale, y aquí 3889 01:36:29,900 --> 01:36:31,900 lo que estamos haciendo es lo mismo para añadir 3890 01:36:31,900 --> 01:36:33,900 un torque en relación 3891 01:36:33,900 --> 01:36:35,900 al horizontal, vale 3892 01:36:35,900 --> 01:36:37,900 es decir, hacia adelante y hacia atrás, ahora mismo 3893 01:36:37,900 --> 01:36:39,900 se está aplicando la fuerza con el 3894 01:36:39,900 --> 01:36:41,900 move V, que es lo que tengo 3895 01:36:41,900 --> 01:36:43,900 configurado ahora mismo con la W y la S 3896 01:36:43,900 --> 01:36:45,900 y los laterales son 3897 01:36:45,900 --> 01:36:47,900 la A y la D, que lo mismo, están 3898 01:36:47,900 --> 01:36:49,900 aplicando una fuerza según el input 3899 01:36:49,900 --> 01:36:51,900 que estamos recibiendo, vale 3900 01:36:51,900 --> 01:36:53,900 aquí se vería 3901 01:36:53,900 --> 01:36:55,900 que es un número float que multiplica el resto 3902 01:36:55,900 --> 01:36:57,900 de elementos, y ojo 3903 01:36:57,900 --> 01:36:59,900 y ahora, alguien creo que va a preguntar algo 3904 01:36:59,900 --> 01:37:01,900 aquí vais a decir, que raro 3905 01:37:01,900 --> 01:37:03,900 no, que para ir hacia adelante 3906 01:37:03,900 --> 01:37:05,900 y hacia atrás sea forward, pero para 3907 01:37:05,900 --> 01:37:07,900 girar hacia los lados también sea forward 3908 01:37:07,900 --> 01:37:09,900 vale, pero es que recordad 3909 01:37:09,900 --> 01:37:11,900 también lo ponen los apuntes, que el torque 3910 01:37:11,900 --> 01:37:13,900 se hace en relación a un eje 3911 01:37:13,900 --> 01:37:15,900 es decir, nosotros realmente lo que queremos 3912 01:37:15,900 --> 01:37:17,900 es que gire con respecto 3913 01:37:17,900 --> 01:37:19,900 al eje forward, al de 3914 01:37:19,900 --> 01:37:21,900 profundidad, vale, en torno a ese eje 3915 01:37:21,900 --> 01:37:23,900 ya hará el giro, vale 3916 01:37:23,900 --> 01:37:25,900 no es hacia donde se mueve, como en la fuerza 3917 01:37:25,900 --> 01:37:27,900 sino, en torno a que eje empieza a girar 3918 01:37:27,900 --> 01:37:29,900 vale 3919 01:37:29,900 --> 01:37:31,900 si, a ver, alguien 3920 01:37:31,900 --> 01:37:33,900 me quería preguntar algo, creo 3921 01:37:33,900 --> 01:37:35,900 si, mira, una cosa, en vez de poner 3922 01:37:35,900 --> 01:37:37,900 menos vector 3 forward 3923 01:37:37,900 --> 01:37:39,900 vector third back, por ejemplo 3924 01:37:39,900 --> 01:37:41,900 efectivamente, vale, esto 3925 01:37:41,900 --> 01:37:43,900 si que hay métodos 3926 01:37:43,900 --> 01:37:45,900 vale, que no permiten usar todos los 3927 01:37:45,900 --> 01:37:47,900 atajos de vector 3 y a veces solo se puede 3928 01:37:47,900 --> 01:37:49,900 usar el forward, porque por lo que sea 3929 01:37:49,900 --> 01:37:51,900 está limitado, en este caso 3930 01:37:51,900 --> 01:37:53,900 que no existe el problema 3931 01:37:53,900 --> 01:37:55,900 es lo mismo invertir 3932 01:37:55,900 --> 01:37:57,900 el forward que poner vector back, vale 3933 01:37:57,900 --> 01:37:59,900 ahora mismo le voy a dar al juego y va a ser 3934 01:37:59,900 --> 01:38:01,900 exactamente igual que lo otro que tenía 3935 01:38:01,900 --> 01:38:03,900 vale, se mueve y cuando doy 3936 01:38:03,900 --> 01:38:05,900 a la tecla va a la izquierda y la doy 3937 01:38:05,900 --> 01:38:07,900 a la derecha, vale 3938 01:38:07,900 --> 01:38:09,900 vale, y luego 3939 01:38:09,900 --> 01:38:11,900 otra pregunta, cuando haces torque 3940 01:38:11,900 --> 01:38:13,900 entiendo que es 3941 01:38:13,900 --> 01:38:15,900 lo que haces es mover 3942 01:38:15,900 --> 01:38:17,900 no te estoy escuchando, acércate más al micrófono 3943 01:38:17,900 --> 01:38:19,900 si, ahora si 3944 01:38:19,900 --> 01:38:21,900 ahora si 3945 01:38:21,900 --> 01:38:23,900 lo que haces es mover 3946 01:38:23,900 --> 01:38:25,900 lo que sea, la pelota o la plataforma 3947 01:38:25,900 --> 01:38:27,900 o el palo, lo que sea 3948 01:38:27,900 --> 01:38:29,900 sobre su propio eje, no sobre el eje del mundo 3949 01:38:29,900 --> 01:38:31,900 entiendo 3950 01:38:31,900 --> 01:38:33,900 lo hace sobre sí mismo, si 3951 01:38:33,900 --> 01:38:35,900 sobre sí mismo, eso me refiero 3952 01:38:35,900 --> 01:38:37,900 lo hace en relación 3953 01:38:37,900 --> 01:38:39,900 a las coordenadas del mundo 3954 01:38:39,900 --> 01:38:41,900 porque, si no se vería 3955 01:38:41,900 --> 01:38:43,900 a ver si, espera 3956 01:38:43,900 --> 01:38:45,900 déjame que lo piense un segundo 3957 01:38:45,900 --> 01:38:47,900 si yo 3958 01:38:47,900 --> 01:38:49,900 no lo hiciera sobre el mundo 3959 01:38:49,900 --> 01:38:51,900 vale, piensa una cosa 3960 01:38:51,900 --> 01:38:53,900 la pelota y fíjate 3961 01:38:53,900 --> 01:38:55,900 fíjate por ejemplo en las líneas 3962 01:38:55,900 --> 01:38:57,900 que está marcando el collider 3963 01:38:57,900 --> 01:38:59,900 vale, yo cuando voy rotando 3964 01:38:59,900 --> 01:39:01,900 ves que va cambiando la orientación, también fíjate aquí 3965 01:39:01,900 --> 01:39:03,900 como cambia hacia donde es 3966 01:39:03,900 --> 01:39:05,900 el arriba abajo 3967 01:39:05,900 --> 01:39:07,900 de la propia bola, vale 3968 01:39:07,900 --> 01:39:09,900 ese es el relativo a la bola, la posición 3969 01:39:09,900 --> 01:39:11,900 está cambiando en todo momento 3970 01:39:11,900 --> 01:39:13,900 y sin embargo yo cuando le doy a la W 3971 01:39:13,900 --> 01:39:15,900 va hacia delante 3972 01:39:15,900 --> 01:39:17,900 da igual en que momento esté girado 3973 01:39:17,900 --> 01:39:19,900 si estos movimientos y estos torques 3974 01:39:19,900 --> 01:39:21,900 no se hicieran en relación al propio objeto 3975 01:39:21,900 --> 01:39:23,900 cuando yo, que de hecho 3976 01:39:23,900 --> 01:39:25,900 se puede hacer, ahora vamos a hacer un ejemplo 3977 01:39:25,900 --> 01:39:27,900 si esto no fuera con respecto 3978 01:39:27,900 --> 01:39:29,900 al mundo, vale, pues la pelota 3979 01:39:29,900 --> 01:39:31,900 iría hacia delante en relación 3980 01:39:31,900 --> 01:39:33,900 a donde ya estuviera girada la pelota, es decir 3981 01:39:33,900 --> 01:39:35,900 que si yo aquí la he girado un poquito 3982 01:39:35,900 --> 01:39:37,900 y está mirando el 3983 01:39:37,900 --> 01:39:39,900 frente hacia abajo, cuando yo le diera 3984 01:39:39,900 --> 01:39:41,900 hacia abajo, intentaría ir hacia abajo, pero no lo está 3985 01:39:41,900 --> 01:39:43,900 intentando 3986 01:39:43,900 --> 01:39:45,900 entonces es hacia el mundo 3987 01:39:45,900 --> 01:39:47,900 es verdad que luego existe 3988 01:39:47,900 --> 01:39:49,900 aquí más o menos va a funcionar, porque como es un objeto redondo 3989 01:39:49,900 --> 01:39:51,900 va a aplicar fuerza, pero 3990 01:39:51,900 --> 01:39:53,900 cuando quieras que estos 3991 01:39:53,900 --> 01:39:55,900 estas fuerzas se apliquen 3992 01:39:55,900 --> 01:39:57,900 con respecto al 3993 01:39:57,900 --> 01:39:59,900 la orientación del propio 3994 01:39:59,900 --> 01:40:01,900 objeto, la local, vale 3995 01:40:01,900 --> 01:40:03,900 hay otros métodos 3996 01:40:03,900 --> 01:40:05,900 como el transform forward 3997 01:40:05,900 --> 01:40:07,900 vale, ves que no da fallo, y el transform back 3998 01:40:07,900 --> 01:40:09,900 esto no siempre es 3999 01:40:09,900 --> 01:40:11,900 tal cual te lo estoy diciendo, mira de hecho 4000 01:40:11,900 --> 01:40:13,900 mira un ejemplo, transform punto back 4001 01:40:13,900 --> 01:40:15,900 no existe, pero si existe 4002 01:40:15,900 --> 01:40:17,900 forward, vale, en ese caso 4003 01:40:17,900 --> 01:40:19,900 si quisiéramos hacer lo mismo, ahí tenemos que hacer la solución 4004 01:40:19,900 --> 01:40:21,900 del menos, vale, para que veas que a veces 4005 01:40:21,900 --> 01:40:23,900 es que hay que buscar las vueltas 4006 01:40:23,900 --> 01:40:25,900 ahora, cuando yo lance el juego 4007 01:40:25,900 --> 01:40:27,900 en todo momento va a aplicar fuerzas 4008 01:40:27,900 --> 01:40:29,900 pero va a intentar hacerlas con respecto 4009 01:40:29,900 --> 01:40:31,900 a los ejes, es verdad 4010 01:40:31,900 --> 01:40:33,900 que como es un objeto 4011 01:40:33,900 --> 01:40:35,900 redondo, si no lo puedo hacer 4012 01:40:35,900 --> 01:40:37,900 con el cubo, ahora si no otra vez 4013 01:40:37,900 --> 01:40:39,900 vale, pero ahora si está aplicando las fuerzas 4014 01:40:39,900 --> 01:40:41,900 o lo está intentando en relación a los ejes locales 4015 01:40:41,900 --> 01:40:43,900 vale, al 4016 01:40:43,900 --> 01:40:45,900 esto es fácil de entender o de asimilar 4017 01:40:45,900 --> 01:40:47,900 porque está en todo momento 4018 01:40:47,900 --> 01:40:49,900 aplicando la fuerza en relación al 4019 01:40:49,900 --> 01:40:51,900 transform, a la situación del transform 4020 01:40:51,900 --> 01:40:53,900 el transform forward será 4021 01:40:53,900 --> 01:40:55,900 en relación a qué rotación tiene 4022 01:40:55,900 --> 01:40:57,900 vale, de hecho si me pongo aquí 4023 01:40:59,900 --> 01:41:01,900 en workspace 4024 01:41:01,900 --> 01:41:03,900 vale, eso, a veces 4025 01:41:03,900 --> 01:41:05,900 este transform forward funciona así 4026 01:41:05,900 --> 01:41:07,900 y a veces no, vale, pero es como una 4027 01:41:07,900 --> 01:41:09,900 regla que existe, vamos, mira 4028 01:41:09,900 --> 01:41:11,900 lo voy a hacer en el cubo, le voy a 4029 01:41:11,900 --> 01:41:13,900 voy a quitar la bola, voy a poner el cubo 4030 01:41:13,900 --> 01:41:15,900 que se vea 4031 01:41:15,900 --> 01:41:17,900 y le voy a poner el 4032 01:41:17,900 --> 01:41:19,900 mismo script que estoy poniendo a la bola 4033 01:41:19,900 --> 01:41:21,900 que a ver como se llamaba, de las fuerzas que es el player 4034 01:41:21,900 --> 01:41:23,900 manager, el player manager 4035 01:41:23,900 --> 01:41:25,900 lo aplico aquí 4036 01:41:25,900 --> 01:41:27,900 vale, y ahora 4037 01:41:27,900 --> 01:41:29,900 es este objeto el que tiene la 4038 01:41:29,900 --> 01:41:31,900 fuerza, vale, cuando 4039 01:41:31,900 --> 01:41:33,900 cuando le das 4040 01:41:33,900 --> 01:41:35,900 cuando le doy para adelante 4041 01:41:35,900 --> 01:41:37,900 va hacia el adelante, no, del 4042 01:41:37,900 --> 01:41:39,900 objeto, espera que le estoy dando mucha fuerza 4043 01:41:39,900 --> 01:41:41,900 le voy a bajar un poco para este ejemplo 4044 01:41:41,900 --> 01:41:43,900 le voy a dar fuerza 4045 01:41:43,900 --> 01:41:45,900 a mi, no, un tercio 4046 01:41:45,900 --> 01:41:47,900 y aquí 20, a ver que tal 4047 01:41:47,900 --> 01:41:49,900 va así 4048 01:41:49,900 --> 01:41:51,900 vale 4049 01:41:51,900 --> 01:41:53,900 le doy, vale 4050 01:41:53,900 --> 01:41:55,900 y se va moviendo hacia adelante 4051 01:41:55,900 --> 01:41:57,900 ahora le da muy poca fuerza, a ver, perdonad 4052 01:41:57,900 --> 01:41:59,900 esto es prueba 4053 01:41:59,900 --> 01:42:01,900 y error, es decir, es ir variando los 4054 01:42:01,900 --> 01:42:03,900 valores para ir viendo cual funciona 4055 01:42:03,900 --> 01:42:05,900 bien, le doy 4056 01:42:05,900 --> 01:42:07,900 fuerza, vale, y se va moviendo 4057 01:42:07,900 --> 01:42:09,900 vale, veréis 4058 01:42:09,900 --> 01:42:11,900 que yo le doy una vez 4059 01:42:11,900 --> 01:42:13,900 vale, e intenta ir 4060 01:42:13,900 --> 01:42:15,900 hacia adelante y va hacia adelante y se lanza 4061 01:42:15,900 --> 01:42:17,900 para atrás, pero aunque yo le de más para adelante 4062 01:42:17,900 --> 01:42:19,900 como ahora está, fijaos 4063 01:42:19,900 --> 01:42:21,900 eh 4064 01:42:21,900 --> 01:42:23,900 a ver, un segundo, que se ha ido 4065 01:42:23,900 --> 01:42:25,900 a cuenca, ahora bajará 4066 01:42:25,900 --> 01:42:27,900 ahora, cuando yo le doy para adelante 4067 01:42:27,900 --> 01:42:29,900 como está mirando hacia el suelo, vuelvo a darle 4068 01:42:29,900 --> 01:42:31,900 fijaos en la línea azul del propio objeto 4069 01:42:31,900 --> 01:42:33,900 el propio objeto, su forward es hacia allí 4070 01:42:33,900 --> 01:42:35,900 hacia el fondo, yo le doy una fuerza 4071 01:42:35,900 --> 01:42:37,900 hacia adelante, y ahora sigo dando hacia adelante 4072 01:42:37,900 --> 01:42:39,900 y está empujando hacia abajo 4073 01:42:39,900 --> 01:42:41,900 digo, leche, claro 4074 01:42:41,900 --> 01:42:43,900 la fuerza ya no es con respecto al mundo 4075 01:42:43,900 --> 01:42:45,900 si le doy a la S hacia atrás 4076 01:42:45,900 --> 01:42:47,900 lo que hace es, aunque se le aplica una fuerza muy 4077 01:42:47,900 --> 01:42:49,900 vasta, lo que hace 4078 01:42:49,900 --> 01:42:51,900 es, cuando le doy atrás es 4079 01:42:51,900 --> 01:42:53,900 saltar, no va hacia atrás 4080 01:42:53,900 --> 01:42:55,900 a nivel del mundo, sino que 4081 01:42:55,900 --> 01:42:57,900 pues placa y va hacia 4082 01:42:57,900 --> 01:42:59,900 atrás que tiene en relación a sus ejes 4083 01:42:59,900 --> 01:43:01,900 si yo cambiara esto otra vez 4084 01:43:01,900 --> 01:43:03,900 a vector 3 4085 01:43:03,900 --> 01:43:05,900 vale, que es con respecto al mundo 4086 01:43:05,900 --> 01:43:07,900 vector 3 y 4087 01:43:07,900 --> 01:43:09,900 vector 3 4088 01:43:09,900 --> 01:43:11,900 forward, vale 4089 01:43:11,900 --> 01:43:13,900 vais a ver que ahora el comportamiento 4090 01:43:13,900 --> 01:43:15,900 ha variado ligeramente, y es a 4091 01:43:15,900 --> 01:43:17,900 diferencia de, si os acordáis de la 4092 01:43:17,900 --> 01:43:19,900 práctica 2, que el translate tenía 4093 01:43:19,900 --> 01:43:21,900 un segundo parámetro, un segundo argumento que era 4094 01:43:21,900 --> 01:43:23,900 el space world 4095 01:43:23,900 --> 01:43:25,900 el space self 4096 01:43:25,900 --> 01:43:27,900 vale, aquí 4097 01:43:27,900 --> 01:43:29,900 pues se gestiona de otra forma, ahora 4098 01:43:29,900 --> 01:43:31,900 fijaos, cojo el cubo 4099 01:43:31,900 --> 01:43:33,900 voy al cubo, vale 4100 01:43:33,900 --> 01:43:35,900 y voy a poner el shading que se vea todo 4101 01:43:35,900 --> 01:43:37,900 vale, que antes lo he quitado, bueno 4102 01:43:37,900 --> 01:43:39,900 voy al juego, le doy hacia adelante, se mueve para adelante 4103 01:43:39,900 --> 01:43:41,900 le sigo dando hacia adelante 4104 01:43:41,900 --> 01:43:43,900 y va hacia adelante independientemente 4105 01:43:43,900 --> 01:43:45,900 ya le he dado muy fuerte, independientemente 4106 01:43:45,900 --> 01:43:47,900 de donde esté mirando las coordenadas 4107 01:43:47,900 --> 01:43:49,900 del propio objeto 4108 01:43:49,900 --> 01:43:51,900 vale, y por eso yo le estoy dando 4109 01:43:51,900 --> 01:43:53,900 muy fuerte, vale, pero va hacia adelante 4110 01:43:53,900 --> 01:43:55,900 y hacia atrás, y da igual 4111 01:43:55,900 --> 01:43:57,900 que el 4112 01:43:57,900 --> 01:43:59,900 mundo, es decir, que el objeto esté mirando hacia un lado 4113 01:43:59,900 --> 01:44:01,900 o hacia otro, vale, que 4114 01:44:01,900 --> 01:44:03,900 aquí habría que darle más peso al cubo 4115 01:44:03,900 --> 01:44:05,900 vale, porque parece que 4116 01:44:05,900 --> 01:44:07,900 está hecho de viento, un poquito de 4117 01:44:07,900 --> 01:44:09,900 resistencia, vale, para que se mueva un poco más 4118 01:44:09,900 --> 01:44:11,900 cuando cambie la masa y 4119 01:44:11,900 --> 01:44:13,900 el drag, atención porque 4120 01:44:13,900 --> 01:44:15,900 también habrá que darle más o menos fuerza, vale 4121 01:44:15,900 --> 01:44:17,900 porque si pesa mucho, a ver voy a bajarlo 4122 01:44:17,900 --> 01:44:19,900 vale, esto se puede en vivo 4123 01:44:19,900 --> 01:44:21,900 ir comprobando cuánto 4124 01:44:21,900 --> 01:44:23,900 de fuerza, es decir, los propios 4125 01:44:23,900 --> 01:44:25,900 valores se pueden ir ajustando en vivo 4126 01:44:25,900 --> 01:44:27,900 para ir viendo qué valores nos interesan 4127 01:44:27,900 --> 01:44:29,900 a ver, joe 4128 01:44:29,900 --> 01:44:31,900 a ver, voy a bajarle la masa mucho 4129 01:44:31,900 --> 01:44:33,900 ahí ya, ahora me he pasado 4130 01:44:33,900 --> 01:44:35,900 vale, que ojo, que esto para el testeo 4131 01:44:35,900 --> 01:44:37,900 está bien, pero si decimos, ah pues 0,23 4132 01:44:37,900 --> 01:44:39,900 es el valor, guardarlo en la memoria 4133 01:44:39,900 --> 01:44:41,900 porque cuando dejemos de dar a reproducir 4134 01:44:41,900 --> 01:44:43,900 vuelve a los valores que tenía antes de reproducir 4135 01:44:43,900 --> 01:44:45,900 ahora es cuando podríamos poner 0,23 4136 01:44:45,900 --> 01:44:47,900 vale, que esto ya lo expliqué también 4137 01:44:47,900 --> 01:44:49,900 un día, pero es importante 4138 01:44:49,900 --> 01:44:51,900 entonces, creo que te he solucionado 4139 01:44:51,900 --> 01:44:53,900 vamos, te he respondido 4140 01:44:53,900 --> 01:44:55,900 a la duda, no, de 4141 01:44:55,900 --> 01:44:57,900 que en vector 3 si se refiere al mundo 4142 01:44:57,900 --> 01:44:59,900 y si quisieras que no fuera al mundo 4143 01:44:59,900 --> 01:45:01,900 habría que hacerlo a través del transform 4144 01:45:01,900 --> 01:45:03,900 a ver, que no sé si 4145 01:45:03,900 --> 01:45:05,900 tal 4146 01:45:05,900 --> 01:45:07,900 resuelta la duda un poco 4147 01:45:07,900 --> 01:45:09,900 vale 4148 01:45:09,900 --> 01:45:11,900 estoy dando muchos rodeos 4149 01:45:11,900 --> 01:45:13,900 por temas muy interesantes y que me interesan mucho 4150 01:45:13,900 --> 01:45:15,900 de cara a siguientes prácticas, vamos a ir 4151 01:45:15,900 --> 01:45:17,900 un poco más al grano, de hecho la tutoría 4152 01:45:17,900 --> 01:45:19,900 debería durar hasta ahora, pero 4153 01:45:19,900 --> 01:45:21,900 voy a estar un poquillo más 4154 01:45:21,900 --> 01:45:23,900 el cambio de escena 4155 01:45:23,900 --> 01:45:25,900 vale 4156 01:45:25,900 --> 01:45:27,900 voy a hacer lo mismo de antes 4157 01:45:27,900 --> 01:45:29,900 como ya he explicado 4158 01:45:29,900 --> 01:45:31,900 como funcionan 4159 01:45:31,900 --> 01:45:33,900 los 4160 01:45:33,900 --> 01:45:35,900 los 4161 01:45:35,900 --> 01:45:37,900 colliders, los triggers, etc 4162 01:45:37,900 --> 01:45:39,900 voy a ir al que tenía preparado, que voy a ir un poco más rápido 4163 01:45:39,900 --> 01:45:41,900 y vuelvo a poner 4164 01:45:41,900 --> 01:45:43,900 vale, reinicio me lo cargo 4165 01:45:43,900 --> 01:45:45,900 que es el que habíamos hecho para esto 4166 01:45:45,900 --> 01:45:47,900 y pongo precipicio, que es el mismo 4167 01:45:47,900 --> 01:45:49,900 comportamiento de antes, es un objeto 4168 01:45:49,900 --> 01:45:51,900 vacío de visibilidad, no tiene ningún componente 4169 01:45:51,900 --> 01:45:53,900 para visibilizar nada 4170 01:45:53,900 --> 01:45:55,900 tiene un boss collider como un trigger 4171 01:45:55,900 --> 01:45:57,900 para que cuando se meta la bola 4172 01:45:57,900 --> 01:45:59,900 pues a ver que tenemos en el script 4173 01:45:59,900 --> 01:46:01,900 vamos allá, tenemos un 4174 01:46:01,900 --> 01:46:03,900 onTriggerEnter 4175 01:46:03,900 --> 01:46:05,900 que va a desencadenar esto 4176 01:46:05,900 --> 01:46:07,900 vale, varias cosas 4177 01:46:07,900 --> 01:46:09,900 la gestión de escenas 4178 01:46:09,900 --> 01:46:11,900 se ve en el tema 4, que ya tenéis abierto 4179 01:46:11,900 --> 01:46:13,900 hace un tiempo, en la primera parte 4180 01:46:13,900 --> 01:46:15,900 vale, entonces, aunque en la tarea 4181 01:46:15,900 --> 01:46:17,900 ya se dan las pautas para ver 4182 01:46:17,900 --> 01:46:19,900 cómo funciona esto 4183 01:46:19,900 --> 01:46:21,900 está más desarrollado en el tema 4 4184 01:46:21,900 --> 01:46:23,900 por si queréis leerlo y volver aquí 4185 01:46:23,900 --> 01:46:25,900 importante, para cuando vayamos a 4186 01:46:25,900 --> 01:46:27,900 recurrir a algo relacionado con la gestión 4187 01:46:27,900 --> 01:46:29,900 de escenas, vale, que es que 4188 01:46:29,900 --> 01:46:31,900 habrá ciertos métodos 4189 01:46:31,900 --> 01:46:33,900 como este de aquí, que es 4190 01:46:33,900 --> 01:46:35,900 funciona a través de esta clase 4191 01:46:35,900 --> 01:46:37,900 llamada SceneManager, como este que 4192 01:46:37,900 --> 01:46:39,900 activa 4193 01:46:39,900 --> 01:46:41,900 Scene, etc, vale 4194 01:46:41,900 --> 01:46:43,900 tenemos que poner una biblioteca 4195 01:46:43,900 --> 01:46:45,900 en esta sección de Usings, que es lo que hay 4196 01:46:45,900 --> 01:46:47,900 al principio, que es una biblioteca 4197 01:46:47,900 --> 01:46:49,900 que carga otra posibilidad de clases 4198 01:46:49,900 --> 01:46:51,900 esto también ya lo vimos en un momento, si yo por ejemplo 4199 01:46:51,900 --> 01:46:53,900 comentara esta línea 4200 01:46:53,900 --> 01:46:55,900 me daría error, porque hay 4201 01:46:55,900 --> 01:46:57,900 comandos e instrucciones que no se pueden 4202 01:46:57,900 --> 01:46:59,900 ejecutar, porque no se han programado 4203 01:46:59,900 --> 01:47:01,900 previamente y estas palabras clave 4204 01:47:01,900 --> 01:47:03,900 no aluden a nada, entonces 4205 01:47:03,900 --> 01:47:05,900 siempre que vayamos a hacer gestión de escena 4206 01:47:05,900 --> 01:47:07,900 esto hay que aprendérselo de memorieta 4207 01:47:07,900 --> 01:47:09,900 hay que usar este, esta librería 4208 01:47:09,900 --> 01:47:11,900 hay que implementarla en este código, vale 4209 01:47:11,900 --> 01:47:13,900 luego, en este script 4210 01:47:13,900 --> 01:47:15,900 que tengo puesto en ese 4211 01:47:15,900 --> 01:47:17,900 Collider Trigger, vale, no va a ejecutar 4212 01:47:17,900 --> 01:47:19,900 nada en tiempo de ejecución, no hay nada 4213 01:47:19,900 --> 01:47:21,900 relacionado con 4214 01:47:21,900 --> 01:47:23,900 el Start, ni el Update, ni el 4215 01:47:23,900 --> 01:47:25,900 Late Update, ni nada, yo quiero que se 4216 01:47:25,900 --> 01:47:27,900 ejecute solo en el momento que haya 4217 01:47:27,900 --> 01:47:29,900 un OnTrigger de un elemento que 4218 01:47:29,900 --> 01:47:31,900 cruza ese área 4219 01:47:31,900 --> 01:47:33,900 definida por el Collider, vale 4220 01:47:33,900 --> 01:47:35,900 aquí 4221 01:47:35,900 --> 01:47:37,900 era una de las cosas que quería explicar hoy 4222 01:47:37,900 --> 01:47:39,900 pero lo dejaré para el siguiente día, pero 4223 01:47:39,900 --> 01:47:41,900 importante, cuando veáis un método 4224 01:47:41,900 --> 01:47:43,900 que entre sus paréntesis, al declarar el 4225 01:47:43,900 --> 01:47:45,900 método, ve, aquí estamos declarando un método 4226 01:47:45,900 --> 01:47:47,900 void, vale, que recordad 4227 01:47:47,900 --> 01:47:49,900 que eran esos métodos que dentro se metía código 4228 01:47:49,900 --> 01:47:51,900 que pasaba por ese código y se 4229 01:47:51,900 --> 01:47:53,900 ejecutaba, vale 4230 01:47:53,900 --> 01:47:55,900 ejecuta esto y cuando veáis entre paréntesis 4231 01:47:55,900 --> 01:47:57,900 un tipo 4232 01:47:57,900 --> 01:47:59,900 de variable, vale, aquí al final lo que 4233 01:47:59,900 --> 01:48:01,900 se está haciendo es declarar una variable, vale 4234 01:48:01,900 --> 01:48:03,900 que vamos a usar dentro 4235 01:48:03,900 --> 01:48:05,900 de este script, cuando declaramos una 4236 01:48:05,900 --> 01:48:07,900 variable de este tipo, vale 4237 01:48:07,900 --> 01:48:09,900 vamos a poder afectar 4238 01:48:09,900 --> 01:48:11,900 o cambiar 4239 01:48:11,900 --> 01:48:13,900 mediante parámetros 4240 01:48:13,900 --> 01:48:15,900 estos 4241 01:48:15,900 --> 01:48:17,900 los acciones también 4242 01:48:17,900 --> 01:48:19,900 ahora mismo si marco este other 4243 01:48:19,900 --> 01:48:21,900 vale, veis que aquí se está haciendo 4244 01:48:21,900 --> 01:48:23,900 una referencia a other también aquí 4245 01:48:23,900 --> 01:48:25,900 vale, básicamente de manera muy 4246 01:48:25,900 --> 01:48:27,900 simplificada 4247 01:48:27,900 --> 01:48:29,900 lo que metemos como, lo que se llaman 4248 01:48:29,900 --> 01:48:31,900 parámetros de un 4249 01:48:31,900 --> 01:48:33,900 trigger, vale, es 4250 01:48:33,900 --> 01:48:35,900 en el caso de un trigger 4251 01:48:35,900 --> 01:48:37,900 es que estamos aludiendo a que el otro 4252 01:48:37,900 --> 01:48:39,900 objeto que ha chocado con nosotros 4253 01:48:39,900 --> 01:48:41,900 vamos a poder hacer acciones con él 4254 01:48:41,900 --> 01:48:43,900 por ejemplo en este caso 4255 01:48:43,900 --> 01:48:45,900 tenemos el precipicio, ese 4256 01:48:45,900 --> 01:48:47,900 Collider esperando a que choque algo 4257 01:48:47,900 --> 01:48:49,900 y claro, en ciertos momentos 4258 01:48:49,900 --> 01:48:51,900 no puede interesar, vale, pero si choca 4259 01:48:51,900 --> 01:48:53,900 la plataforma porque se cae 4260 01:48:53,900 --> 01:48:55,900 no quiero reiniciar de nivel 4261 01:48:55,900 --> 01:48:57,900 quiero que se reinicie solo en el momento que sea 4262 01:48:57,900 --> 01:48:59,900 la bola, por ejemplo 4263 01:48:59,900 --> 01:49:01,900 vale, para eso tendremos que recurrir 4264 01:49:01,900 --> 01:49:03,900 a esta variable que se genera cada vez que 4265 01:49:03,900 --> 01:49:05,900 se ejecuta un trigger, vale 4266 01:49:05,900 --> 01:49:07,900 ahora mismo 4267 01:49:07,900 --> 01:49:09,900 de cara a la tarea 4268 01:49:09,900 --> 01:49:11,900 sería mejor que siguiera por aquí 4269 01:49:11,900 --> 01:49:13,900 pero hay una cosa que voy a explicar 4270 01:49:13,900 --> 01:49:15,900 antes, un poco 4271 01:49:15,900 --> 01:49:17,900 antes, vale, cuando en 4272 01:49:17,900 --> 01:49:19,900 voy a poner aquí un start 4273 01:49:19,900 --> 01:49:21,900 simplemente por tenerlo aquí preparado 4274 01:49:21,900 --> 01:49:23,900 cuando hacíamos un instantiate 4275 01:49:23,900 --> 01:49:25,900 vale, recordad como 4276 01:49:25,900 --> 01:49:27,900 funcionaba, aquí lo tenemos 4277 01:49:27,900 --> 01:49:29,900 cuando hacíamos un instantiate 4278 01:49:29,900 --> 01:49:31,900 recordad que había lo que se llamaba 4279 01:49:31,900 --> 01:49:33,900 sobrecargas, vale, y entre los paréntesis 4280 01:49:33,900 --> 01:49:35,900 podían aparecer 4281 01:49:35,900 --> 01:49:37,900 distintos tipos de variable 4282 01:49:37,900 --> 01:49:39,900 que había que introducir junto aquí un nombre de 4283 01:49:39,900 --> 01:49:41,900 referencia de variable, veis que 4284 01:49:41,900 --> 01:49:43,900 se parece ligeramente a esto que tenemos aquí 4285 01:49:43,900 --> 01:49:45,900 vale, esto es un método 4286 01:49:45,900 --> 01:49:47,900 que ya alguien, vale, en una de estas librerías 4287 01:49:47,900 --> 01:49:49,900 que tenemos aquí, ha generado 4288 01:49:49,900 --> 01:49:51,900 un método llamado instantiate 4289 01:49:51,900 --> 01:49:53,900 vale, y al declararlo como estamos 4290 01:49:53,900 --> 01:49:55,900 haciendo aquí, vale 4291 01:49:55,900 --> 01:49:57,900 se puso entre paréntesis 4292 01:49:57,900 --> 01:49:59,900 tipos de variables 4293 01:49:59,900 --> 01:50:01,900 vale, entonces cada vez que estamos 4294 01:50:01,900 --> 01:50:03,900 usando un método 4295 01:50:03,900 --> 01:50:05,900 vale, todas estas sobrecargas 4296 01:50:05,900 --> 01:50:07,900 son que alguien ha dicho, oye 4297 01:50:07,900 --> 01:50:09,900 este método 4298 01:50:09,900 --> 01:50:11,900 se pueden pasar parámetros 4299 01:50:11,900 --> 01:50:13,900 a través de los paréntesis 4300 01:50:13,900 --> 01:50:15,900 y esos parámetros luego se usan dentro 4301 01:50:15,900 --> 01:50:17,900 del método 4302 01:50:17,900 --> 01:50:19,900 vale, para explicar esto 4303 01:50:19,900 --> 01:50:21,900 estoy aquí preparado, voy a salir un poco 4304 01:50:21,900 --> 01:50:23,900 de tema, pero es 4305 01:50:23,900 --> 01:50:25,900 fundamental para ir entendiendo las siguientes 4306 01:50:25,900 --> 01:50:27,900 cosas, vale 4307 01:50:27,900 --> 01:50:29,900 voy a ir a un nivel de prueba 4308 01:50:29,900 --> 01:50:31,900 vale, que es generado aquí, que está vacío 4309 01:50:31,900 --> 01:50:33,900 voy a guardar esto, creo que sí 4310 01:50:33,900 --> 01:50:35,900 vale, y he hecho 4311 01:50:35,900 --> 01:50:37,900 un, esto es simplemente a nivel teórico 4312 01:50:37,900 --> 01:50:39,900 vale, estaba en el tema cero 4313 01:50:39,900 --> 01:50:41,900 que es crear 4314 01:50:41,900 --> 01:50:43,900 métodos, igual que hacíamos 4315 01:50:43,900 --> 01:50:45,900 el de saltar o el de check limits 4316 01:50:45,900 --> 01:50:47,900 que os expliqué un día en el tema 4317 01:50:47,900 --> 01:50:49,900 en la tarea dos, vale 4318 01:50:49,900 --> 01:50:51,900 vamos a, voy a hacer un game object vacío 4319 01:50:51,900 --> 01:50:53,900 con un script dentro 4320 01:50:53,900 --> 01:50:55,900 que sirva para testear lo que 4321 01:50:55,900 --> 01:50:57,900 estamos haciendo en este 4322 01:50:57,900 --> 01:50:59,900 en un script que he creado para 4323 01:50:59,900 --> 01:51:01,900 explicaros esto, vale 4324 01:51:01,900 --> 01:51:03,900 a ver 4325 01:51:05,900 --> 01:51:07,900 voy a empezar por el principio 4326 01:51:07,900 --> 01:51:09,900 de esto, porque entiendo 4327 01:51:09,900 --> 01:51:11,900 que esto es importante que sepáis ahora 4328 01:51:13,900 --> 01:51:15,900 bueno, aquí tengo uno creado, pero lo voy a crear de cero 4329 01:51:15,900 --> 01:51:17,900 realmente, voy a borrar 4330 01:51:17,900 --> 01:51:19,900 este componente y voy a generar 4331 01:51:19,900 --> 01:51:21,900 un script 4332 01:51:21,900 --> 01:51:23,900 que se llame 4333 01:51:23,900 --> 01:51:25,900 probando 4334 01:51:25,900 --> 01:51:27,900 a ver, perdonad, recordad 4335 01:51:27,900 --> 01:51:29,900 hacer bien la nomenclatura, probando 4336 01:51:29,900 --> 01:51:31,900 métodos 4337 01:51:31,900 --> 01:51:33,900 return 4338 01:51:33,900 --> 01:51:35,900 vale, vamos a llamar así 4339 01:51:35,900 --> 01:51:37,900 cuando generamos un método 4340 01:51:37,900 --> 01:51:39,900 y aquí lo tengo 4341 01:51:39,900 --> 01:51:41,900 y lo voy a poner 4342 01:51:41,900 --> 01:51:43,900 a ver, que aquí se me están empezando a acumular un montón de cosas 4343 01:51:43,900 --> 01:51:45,900 cuando 4344 01:51:45,900 --> 01:51:47,900 tenemos este método 4345 01:51:47,900 --> 01:51:49,900 a ver, dónde está 4346 01:51:49,900 --> 01:51:51,900 este no es 4347 01:51:51,900 --> 01:51:53,900 este no es 4348 01:51:53,900 --> 01:51:55,900 este no es 4349 01:51:55,900 --> 01:51:57,900 este método 4350 01:51:57,900 --> 01:51:59,900 recién creado 4351 01:51:59,900 --> 01:52:01,900 no sé por qué aquí se me están juntando todos 4352 01:52:01,900 --> 01:52:03,900 vale 4353 01:52:03,900 --> 01:52:05,900 recordad que nosotros 4354 01:52:05,900 --> 01:52:07,900 podíamos decir, vale, que en el start 4355 01:52:07,900 --> 01:52:09,900 se ejecute un método que se llamara 4356 01:52:09,900 --> 01:52:11,900 que queramos nosotros 4357 01:52:11,900 --> 01:52:13,900 enviar mensaje 4358 01:52:13,900 --> 01:52:15,900 o decir algo 4359 01:52:15,900 --> 01:52:17,900 vale, y ya vimos 4360 01:52:17,900 --> 01:52:19,900 que declarábamos con este void 4361 01:52:19,900 --> 01:52:21,900 un método 4362 01:52:21,900 --> 01:52:23,900 que al final lo que hace es ejecutar 4363 01:52:23,900 --> 01:52:25,900 todo lo que hay adentro 4364 01:52:25,900 --> 01:52:27,900 sin hacer nada más, es decir 4365 01:52:27,900 --> 01:52:29,900 si yo ahora mismo dentro de este método 4366 01:52:29,900 --> 01:52:31,900 vale, aquí está 4367 01:52:31,900 --> 01:52:33,900 le digo 4368 01:52:33,900 --> 01:52:35,900 debug log 4369 01:52:35,900 --> 01:52:37,900 di algo 4370 01:52:37,900 --> 01:52:39,900 vale 4371 01:52:39,900 --> 01:52:41,900 di algo 4372 01:52:41,900 --> 01:52:43,900 punto coma, vale, yo cuando le diga en el start 4373 01:52:43,900 --> 01:52:45,900 decir algo 4374 01:52:45,900 --> 01:52:47,900 con los paréntesis que definen 4375 01:52:47,900 --> 01:52:49,900 que es un método, vale 4376 01:52:49,900 --> 01:52:51,900 yo cuando lance el juego 4377 01:52:51,900 --> 01:52:53,900 se va a meter aquí, es decir, en el start va a decir 4378 01:52:53,900 --> 01:52:55,900 eh, aquí hay un método de decir algo, que se ejecute 4379 01:52:55,900 --> 01:52:57,900 pues dentro de ese script 4380 01:52:57,900 --> 01:52:59,900 hay un método que hemos declarado que es decir algo 4381 01:52:59,900 --> 01:53:01,900 y se ejecuta, verdad, entonces ahora 4382 01:53:01,900 --> 01:53:03,900 cuando lance el juego 4383 01:53:03,900 --> 01:53:05,900 cancel, no sé por qué se ha puesto eso 4384 01:53:05,900 --> 01:53:07,900 cuando le de al play 4385 01:53:07,900 --> 01:53:09,900 en la consola 4386 01:53:09,900 --> 01:53:11,900 a ver, por qué no se ha aplicado 4387 01:53:11,900 --> 01:53:13,900 no le he puesto el script 4388 01:53:13,900 --> 01:53:15,900 atención que si no ponemos el script 4389 01:53:15,900 --> 01:53:17,900 ahora, al lanzar el juego 4390 01:53:17,900 --> 01:53:19,900 debe ser que no guarda 4391 01:53:19,900 --> 01:53:21,900 no 4392 01:53:21,900 --> 01:53:23,900 mmm 4393 01:53:23,900 --> 01:53:25,900 a ver, que tengo aquí un 4394 01:53:25,900 --> 01:53:27,900 jaleo de scripts ya creados 4395 01:53:29,900 --> 01:53:31,900 a ver, voy a cerrar ciertas cosas 4396 01:53:31,900 --> 01:53:33,900 que tengo aquí abiertas 4397 01:53:33,900 --> 01:53:35,900 ah, perdón 4398 01:53:35,900 --> 01:53:37,900 esto, nada 4399 01:53:37,900 --> 01:53:39,900 espera, que estoy con otro monitor, un segundo 4400 01:53:39,900 --> 01:53:41,900 vale 4401 01:53:41,900 --> 01:53:43,900 y ahora, probando método de return, vale 4402 01:53:43,900 --> 01:53:45,900 tengo esto guardado 4403 01:53:45,900 --> 01:53:47,900 tengo probando método de return, eso 4404 01:53:47,900 --> 01:53:49,900 cuando empieza el juego le digo, eh, di algo 4405 01:53:49,900 --> 01:53:51,900 y ahora al ejecutarlo 4406 01:53:51,900 --> 01:53:53,900 en la consola, debería decir 4407 01:53:53,900 --> 01:53:55,900 di algo, ahí está, vale 4408 01:53:55,900 --> 01:53:57,900 que lo mismo, por repaso 4409 01:53:57,900 --> 01:53:59,900 el di algo 4410 01:53:59,900 --> 01:54:01,900 si yo le digo 4411 01:54:01,900 --> 01:54:03,900 que lo llame en vez de 4412 01:54:03,900 --> 01:54:05,900 en el start, en el update, ahora en cada 4413 01:54:05,900 --> 01:54:07,900 fotograma va a meterse en 4414 01:54:07,900 --> 01:54:09,900 decir algo y va a ejecutar, por tanto 4415 01:54:09,900 --> 01:54:11,900 cuando ahora lo ejecute, va a ver un di algo 4416 01:54:11,900 --> 01:54:13,900 en cada frame 4417 01:54:13,900 --> 01:54:15,900 que realice, vale, hasta aquí entiendo 4418 01:54:15,900 --> 01:54:17,900 que esto, ya lo expliqué otro día 4419 01:54:17,900 --> 01:54:19,900 lo tenemos claro, si, si no 4420 01:54:19,900 --> 01:54:21,900 decidme, que esto es importante 4421 01:54:21,900 --> 01:54:23,900 que lo tengamos claro, porque voy a ir un paso más allá ahora 4422 01:54:27,900 --> 01:54:29,900 esto más o menos claro, vale 4423 01:54:29,900 --> 01:54:31,900 hay 4424 01:54:31,900 --> 01:54:33,900 formas de declarar los 4425 01:54:33,900 --> 01:54:35,900 métodos, vale 4426 01:54:35,900 --> 01:54:37,900 que ponen en juego estos paréntesis que hasta ahora 4427 01:54:37,900 --> 01:54:39,900 decíamos, porque aquí hay paréntesis tantas veces 4428 01:54:39,900 --> 01:54:41,900 vale, esto 4429 01:54:41,900 --> 01:54:43,900 básicamente que vamos a hacer, por ejemplo, cuando el 4430 01:54:43,900 --> 01:54:45,900 programador definiera 4431 01:54:45,900 --> 01:54:47,900 el método instantiate 4432 01:54:47,900 --> 01:54:49,900 que nosotros podemos acceder en cualquier momento 4433 01:54:49,900 --> 01:54:51,900 él declaró este método 4434 01:54:51,900 --> 01:54:53,900 y dentro de estos paréntesis puso diferentes 4435 01:54:53,900 --> 01:54:55,900 cosas para que luego nosotros 4436 01:54:55,900 --> 01:54:57,900 supiéramos que meter para hacer 4437 01:54:57,900 --> 01:54:59,900 las acciones, entonces yo por ejemplo 4438 01:54:59,900 --> 01:55:01,900 en cierto 4439 01:55:01,900 --> 01:55:03,900 momento, vale, voy a hacer un 4440 01:55:03,900 --> 01:55:05,900 ejemplo así rápido, ahora 4441 01:55:05,900 --> 01:55:07,900 vemos más, digo que en el start se ejecute 4442 01:55:07,900 --> 01:55:09,900 decir algo, y puedo decir, oye 4443 01:55:09,900 --> 01:55:11,900 aquí, vale 4444 01:55:11,900 --> 01:55:13,900 habrá que decir que haya 4445 01:55:13,900 --> 01:55:15,900 un mensaje de texto 4446 01:55:15,900 --> 01:55:17,900 que sea el que muestre, lo voy a hacer 4447 01:55:17,900 --> 01:55:19,900 rápido y vais a decir que estás haciendo 4448 01:55:19,900 --> 01:55:21,900 pero si yo ahora pongo aquí 4449 01:55:21,900 --> 01:55:23,900 ahora lo explico bien 4450 01:55:25,900 --> 01:55:27,900 Daniel, vale 4451 01:55:27,900 --> 01:55:29,900 vais a ver, vale, vamos a ver la lógica 4452 01:55:29,900 --> 01:55:31,900 de lo que está pasando, en el start 4453 01:55:31,900 --> 01:55:33,900 estamos llamando al método a decir algo 4454 01:55:33,900 --> 01:55:35,900 pero estamos introduciendo un string 4455 01:55:35,900 --> 01:55:37,900 que es Daniel, no 4456 01:55:37,900 --> 01:55:39,900 entonces aquí básicamente estamos dando 4457 01:55:39,900 --> 01:55:41,900 una instrucción para que cuando 4458 01:55:41,900 --> 01:55:43,900 se ejecute este método 4459 01:55:43,900 --> 01:55:45,900 coja lo que hayamos 4460 01:55:45,900 --> 01:55:47,900 enviado al llamar al 4461 01:55:47,900 --> 01:55:49,900 método, vale, que tiene que concordar 4462 01:55:49,900 --> 01:55:51,900 con tipo 4463 01:55:51,900 --> 01:55:53,900 y con tipo de variable, vale 4464 01:55:53,900 --> 01:55:55,900 y va a meter este mensaje 4465 01:55:55,900 --> 01:55:57,900 luego en la instrucción que hagamos 4466 01:55:57,900 --> 01:55:59,900 sé que ahora mismo estaréis 4467 01:55:59,900 --> 01:56:01,900 diciendo, que me está contando este chico 4468 01:56:01,900 --> 01:56:03,900 quiero que veáis, vale, ahora 4469 01:56:03,900 --> 01:56:05,900 vemos más ejemplos, quiero que veáis 4470 01:56:05,900 --> 01:56:07,900 que a partir de este string mensaje 4471 01:56:07,900 --> 01:56:09,900 vale, el debug log va a devolver 4472 01:56:09,900 --> 01:56:11,900 lo que le haya llegado por 4473 01:56:11,900 --> 01:56:13,900 los paréntesis, entonces 4474 01:56:13,900 --> 01:56:15,900 estamos haciendo una especie de puerta 4475 01:56:15,900 --> 01:56:17,900 entre este decir algo 4476 01:56:17,900 --> 01:56:19,900 que le metemos ya un mensaje aquí 4477 01:56:19,900 --> 01:56:21,900 que va a recibir a través de la declaración 4478 01:56:21,900 --> 01:56:23,900 para luego plasmarlo aquí que es la orden 4479 01:56:23,900 --> 01:56:25,900 directa de, oye en el debug log enséame 4480 01:56:25,900 --> 01:56:27,900 un mensaje, a ver 4481 01:56:27,900 --> 01:56:29,900 simplemente por ver si funciona 4482 01:56:29,900 --> 01:56:31,900 yo cuando arranco el juego, esperad 4483 01:56:31,900 --> 01:56:33,900 porque no he guardado, siempre me pasa lo mismo 4484 01:56:33,900 --> 01:56:35,900 a ver un segundo 4485 01:56:35,900 --> 01:56:37,900 aquí, vale, guardo 4486 01:56:37,900 --> 01:56:39,900 y ahora sí que ejecuto 4487 01:56:39,900 --> 01:56:41,900 vais a ver que sale Daniel una vez 4488 01:56:41,900 --> 01:56:43,900 en el start, vale 4489 01:56:43,900 --> 01:56:45,900 esto es el principio de que yo 4490 01:56:45,900 --> 01:56:47,900 cuando 4491 01:56:47,900 --> 01:56:49,900 declaramos un método como el instantiate 4492 01:56:49,900 --> 01:56:51,900 se vayan generando 4493 01:56:51,900 --> 01:56:53,900 esas sobrecargas que decíamos, vale 4494 01:56:53,900 --> 01:56:55,900 entre paréntesis 4495 01:56:55,900 --> 01:56:57,900 instantiate, vale, vais a ver 4496 01:56:57,900 --> 01:56:59,900 que entre estos paréntesis se pueden meter 4497 01:56:59,900 --> 01:57:01,900 un montón de tipos de variable 4498 01:57:01,900 --> 01:57:03,900 y de distinto tipo 4499 01:57:03,900 --> 01:57:05,900 yo por ejemplo imaginaos 4500 01:57:05,900 --> 01:57:07,900 que ahora en vez 4501 01:57:07,900 --> 01:57:09,900 de poner aquí un 4502 01:57:09,900 --> 01:57:11,900 string mensaje le digo, oye 4503 01:57:11,900 --> 01:57:13,900 quiero que lo que reciba por aquí sea 4504 01:57:13,900 --> 01:57:15,900 un número, vale, y voy a poner que sea 4505 01:57:15,900 --> 01:57:17,900 una variable de tipo int 4506 01:57:17,900 --> 01:57:19,900 que sea 4507 01:57:19,900 --> 01:57:21,900 cuyo número 4508 01:57:21,900 --> 01:57:23,900 es valor 4509 01:57:23,900 --> 01:57:25,900 a reflejar, por poner un 4510 01:57:25,900 --> 01:57:27,900 nombre que no sea número 4511 01:57:27,900 --> 01:57:29,900 para que quede más descriptivo 4512 01:57:29,900 --> 01:57:31,900 vale, ahora mismo salen varios fallos 4513 01:57:31,900 --> 01:57:33,900 porque al llamar a este método 4514 01:57:33,900 --> 01:57:35,900 vale, le estamos dando 4515 01:57:35,900 --> 01:57:37,900 este método está declarado aquí, le estamos 4516 01:57:37,900 --> 01:57:39,900 dando un valor, vale 4517 01:57:39,900 --> 01:57:41,900 esto digamos que es una puerta, lo que hay entre paréntesis 4518 01:57:41,900 --> 01:57:43,900 es una puerta 4519 01:57:43,900 --> 01:57:45,900 entre la declaración y cuando 4520 01:57:45,900 --> 01:57:47,900 ya ejecutamos este método 4521 01:57:47,900 --> 01:57:49,900 está recibiendo un valor que 4522 01:57:49,900 --> 01:57:51,900 no es el del tipo que estamos 4523 01:57:51,900 --> 01:57:53,900 declarando, vale 4524 01:57:53,900 --> 01:57:55,900 aquí lo que estamos recibiendo es 4525 01:57:55,900 --> 01:57:57,900 un string y aquí sólo caben ahora mismo 4526 01:57:57,900 --> 01:57:59,900 variables de tipo int, entonces yo por ejemplo 4527 01:57:59,900 --> 01:58:01,900 si le digo 5, aquí ya 4528 01:58:01,900 --> 01:58:03,900 este fallo deja de 4529 01:58:03,900 --> 01:58:05,900 de mostrarse 4530 01:58:05,900 --> 01:58:07,900 y mensaje como no lo hemos declarado aquí 4531 01:58:07,900 --> 01:58:09,900 no está algo que esté declarado 4532 01:58:09,900 --> 01:58:11,900 en la variable, pues no enseña nada 4533 01:58:11,900 --> 01:58:13,900 da fallo, aquí habrá que decir que enseñe 4534 01:58:13,900 --> 01:58:15,900 valor a reflejar 4535 01:58:15,900 --> 01:58:17,900 vale y fijaos 4536 01:58:17,900 --> 01:58:19,900 ahora en la jugada 4537 01:58:19,900 --> 01:58:21,900 he dicho al arrancar 4538 01:58:21,900 --> 01:58:23,900 ejecútate el decir algo y pasa el valor 4539 01:58:23,900 --> 01:58:25,900 5, vale, pues se va a ejecutar 4540 01:58:25,900 --> 01:58:27,900 decir algo y aquí se mete el 4541 01:58:27,900 --> 01:58:29,900 valor 5, vale, digamos que 4542 01:58:29,900 --> 01:58:31,900 crea una nueva variable que se llamará 4543 01:58:31,900 --> 01:58:33,900 valor a reflejar que está guardando el 5 4544 01:58:33,900 --> 01:58:35,900 y dentro de este método 4545 01:58:35,900 --> 01:58:37,900 aquí es el número que ha 4546 01:58:37,900 --> 01:58:39,900 pasado anteriormente, aquí se ha guardado un 5 4547 01:58:39,900 --> 01:58:41,900 y aquí se enseñará un 5 4548 01:58:41,900 --> 01:58:43,900 vale, entonces 4549 01:58:43,900 --> 01:58:45,900 a ver, le doy a consola y le doy al play 4550 01:58:45,900 --> 01:58:47,900 y me enseña 4551 01:58:47,900 --> 01:58:49,900 el 5 4552 01:58:49,900 --> 01:58:51,900 esto, ¿para qué se usa? 4553 01:58:51,900 --> 01:58:53,900 pues por ejemplo, imaginaos 4554 01:58:53,900 --> 01:58:55,900 voy a ir más allá, que 4555 01:58:55,900 --> 01:58:57,900 tengo un método 4556 01:58:57,900 --> 01:58:59,900 que hace operaciones matemáticas 4557 01:58:59,900 --> 01:59:01,900 vale, entonces 4558 01:59:01,900 --> 01:59:03,900 en vez de decir 4559 01:59:03,900 --> 01:59:05,900 que me devuelva la nada, es decir 4560 01:59:05,900 --> 01:59:07,900 que pase por aquí y se ejecute, podemos decir 4561 01:59:07,900 --> 01:59:09,900 no, este método cuando termina 4562 01:59:09,900 --> 01:59:11,900 de ejecutarse, igual que cuando declarábamos 4563 01:59:11,900 --> 01:59:13,900 algo 4564 01:59:13,900 --> 01:59:15,900 a ver, perdonad 4565 01:59:15,900 --> 01:59:17,900 vale, sí, voy a 4566 01:59:17,900 --> 01:59:19,900 dejar esto así 4567 01:59:19,900 --> 01:59:21,900 y esto lo borro 4568 01:59:21,900 --> 01:59:23,900 imaginaos, bueno no 4569 01:59:23,900 --> 01:59:25,900 lo dejo ahí, vale, tengo un método 4570 01:59:25,900 --> 01:59:27,900 que va a tener que devolver algo 4571 01:59:27,900 --> 01:59:29,900 no es el void, el vacío 4572 01:59:29,900 --> 01:59:31,900 que había en el anterior método, sino que aquí va a haber 4573 01:59:31,900 --> 01:59:33,900 un número, es decir 4574 01:59:33,900 --> 01:59:35,900 estamos creando aquí un método que sirve 4575 01:59:35,900 --> 01:59:37,900 para que devuelva un número 4576 01:59:37,900 --> 01:59:39,900 vale, cuando yo haga la ejecución, cuando llame 4577 01:59:39,900 --> 01:59:41,900 en algún momento de ejecución a este método 4578 01:59:41,900 --> 01:59:43,900 él no va a ejecutar lo que está aquí 4579 01:59:43,900 --> 01:59:45,900 dentro, sino que va a devolver un número 4580 01:59:45,900 --> 01:59:47,900 en este caso, vamos a ver 4581 01:59:47,900 --> 01:59:49,900 ejemplos, que esto hasta que no se den ejemplos 4582 01:59:49,900 --> 01:59:51,900 vale, y por ejemplo 4583 01:59:51,900 --> 01:59:53,900 voy a quitar el argumento en este caso 4584 01:59:53,900 --> 01:59:55,900 y voy a decir 4585 01:59:55,900 --> 01:59:57,900 lo que no sé es por qué me está dando 4586 01:59:57,900 --> 01:59:59,900 este fallo, a ver un segundo 4587 01:59:59,900 --> 02:00:01,900 decir algo tal 4588 02:00:01,900 --> 02:00:03,900 vale, ya sé por qué es 4589 02:00:03,900 --> 02:00:05,900 vale, tenemos aquí un int y un 4590 02:00:05,900 --> 02:00:07,900 decir algo, entonces nosotros vamos a 4591 02:00:07,900 --> 02:00:09,900 decir, vamos a crear aquí una variable, por ejemplo 4592 02:00:09,900 --> 02:00:11,900 se llama float, número a 4593 02:00:11,900 --> 02:00:13,900 5, vale 4594 02:00:13,900 --> 02:00:15,900 y luego otro float, que lo declaro 4595 02:00:15,900 --> 02:00:17,900 dentro, vale, y al declararlo 4596 02:00:17,900 --> 02:00:19,900 dentro con el tipo de variable, luego no se 4597 02:00:19,900 --> 02:00:21,900 podrá usar aquí, pero dentro de este 4598 02:00:21,900 --> 02:00:23,900 método aquí especificado, sí 4599 02:00:23,900 --> 02:00:25,900 un número b 4600 02:00:25,900 --> 02:00:27,900 que es 12, vale 4601 02:00:27,900 --> 02:00:29,900 y luego voy a hacer otro 4602 02:00:29,900 --> 02:00:31,900 variable, ahora vemos más 4603 02:00:31,900 --> 02:00:33,900 por qué estamos 4604 02:00:33,900 --> 02:00:35,900 haciendo esto, vale, que va a ser 4605 02:00:35,900 --> 02:00:37,900 número a, esto ya vimos un 4606 02:00:37,900 --> 02:00:39,900 ejemplo de que hacía esto mismo, pero 4607 02:00:39,900 --> 02:00:41,900 en un método de tipo void, en otro día, vale 4608 02:00:41,900 --> 02:00:43,900 vamos a ir un paso más allá, para explicar 4609 02:00:43,900 --> 02:00:45,900 ciertas cosas, vale 4610 02:00:45,900 --> 02:00:47,900 si yo ahora mismo 4611 02:00:47,900 --> 02:00:49,900 ehmm 4612 02:00:49,900 --> 02:00:51,900 quiero ejecutar esta orden, vale 4613 02:00:51,900 --> 02:00:53,900 siempre 4614 02:00:53,900 --> 02:00:55,900 normalmente, siempre que hagamos un método 4615 02:00:55,900 --> 02:00:57,900 que tiene que devolver un valor 4616 02:00:57,900 --> 02:00:59,900 como un int aquí o una booleana, hay que 4617 02:00:59,900 --> 02:01:01,900 usar una palabra clave muy importante que se llama 4618 02:01:01,900 --> 02:01:03,900 return, devolver 4619 02:01:03,900 --> 02:01:05,900 vale, entonces 4620 02:01:05,900 --> 02:01:07,900 ehmm 4621 02:01:07,900 --> 02:01:09,900 return sirve para que cuando se ejecute lo 4622 02:01:09,900 --> 02:01:11,900 que hay aquí, vale, devuelva 4623 02:01:11,900 --> 02:01:13,900 un valor, entonces 4624 02:01:13,900 --> 02:01:15,900 por ejemplo, quiero que devuelvas lo que 4625 02:01:15,900 --> 02:01:17,900 se ha guardado en resultado 4626 02:01:17,900 --> 02:01:19,900 a ver, qué es lo que está dando 4627 02:01:19,900 --> 02:01:21,900 ehmm 4628 02:01:21,900 --> 02:01:23,900 return resultado, sí 4629 02:01:23,900 --> 02:01:25,900 ah, vale 4630 02:01:25,900 --> 02:01:27,900 bueno, aquí hay otro problema 4631 02:01:27,900 --> 02:01:29,900 que es que estamos usando números float 4632 02:01:29,900 --> 02:01:31,900 tiene que devolver una variable de tipo float 4633 02:01:31,900 --> 02:01:33,900 pero en realidad lo que tiene que devolver es un int 4634 02:01:33,900 --> 02:01:35,900 hay un problema de declaración de variables 4635 02:01:35,900 --> 02:01:37,900 habría que hacer que todo fuera ints 4636 02:01:37,900 --> 02:01:39,900 vale, esto perdonad que 4637 02:01:39,900 --> 02:01:41,900 es complicado además 4638 02:01:41,900 --> 02:01:43,900 vale, tenemos un método que tiene que devolver 4639 02:01:43,900 --> 02:01:45,900 un int, no, y 4640 02:01:45,900 --> 02:01:47,900 entonces aquí dentro lo que se está haciendo es 4641 02:01:47,900 --> 02:01:49,900 una suma, vale, que se guarda en este 4642 02:01:49,900 --> 02:01:51,900 esta variable resultado y dice vale 4643 02:01:51,900 --> 02:01:53,900 aquí devuélveme resultado 4644 02:01:53,900 --> 02:01:55,900 eso significa que cuando 4645 02:01:55,900 --> 02:01:57,900 yo 4646 02:01:57,900 --> 02:01:59,900 llame a este método decir 4647 02:01:59,900 --> 02:02:01,900 algo, esto 4648 02:02:01,900 --> 02:02:03,900 pasa a valer 12 4649 02:02:03,900 --> 02:02:05,900 es decir, si yo ahora mismo 4650 02:02:05,900 --> 02:02:07,900 hiciera un debug 4651 02:02:07,900 --> 02:02:09,900 punto log 4652 02:02:09,900 --> 02:02:11,900 de el método 4653 02:02:11,900 --> 02:02:13,900 decir algo, vale, es decir 4654 02:02:13,900 --> 02:02:15,900 el debug log que enseñe lo que devuelve 4655 02:02:15,900 --> 02:02:17,900 este, esta variable, vale 4656 02:02:17,900 --> 02:02:19,900 esta variable lo que hace es meterse 4657 02:02:19,900 --> 02:02:21,900 aquí y decir, oye de esta variable lo que tiene 4658 02:02:21,900 --> 02:02:23,900 que salir es un 4659 02:02:23,900 --> 02:02:25,900 valor de tipo entero, vale 4660 02:02:25,900 --> 02:02:27,900 aquí estamos haciendo diferentes 4661 02:02:27,900 --> 02:02:29,900 operaciones y siempre 4662 02:02:29,900 --> 02:02:31,900 ya os he dicho que no sea un void 4663 02:02:31,900 --> 02:02:33,900 siempre debería, vale, esto tiene excepciones 4664 02:02:33,900 --> 02:02:35,900 vale, pero en principio debería 4665 02:02:35,900 --> 02:02:37,900 tener la palabra clave return para decir 4666 02:02:37,900 --> 02:02:39,900 vale, esto quiero que devuelva 4667 02:02:39,900 --> 02:02:41,900 este valor, vale, esta variable 4668 02:02:41,900 --> 02:02:43,900 y como resultado 4669 02:02:43,900 --> 02:02:45,900 vale, 12 más 5, vale 4670 02:02:45,900 --> 02:02:47,900 pues lo que va a devolver aquí en el debug log al comenzar 4671 02:02:47,900 --> 02:02:49,900 va a ser un 17 4672 02:02:49,900 --> 02:02:51,900 a ver, vale, 17 4673 02:02:51,900 --> 02:02:53,900 esto diréis 4674 02:02:53,900 --> 02:02:55,900 y por qué no, como hicimos el otro 4675 02:02:55,900 --> 02:02:57,900 día, hacemos las operaciones aquí y hacemos el debug 4676 02:02:57,900 --> 02:02:59,900 log con las operaciones aquí 4677 02:02:59,900 --> 02:03:01,900 por diferentes cosas, primero porque 4678 02:03:01,900 --> 02:03:03,900 nos puede interesar que haya un método 4679 02:03:03,900 --> 02:03:05,900 como por ejemplo el instanced 4680 02:03:05,900 --> 02:03:07,900 que nos sirva para llamarlo en cualquier momento 4681 02:03:07,900 --> 02:03:09,900 sin tener que hacer todo este 4682 02:03:09,900 --> 02:03:11,900 código que tenemos aquí 4683 02:03:11,900 --> 02:03:13,900 vale, y también porque nos sirve 4684 02:03:13,900 --> 02:03:15,900 para guardarlo en librerías como el 4685 02:03:15,900 --> 02:03:17,900 instanced por ejemplo y usarlo en más 4686 02:03:17,900 --> 02:03:19,900 momentos del código, vale, entonces 4687 02:03:19,900 --> 02:03:21,900 es una forma de 4688 02:03:21,900 --> 02:03:23,900 agrupar, vale, y de hecho para que sea más 4689 02:03:23,900 --> 02:03:25,900 descriptivo voy a decir que esto se llame 4690 02:03:25,900 --> 02:03:27,900 sumar números, vale 4691 02:03:27,900 --> 02:03:29,900 y el método que se llame sumar números para que sea más descriptivo 4692 02:03:29,900 --> 02:03:31,900 sumar números 4693 02:03:31,900 --> 02:03:33,900 vale 4694 02:03:33,900 --> 02:03:35,900 ahora mismo esto tiene que devolver 4695 02:03:35,900 --> 02:03:37,900 un valor numérico 4696 02:03:37,900 --> 02:03:39,900 devuelve este 4697 02:03:39,900 --> 02:03:41,900 17 que es el resultado de todo 4698 02:03:41,900 --> 02:03:43,900 esto que hemos estado haciendo, hasta aquí 4699 02:03:43,900 --> 02:03:45,900 más o menos me seguís 4700 02:03:45,900 --> 02:03:47,900 perdona que sé que es un lío 4701 02:03:47,900 --> 02:03:49,900 pero por eso, preguntadme porfa 4702 02:03:49,900 --> 02:03:51,900 vale, entonces 4703 02:03:51,900 --> 02:03:53,900 la clave es que nosotros ya que 4704 02:03:53,900 --> 02:03:55,900 hemos declarado este método 4705 02:03:55,900 --> 02:03:57,900 y si usamos 4706 02:03:57,900 --> 02:03:59,900 el poder de los paréntesis ahora 4707 02:03:59,900 --> 02:04:01,900 podemos usar este método muchas veces 4708 02:04:01,900 --> 02:04:03,900 porque se llama igual, pero cada vez 4709 02:04:03,900 --> 02:04:05,900 que lo llamemos con todas las operaciones 4710 02:04:05,900 --> 02:04:07,900 que tiene dentro, que lo haga 4711 02:04:07,900 --> 02:04:09,900 en base a lo que le pasemos por paréntesis 4712 02:04:09,900 --> 02:04:11,900 que es esto que 4713 02:04:11,900 --> 02:04:13,900 vamos a configurar ahora, si yo 4714 02:04:13,900 --> 02:04:15,900 por ejemplo a este int sumar número 4715 02:04:15,900 --> 02:04:17,900 le hubiera dicho que haya otro int 4716 02:04:17,900 --> 02:04:19,900 dentro de los paréntesis de tipo 4717 02:04:19,900 --> 02:04:21,900 que sea número 4718 02:04:21,900 --> 02:04:23,900 aportado, yo que sé 4719 02:04:23,900 --> 02:04:25,900 vale, yo aquí en cierto 4720 02:04:25,900 --> 02:04:27,900 momento lo que podría decirle 4721 02:04:27,900 --> 02:04:29,900 oye, en esta 4722 02:04:29,900 --> 02:04:31,900 ocasión, bueno en vez de un 5 voy a poner otro 4723 02:04:31,900 --> 02:04:33,900 un 8, vale, sumar números 4724 02:04:33,900 --> 02:04:35,900 vale, lo voy a llamar, pero con 4725 02:04:35,900 --> 02:04:37,900 un 8 aquí entre los paréntesis, vale, va aquí 4726 02:04:37,900 --> 02:04:39,900 y dice a ver 4727 02:04:39,900 --> 02:04:41,900 voy a ejecutar este método 4728 02:04:41,900 --> 02:04:43,900 que lo que tiene que devolver es un valor numérico 4729 02:04:43,900 --> 02:04:45,900 entero además, vale 4730 02:04:45,900 --> 02:04:47,900 y voy a capturar lo que me llegue 4731 02:04:47,900 --> 02:04:49,900 por el paréntesis, ahora mismo al ejecutar 4732 02:04:49,900 --> 02:04:51,900 este 4733 02:04:51,900 --> 02:04:53,900 método, aquí vale 8 4734 02:04:53,900 --> 02:04:55,900 y que es la gracia de esto, que yo 4735 02:04:55,900 --> 02:04:57,900 aquí puedo decir que 4736 02:04:57,900 --> 02:04:59,900 ese 8 sea número aportado 4737 02:04:59,900 --> 02:05:01,900 vale, de hecho mira, directamente 4738 02:05:01,900 --> 02:05:03,900 no hace falta ni que declare número a 4739 02:05:03,900 --> 02:05:05,900 puedo decir que número aportado 4740 02:05:07,900 --> 02:05:09,900 sea un número, vale 4741 02:05:09,900 --> 02:05:11,900 que se sume con el otro, ahora mismo lo que 4742 02:05:11,900 --> 02:05:13,900 estamos haciendo es que mediante el 4743 02:05:13,900 --> 02:05:15,900 número que pongamos aquí 4744 02:05:15,900 --> 02:05:17,900 se ejecute lo que hay adentro y sea 4745 02:05:17,900 --> 02:05:19,900 este que hemos metido por aquí, el 8 4746 02:05:19,900 --> 02:05:21,900 más 12, 20 4747 02:05:21,900 --> 02:05:23,900 entonces, ahora mismo, por ejemplo, yo le doy 4748 02:05:23,900 --> 02:05:25,900 al play y me devuelve 20 4749 02:05:25,900 --> 02:05:27,900 pero yo este 4750 02:05:27,900 --> 02:05:29,900 este mismo método, vale 4751 02:05:29,900 --> 02:05:31,900 le puedo decir que 4752 02:05:31,900 --> 02:05:33,900 aquí 4753 02:05:33,900 --> 02:05:35,900 sean 20, pero también puedo hacer otro 4754 02:05:35,900 --> 02:05:37,900 luego, llamando al mismo método 4755 02:05:37,900 --> 02:05:39,900 que sea 4756 02:05:39,900 --> 02:05:41,900 pues yo que sé, 14, que entonces devolvería 4757 02:05:41,900 --> 02:05:43,900 bueno, voy a poner un número más pequeño 4758 02:05:43,900 --> 02:05:45,900 un 2, vale 4759 02:05:45,900 --> 02:05:47,900 que entonces este debug log lo que 4760 02:05:47,900 --> 02:05:49,900 devolvería es un 14, vale 4761 02:05:49,900 --> 02:05:51,900 porque aquí le estamos pasando un 2 4762 02:05:51,900 --> 02:05:53,900 estamos llamando a la instrucción otra vez 4763 02:05:53,900 --> 02:05:55,900 pero con otro valor 4764 02:05:55,900 --> 02:05:57,900 como argumento, entonces vais a ver 4765 02:05:57,900 --> 02:05:59,900 que va a reflejar en una ocasión 4766 02:05:59,900 --> 02:06:01,900 y se está ejecutando 4767 02:06:01,900 --> 02:06:03,900 exactamente el mismo método, pero 4768 02:06:03,900 --> 02:06:05,900 según los argumentos que estemos 4769 02:06:05,900 --> 02:06:07,900 aportando 4770 02:06:07,900 --> 02:06:09,900 el interior, la operación que hace 4771 02:06:09,900 --> 02:06:11,900 es distinta, entonces va a devolver una línea 4772 02:06:11,900 --> 02:06:13,900 que va a devolver 20, porque es 8 4773 02:06:13,900 --> 02:06:15,900 más 12, 20, y en la siguiente 4774 02:06:15,900 --> 02:06:17,900 va a devolver 14, vale 4775 02:06:17,900 --> 02:06:19,900 entonces yo ejecuto para que veáis que es cierto 4776 02:06:19,900 --> 02:06:21,900 y yo también tenerlo claro 4777 02:06:21,900 --> 02:06:23,900 20 y 14, vale, entonces ahora este método 4778 02:06:23,900 --> 02:06:25,900 sumar números, yo lo puedo 4779 02:06:25,900 --> 02:06:27,900 aplicar en cualquier momento del código 4780 02:06:27,900 --> 02:06:29,900 incluso aquí puedo decir 4781 02:06:31,900 --> 02:06:33,900 incluso yo puedo hacer 4782 02:06:33,900 --> 02:06:35,900 a ver 4783 02:06:35,900 --> 02:06:37,900 aquí un debug log 4784 02:06:37,900 --> 02:06:39,900 directamente, también que sea 4785 02:06:39,900 --> 02:06:41,900 sumar números 4786 02:06:41,900 --> 02:06:43,900 y en esta ocasión 4787 02:06:43,900 --> 02:06:45,900 quiero que sea un 7, vale 4788 02:06:45,900 --> 02:06:47,900 y además 4789 02:06:47,900 --> 02:06:49,900 a lo que devuelva le sumamos 5 4790 02:06:49,900 --> 02:06:51,900 vale, vais a ver 4791 02:06:51,900 --> 02:06:53,900 estamos usando el mismo método varias veces 4792 02:06:53,900 --> 02:06:55,900 igual que el instanced, cada vez que lo llamemos 4793 02:06:55,900 --> 02:06:57,900 pues vamos a ir apelando a un distinto prefab 4794 02:06:57,900 --> 02:06:59,900 o distintas cosas, vale 4795 02:06:59,900 --> 02:07:01,900 y aquí lo que va a hacer es 4796 02:07:01,900 --> 02:07:03,900 sumar 7, esto lo que va a devolver es 4797 02:07:03,900 --> 02:07:05,900 7 más 12 4798 02:07:05,900 --> 02:07:07,900 19, y luego más 5 4799 02:07:07,900 --> 02:07:09,900 19 más 5, 24 4800 02:07:09,900 --> 02:07:11,900 vais a ver que va a ver 4801 02:07:11,900 --> 02:07:13,900 estas dos líneas que hacen esta operación y luego en el update 4802 02:07:13,900 --> 02:07:15,900 fotograma tras fotograma 4803 02:07:15,900 --> 02:07:17,900 pues se va a mostrar 24 4804 02:07:17,900 --> 02:07:19,900 vale, a ver guardo primero 4805 02:07:19,900 --> 02:07:21,900 importante, guardo 4806 02:07:21,900 --> 02:07:23,900 y le doy al play 4807 02:07:23,900 --> 02:07:25,900 veis 4808 02:07:25,900 --> 02:07:27,900 bueno detengo para que veáis 4809 02:07:27,900 --> 02:07:29,900 que las dos primeras se han ejecutado en el 4810 02:07:29,900 --> 02:07:31,900 start y la siguiente ya es 24 4811 02:07:31,900 --> 02:07:33,900 en todo momento, entonces veis que en todo momento 4812 02:07:33,900 --> 02:07:35,900 estamos operando 4813 02:07:35,900 --> 02:07:37,900 con números que pasamos 4814 02:07:37,900 --> 02:07:39,900 a través de un método, que ojo esto puede 4815 02:07:39,900 --> 02:07:41,900 ser un número o como hemos hecho antes 4816 02:07:41,900 --> 02:07:43,900 un string, solo hay que preocuparse de que lo que 4817 02:07:43,900 --> 02:07:45,900 está entre los paréntesis tiene que 4818 02:07:45,900 --> 02:07:47,900 coincidir con lo que tengamos aquí 4819 02:07:47,900 --> 02:07:49,900 declarado, y es más 4820 02:07:49,900 --> 02:07:51,900 nosotros podemos tener 4821 02:07:51,900 --> 02:07:53,900 un método que 4822 02:07:53,900 --> 02:07:55,900 por ejemplo, ahora voy a hacer otro 4823 02:07:55,900 --> 02:07:57,900 método que sea 4824 02:07:57,900 --> 02:07:59,900 se llame igual, aunque no vaya a hacer eso 4825 02:07:59,900 --> 02:08:01,900 que se llame igual sumar números 4826 02:08:01,900 --> 02:08:03,900 podemos declarar varios métodos con el mismo nombre 4827 02:08:03,900 --> 02:08:05,900 y este sea de tipo string 4828 02:08:05,900 --> 02:08:07,900 mensaje 4829 02:08:07,900 --> 02:08:09,900 mensaje 4830 02:08:09,900 --> 02:08:11,900 cuando lo termine y lo veamos 4831 02:08:11,900 --> 02:08:13,900 lo entenderéis mejor, que sé que ahora 4832 02:08:13,900 --> 02:08:15,900 seguramente digáis otra vez 4833 02:08:15,900 --> 02:08:17,900 que hace este chico 4834 02:08:17,900 --> 02:08:19,900 a ver 4835 02:08:19,900 --> 02:08:21,900 vale 4836 02:08:21,900 --> 02:08:23,900 vale 4837 02:08:23,900 --> 02:08:25,900 veis que ahora estoy declarando 4838 02:08:25,900 --> 02:08:27,900 para tenerlo ya en cuenta 4839 02:08:27,900 --> 02:08:29,900 otro método que no es void 4840 02:08:29,900 --> 02:08:31,900 y cuando no es void no es que ejecute lo 4841 02:08:31,900 --> 02:08:33,900 dentro, sino que va a devolver algo que es un 4842 02:08:33,900 --> 02:08:35,900 string, como os he 4843 02:08:35,900 --> 02:08:37,900 dicho antes, siempre que pongamos 4844 02:08:37,900 --> 02:08:39,900 o casi siempre que pongamos algo 4845 02:08:41,900 --> 02:08:43,900 que tenga un tipo de método 4846 02:08:43,900 --> 02:08:45,900 que tenga que 4847 02:08:45,900 --> 02:08:47,900 devolver algo diferente a un void, hay que poner 4848 02:08:47,900 --> 02:08:49,900 la instrucción return, hasta que no se ponga 4849 02:08:49,900 --> 02:08:51,900 va a dar error 4850 02:08:51,900 --> 02:08:53,900 porque no saben en que momento tiene que 4851 02:08:53,900 --> 02:08:55,900 devolver un valor, entonces ahora mismo 4852 02:08:55,900 --> 02:08:57,900 podemos decir 4853 02:08:59,900 --> 02:09:01,900 que cuando, a ver 4854 02:09:01,900 --> 02:09:03,900 por ejemplo, perdonad 4855 02:09:03,900 --> 02:09:05,900 lo primero, veis que hemos declarado variables 4856 02:09:05,900 --> 02:09:07,900 y ahora mismo 4857 02:09:07,900 --> 02:09:09,900 las dos 4858 02:09:09,900 --> 02:09:11,900 están aquí esperando 4859 02:09:11,900 --> 02:09:13,900 perdonad, voy a poner un ejemplo 4860 02:09:13,900 --> 02:09:15,900 es que si no pongo el ejemplo 4861 02:09:15,900 --> 02:09:17,900 voy a poner un string 4862 02:09:17,900 --> 02:09:19,900 que sea 4863 02:09:19,900 --> 02:09:21,900 mensaje más 4864 02:09:21,900 --> 02:09:23,900 he dicho 4865 02:09:25,900 --> 02:09:27,900 vale 4866 02:09:27,900 --> 02:09:29,900 y entonces, string 4867 02:09:29,900 --> 02:09:31,900 habrá que decirle frase 4868 02:09:31,900 --> 02:09:33,900 completa 4869 02:09:33,900 --> 02:09:35,900 y aquí lo que quiero que vuelva es 4870 02:09:35,900 --> 02:09:37,900 frase completa 4871 02:09:37,900 --> 02:09:39,900 vale, entonces 4872 02:09:39,900 --> 02:09:41,900 ahora mismo lo que podemos hacer 4873 02:09:41,900 --> 02:09:43,900 con sumar números, que veis que se llama igual 4874 02:09:43,900 --> 02:09:45,900 vale, si yo 4875 02:09:45,900 --> 02:09:47,900 voy a quitar este del update 4876 02:09:47,900 --> 02:09:49,900 para que no esté todo el rato 4877 02:09:49,900 --> 02:09:51,900 moviéndose, si yo ahora el debug log 4878 02:09:51,900 --> 02:09:53,900 lo que quiero que se muestre 4879 02:09:53,900 --> 02:09:55,900 es sumar números, pero 4880 02:09:55,900 --> 02:09:57,900 lo que le pasamos entre paréntesis 4881 02:09:57,900 --> 02:09:59,900 es un string 4882 02:09:59,900 --> 02:10:01,900 vale, lo que hará será 4883 02:10:01,900 --> 02:10:03,900 decir, ah vale, aquí no me está pasando 4884 02:10:03,900 --> 02:10:05,900 un int, así que voy a buscar 4885 02:10:05,900 --> 02:10:07,900 en el de string, vale, voy a decir 4886 02:10:07,900 --> 02:10:09,900 me llamo Daniel 4887 02:10:11,900 --> 02:10:13,900 a ver si funciona, porque creo que hay una cosa que igual 4888 02:10:13,900 --> 02:10:15,900 entra en conflicto, pero bueno, ahora lo vemos 4889 02:10:15,900 --> 02:10:17,900 vale, aparentemente 4890 02:10:17,900 --> 02:10:19,900 no hay fallo, que es lo que estamos haciendo, que en el update 4891 02:10:19,900 --> 02:10:21,900 siempre se muestra en consola 4892 02:10:21,900 --> 02:10:23,900 lo que devuelva este método 4893 02:10:23,900 --> 02:10:25,900 este método, vale, llama aquí 4894 02:10:25,900 --> 02:10:27,900 y empieza a decir, vale 4895 02:10:27,900 --> 02:10:29,900 hay algo entre los paréntesis, un argumento 4896 02:10:29,900 --> 02:10:31,900 me llamo Daniel, esto no cuadra con esto 4897 02:10:31,900 --> 02:10:33,900 porque es de distinto 4898 02:10:33,900 --> 02:10:35,900 tipo de variable, pero este 4899 02:10:35,900 --> 02:10:37,900 si cuadra porque es un string, entonces 4900 02:10:37,900 --> 02:10:39,900 voy a pasar el me llamo Daniel 4901 02:10:39,900 --> 02:10:41,900 a través de este paréntesis, vale 4902 02:10:41,900 --> 02:10:43,900 nos metemos aquí, y dice 4903 02:10:43,900 --> 02:10:45,900 vale, hay una variable 4904 02:10:45,900 --> 02:10:47,900 que he creado aquí dentro que se llama frase completa, que es 4905 02:10:47,900 --> 02:10:49,900 que cojo el mensaje que me haya 4906 02:10:49,900 --> 02:10:51,900 llegado por aquí, y aparte le añado 4907 02:10:51,900 --> 02:10:53,900 he dicho después, vale 4908 02:10:53,900 --> 02:10:55,900 y luego lo que devuelvo es 4909 02:10:55,900 --> 02:10:57,900 esa frase completa, vale, es decir 4910 02:10:57,900 --> 02:10:59,900 este método lo que devuelve es 4911 02:10:59,900 --> 02:11:01,900 esta frase completa que tenemos aquí 4912 02:11:01,900 --> 02:11:03,900 guardada, eso significa 4913 02:11:03,900 --> 02:11:05,900 que cuando yo ejecute este 4914 02:11:05,900 --> 02:11:07,900 método, va a devolver un 4915 02:11:07,900 --> 02:11:09,900 me llamo Daniel, he dicho 4916 02:11:09,900 --> 02:11:11,900 en cada fotograma, vamos a ver si es verdad 4917 02:11:11,900 --> 02:11:13,900 que igual hay un 4918 02:11:13,900 --> 02:11:15,900 pequeño problema, vale, veis 4919 02:11:15,900 --> 02:11:17,900 lo detengo para verlo 4920 02:11:17,900 --> 02:11:19,900 a mí en el start me ha hecho 20 4921 02:11:19,900 --> 02:11:21,900 14 y luego me llamo Daniel, he dicho 4922 02:11:21,900 --> 02:11:23,900 y fijaos 4923 02:11:23,900 --> 02:11:25,900 que yo en todo momento lo que estoy haciendo 4924 02:11:25,900 --> 02:11:27,900 es usar siempre 4925 02:11:27,900 --> 02:11:29,900 el mismo método, vale, es verdad que 4926 02:11:29,900 --> 02:11:31,900 lo lógico aquí sería poner otro nombre de método 4927 02:11:31,900 --> 02:11:33,900 porque, sí 4928 02:11:33,900 --> 02:11:35,900 para que sea más descriptivo como escribir frase o algo así 4929 02:11:35,900 --> 02:11:37,900 pero fijaos que me sirve para que 4930 02:11:37,900 --> 02:11:39,900 veáis que con un mismo método, un mismo nombre 4931 02:11:39,900 --> 02:11:41,900 luego según lo que vayamos pasando en 4932 02:11:41,900 --> 02:11:43,900 las 4933 02:11:43,900 --> 02:11:45,900 en los argumentos, esto que hay 4934 02:11:45,900 --> 02:11:47,900 entre paréntesis, pues se 4935 02:11:47,900 --> 02:11:49,900 llama a un método o a otro 4936 02:11:49,900 --> 02:11:51,900 ojo que pueden ser de distinto tipo también 4937 02:11:51,900 --> 02:11:53,900 el propio método, que luego devolverá 4938 02:11:53,900 --> 02:11:55,900 lo que le digamos, esto 4939 02:11:55,900 --> 02:11:57,900 básicamente cuando yo ahora pongo 4940 02:11:57,900 --> 02:11:59,900 en algún punto, vais a fijaros 4941 02:11:59,900 --> 02:12:01,900 que hemos creado lo que a veces 4942 02:12:01,900 --> 02:12:03,900 que así es como se programan muchas 4943 02:12:03,900 --> 02:12:05,900 cosas, vaya, cuando yo 4944 02:12:05,900 --> 02:12:07,900 hago un, quiero llamar a sumar números 4945 02:12:07,900 --> 02:12:09,900 y abro paréntesis, fijaos que yo 4946 02:12:09,900 --> 02:12:11,900 tengo dos sobrecargas, vale 4947 02:12:11,900 --> 02:12:13,900 tengo la de el número 4948 02:12:13,900 --> 02:12:15,900 aportado, que es la primera y luego 4949 02:12:15,900 --> 02:12:17,900 la segunda que es la del stream mensaje 4950 02:12:17,900 --> 02:12:19,900 y es la misma, vale 4951 02:12:19,900 --> 02:12:21,900 luego incluso se puede complicar más 4952 02:12:21,900 --> 02:12:23,900 que es, puedo hacer 4953 02:12:23,900 --> 02:12:25,900 otro 4954 02:12:25,900 --> 02:12:27,900 método que devuelva un int 4955 02:12:27,900 --> 02:12:29,900 vale, que se llama sumar números 4956 02:12:29,900 --> 02:12:31,900 y aparte 4957 02:12:31,900 --> 02:12:33,900 aunque se llame igual 4958 02:12:33,900 --> 02:12:35,900 lo que voy a hacer es que a través de los 4959 02:12:35,900 --> 02:12:37,900 argumentos, voy a meter 4960 02:12:37,900 --> 02:12:39,900 número aportado 4961 02:12:39,900 --> 02:12:41,900 doble, yo que sé, o segundo 4962 02:12:41,900 --> 02:12:43,900 vale, separando por comas 4963 02:12:43,900 --> 02:12:45,900 estos argumentos 4964 02:12:45,900 --> 02:12:47,900 vale, luego por ejemplo 4965 02:12:47,900 --> 02:12:49,900 en este 4966 02:12:49,900 --> 02:12:51,900 lo que puedo hacer es 4967 02:12:51,900 --> 02:12:53,900 decir, oye el segundo 4968 02:12:53,900 --> 02:12:55,900 valor que me hayan metido es el que uso 4969 02:12:55,900 --> 02:12:57,900 para la operación, número aportado 4970 02:12:57,900 --> 02:12:59,900 estoy poniendo nombres muy largos pero bueno 4971 02:12:59,900 --> 02:13:01,900 vale, que significa eso, que si en algún 4972 02:13:01,900 --> 02:13:03,900 momento yo hago aquí un 4973 02:13:03,900 --> 02:13:05,900 debug log o la operación que sea, ya os digo 4974 02:13:05,900 --> 02:13:07,900 que estoy usando los debug logs para verlo en consola 4975 02:13:07,900 --> 02:13:09,900 pero a lo mejor puede ser daño 4976 02:13:09,900 --> 02:13:11,900 y cuando se ejecuta daño aquí pasemos 4977 02:13:11,900 --> 02:13:13,900 cien de vida, cien, y la operación 4978 02:13:13,900 --> 02:13:15,900 que hace dentro es restarlo 4979 02:13:15,900 --> 02:13:17,900 a la vida que tiene ya el personaje 4980 02:13:17,900 --> 02:13:19,900 esto lo iremos viendo ya más adelante 4981 02:13:19,900 --> 02:13:21,900 pero ahora puedo decirle 4982 02:13:21,900 --> 02:13:23,900 cinco y separado por coma 4983 02:13:23,900 --> 02:13:25,900 siete, y esto os recordará un poco 4984 02:13:25,900 --> 02:13:27,900 a como se escribe, a ver un segundo 4985 02:13:27,900 --> 02:13:29,900 que está habiendo aquí un error 4986 02:13:29,900 --> 02:13:31,900 ah no, bueno, claro 4987 02:13:31,900 --> 02:13:33,900 perdonad, que es que primero habrá que poner que método es 4988 02:13:33,900 --> 02:13:35,900 sumar números y aquí 4989 02:13:35,900 --> 02:13:37,900 cinco coma siete 4990 02:13:37,900 --> 02:13:39,900 vale, no da ningún fallo 4991 02:13:39,900 --> 02:13:41,900 esto se parece un poco a cuando vamos dentro 4992 02:13:41,900 --> 02:13:43,900 de un instancy, de un rotate, de un add force 4993 02:13:43,900 --> 02:13:45,900 metiendo valores separados por 4994 02:13:45,900 --> 02:13:47,900 comas, por las sobrecargas 4995 02:13:47,900 --> 02:13:49,900 ahora mismo al llegar a este debug log 4996 02:13:49,900 --> 02:13:51,900 dice vale, tengo que ejecutar este 4997 02:13:51,900 --> 02:13:53,900 sumar números, y pasan dos argumentos 4998 02:13:53,900 --> 02:13:55,900 de tipo int los dos, empieza 4999 02:13:55,900 --> 02:13:57,900 este de aquí, se llama sumar números, sí 5000 02:13:57,900 --> 02:13:59,900 vale, pero solo tiene un argumento, este 5001 02:13:59,900 --> 02:14:01,900 no me interesa, así que paso al siguiente 5002 02:14:01,900 --> 02:14:03,900 este, a ver, tiene 5003 02:14:03,900 --> 02:14:05,900 dos separado por comas 5004 02:14:05,900 --> 02:14:07,900 que los dos son int, vale, pues es este 5005 02:14:07,900 --> 02:14:09,900 al que estoy llamando con esta línea 5006 02:14:09,900 --> 02:14:11,900 este saltar números 5007 02:14:11,900 --> 02:14:13,900 comprende que es este, y ya dentro dice 5008 02:14:13,900 --> 02:14:15,900 vale, voy a crear 5009 02:14:15,900 --> 02:14:17,900 aquí una variable llamada resultado 5010 02:14:17,900 --> 02:14:19,900 y voy a usar los números 5011 02:14:19,900 --> 02:14:21,900 que me estén llegando y en el mismo 5012 02:14:21,900 --> 02:14:23,900 orden que esté, vale, el orden es muy importante 5013 02:14:23,900 --> 02:14:25,900 el mismo orden que esté declarados 5014 02:14:25,900 --> 02:14:27,900 aquí, entonces, número aportado 5015 02:14:27,900 --> 02:14:29,900 se identifica con el cinco 5016 02:14:29,900 --> 02:14:31,900 y el siete se identifica con número aportado 5017 02:14:31,900 --> 02:14:33,900 segundo, que he hecho un int 5018 02:14:33,900 --> 02:14:35,900 que lo que hace es sumar el cinco 5019 02:14:35,900 --> 02:14:37,900 que le llega y el siete que le llega 5020 02:14:37,900 --> 02:14:39,900 dando como resultado 5021 02:14:39,900 --> 02:14:41,900 doce, por tanto en la 5022 02:14:41,900 --> 02:14:43,900 tercera línea del start 5023 02:14:43,900 --> 02:14:45,900 vale, de la consola 5024 02:14:45,900 --> 02:14:47,900 lo que va a poner es un 5025 02:14:47,900 --> 02:14:49,900 doce, veis 5026 02:14:49,900 --> 02:14:51,900 aquí está, así es como se crean los métodos 5027 02:14:51,900 --> 02:14:53,900 que tienen sobrecargas de hecho, vale 5028 02:14:53,900 --> 02:14:55,900 esto, cuando lo interioricéis 5029 02:14:55,900 --> 02:14:57,900 es súper poderoso porque podéis crear 5030 02:14:57,900 --> 02:14:59,900 vuestros propios métodos 5031 02:14:59,900 --> 02:15:01,900 vale 5032 02:15:01,900 --> 02:15:03,900 eh, que tal hasta aquí 5033 02:15:03,900 --> 02:15:05,900 esto me sirve para 5034 02:15:05,900 --> 02:15:07,900 hablaros de otras cosas otros 5035 02:15:07,900 --> 02:15:09,900 días, y 5036 02:15:09,900 --> 02:15:11,900 complicado 5037 02:15:11,900 --> 02:15:13,900 si, esta parte 5038 02:15:13,900 --> 02:15:15,900 tenéis que revisarla y probar 5039 02:15:15,900 --> 02:15:17,900 vosotros hacerlo, vale 5040 02:15:17,900 --> 02:15:19,900 esto me sirve, por lo que lo he explicado 5041 02:15:19,900 --> 02:15:21,900 porque cuando tenemos un on collision 5042 02:15:21,900 --> 02:15:23,900 a ver, vuelvo al 5043 02:15:23,900 --> 02:15:25,900 precipicio, si no me equivoco 5044 02:15:25,900 --> 02:15:27,900 aquí, por defecto 5045 02:15:27,900 --> 02:15:29,900 ya viene hecho, pero es un método 5046 02:15:29,900 --> 02:15:31,900 que dice vale on trigger, pero ya hay 5047 02:15:31,900 --> 02:15:33,900 una variable que le llega 5048 02:15:33,900 --> 02:15:35,900 al on trigger, aquí no 5049 02:15:35,900 --> 02:15:37,900 como hemos hecho hasta ahora, no es que 5050 02:15:37,900 --> 02:15:39,900 aunque exista este método, no es que aquí 5051 02:15:39,900 --> 02:15:41,900 digamos on trigger enter para llamarlo 5052 02:15:41,900 --> 02:15:43,900 es un método que ya está configurado 5053 02:15:43,900 --> 02:15:45,900 para que se ejecute directamente 5054 02:15:45,900 --> 02:15:47,900 vale, estará en alguna de estas librerías 5055 02:15:47,900 --> 02:15:49,900 vale, por eso sale automáticamente 5056 02:15:49,900 --> 02:15:51,900 pero 5057 02:15:51,900 --> 02:15:53,900 si que tiene la posibilidad de 5058 02:15:53,900 --> 02:15:55,900 un tipo de variable, tipo collider 5059 02:15:55,900 --> 02:15:57,900 vale, que es un tipo de variable que sirve 5060 02:15:57,900 --> 02:15:59,900 para identificar que es lo que 5061 02:15:59,900 --> 02:16:01,900 choca con este objeto, vale, que va a llamar other 5062 02:16:01,900 --> 02:16:03,900 es decir 5063 02:16:03,900 --> 02:16:05,900 simplificado, dentro del on trigger enter 5064 02:16:05,900 --> 02:16:07,900 si ponemos la palabra other 5065 02:16:07,900 --> 02:16:09,900 estamos refiriéndonos al objeto 5066 02:16:09,900 --> 02:16:11,900 que ha chocado con nosotros 5067 02:16:11,900 --> 02:16:13,900 o que ha atravesado nuestra 5068 02:16:13,900 --> 02:16:15,900 nuestro trigger, vale, si fuera un collider 5069 02:16:15,900 --> 02:16:17,900 on collision, vale 5070 02:16:17,900 --> 02:16:19,900 vais a ver que 5071 02:16:19,900 --> 02:16:21,900 es otro tipo, porque 5072 02:16:21,900 --> 02:16:23,900 permiten distintas opciones, por ejemplo 5073 02:16:23,900 --> 02:16:25,900 en collision se puede detectar 5074 02:16:25,900 --> 02:16:27,900 el punto exacto donde se ha colisionado 5075 02:16:27,900 --> 02:16:29,900 y en el on trigger, como solo importa que 5076 02:16:29,900 --> 02:16:31,900 atraviese el área, pues no 5077 02:16:31,900 --> 02:16:33,900 tiene tantas opciones, por eso son de distinto tipo 5078 02:16:33,900 --> 02:16:35,900 pero, el nombre que se le dé 5079 02:16:35,900 --> 02:16:37,900 a esta variable, luego dentro se puede 5080 02:16:37,900 --> 02:16:39,900 usar para referirse al objeto que 5081 02:16:39,900 --> 02:16:41,900 o ha colisionado con nosotros, en el caso del 5082 02:16:41,900 --> 02:16:43,900 on collision, o que nos ha atravesado 5083 02:16:43,900 --> 02:16:45,900 en el caso del on trigger, vale 5084 02:16:45,900 --> 02:16:47,900 entonces, lo que 5085 02:16:47,900 --> 02:16:49,900 luego podremos hacer, y esto 5086 02:16:49,899 --> 02:16:51,899 ya igual es demasiada tela 5087 02:16:51,899 --> 02:16:53,899 para hoy, es que si en algún 5088 02:16:53,899 --> 02:16:55,899 momento decimos, oye ojo 5089 02:16:55,899 --> 02:16:57,899 si, un condicional, si 5090 02:16:57,899 --> 02:16:59,899 el otro game object 5091 02:16:59,899 --> 02:17:01,899 tiene un nombre que es igual a bola 5092 02:17:01,899 --> 02:17:03,899 entonces si se ejecuta esto 5093 02:17:03,899 --> 02:17:05,899 si choca cualquier objeto y no se 5094 02:17:05,899 --> 02:17:07,899 cumple la condición de que se llame bola, esto 5095 02:17:07,899 --> 02:17:09,899 no se ejecuta, vale, y con esto 5096 02:17:09,899 --> 02:17:11,899 que es una de las dudas que 5097 02:17:11,899 --> 02:17:13,899 planteó Javier el otro día en el foro 5098 02:17:13,899 --> 02:17:15,899 que era, es que pongo el collider 5099 02:17:15,899 --> 02:17:17,899 el trigger, vamos 5100 02:17:17,899 --> 02:17:19,899 y se ejecuta todo el rato, claro, porque si este 5101 02:17:19,899 --> 02:17:21,899 me devuelvo a la escena 5102 02:17:21,899 --> 02:17:23,899 que teníamos 5103 02:17:23,899 --> 02:17:25,899 del nivel 1 5104 02:17:25,899 --> 02:17:27,899 lo guardo, vale, si este 5105 02:17:27,899 --> 02:17:29,899 collider al declararlo 5106 02:17:29,899 --> 02:17:31,899 lo voy a poner en wireframe para que se vea 5107 02:17:31,899 --> 02:17:33,899 este goal que tenemos aquí 5108 02:17:33,899 --> 02:17:35,899 esta caja, la ponemos tocando 5109 02:17:35,899 --> 02:17:37,899 la 5110 02:17:37,899 --> 02:17:39,899 la, como se llama 5111 02:17:39,899 --> 02:17:41,899 la malla, el collider 5112 02:17:41,899 --> 02:17:43,899 el mesh collider que tiene 5113 02:17:43,899 --> 02:17:45,899 la plataforma 5114 02:17:45,899 --> 02:17:47,899 claro, no está discriminando con que, entonces 5115 02:17:47,899 --> 02:17:49,899 según arranco 5116 02:17:49,899 --> 02:17:51,899 ya debería estar, a ver 5117 02:17:51,899 --> 02:17:53,899 lo que pasa es que no tendré algo puesto, bueno 5118 02:17:53,899 --> 02:17:55,899 claro, lo que pasa es que dentro de goal 5119 02:17:55,899 --> 02:17:57,899 fijaos en ese script que tengo 5120 02:17:57,899 --> 02:17:59,899 estoy discriminando que lo único 5121 02:17:59,899 --> 02:18:01,899 que puede atravesar y desencadenar que cambie 5122 02:18:01,899 --> 02:18:03,899 de escena es que se llame bola 5123 02:18:03,899 --> 02:18:05,899 pero si yo esto 5124 02:18:05,899 --> 02:18:07,899 lo dejara así 5125 02:18:07,899 --> 02:18:09,899 vale, y guardo 5126 02:18:09,899 --> 02:18:11,899 vais a ver que ahora si que como no 5127 02:18:11,899 --> 02:18:13,899 discrimina en cuanto arranco el juego cambia de nivel 5128 02:18:13,899 --> 02:18:15,899 si, me seguís 5129 02:18:15,899 --> 02:18:17,899 vale y voy a 5130 02:18:17,899 --> 02:18:19,899 volver a poner lo que había que 5131 02:18:19,899 --> 02:18:21,899 si no se me olvida 5132 02:18:21,899 --> 02:18:23,899 si 5133 02:18:23,899 --> 02:18:25,899 vale, parece que si, vale entonces 5134 02:18:25,899 --> 02:18:27,899 he dado mucha vuelta porque va a ser muy útil 5135 02:18:27,899 --> 02:18:29,899 a como los métodos, a que es 5136 02:18:29,899 --> 02:18:31,899 esto de los paréntesis y porque todos los 5137 02:18:31,899 --> 02:18:33,899 métodos tienen paréntesis aunque estén vacíos 5138 02:18:33,899 --> 02:18:35,899 vale, porque sirve para eso, para 5139 02:18:35,899 --> 02:18:37,899 pasar información que en cada caso 5140 02:18:37,899 --> 02:18:39,899 ejecutará el método de una forma 5141 02:18:39,899 --> 02:18:41,899 u otra, vale, fijaos que 5142 02:18:41,899 --> 02:18:43,899 como es void el onTrigger 5143 02:18:43,899 --> 02:18:45,899 no necesita el return, vale 5144 02:18:45,899 --> 02:18:47,899 que eso es un detalle muy importante porque 5145 02:18:47,899 --> 02:18:49,899 si no los métodos que tienen 5146 02:18:49,899 --> 02:18:51,899 que no tengan void sin return no 5147 02:18:51,899 --> 02:18:53,899 funcionan, vale, que esto 5148 02:18:53,899 --> 02:18:55,899 siempre nos da fallo a veces al declararlo y no 5149 02:18:55,899 --> 02:18:57,899 sabemos luego que es, vale, entonces 5150 02:18:57,899 --> 02:18:59,899 a ver, perdonad 5151 02:18:59,899 --> 02:19:01,899 que aquí había movido para no estar 5152 02:19:01,899 --> 02:19:03,899 yo luego distraído, esto está aquí 5153 02:19:03,899 --> 02:19:05,899 vale, entonces 5154 02:19:05,899 --> 02:19:07,899 ya por ir 5155 02:19:07,899 --> 02:19:09,899 acabando por ahí porque si no 5156 02:19:09,899 --> 02:19:11,899 se hace muy largo, demasiado largo 5157 02:19:11,899 --> 02:19:13,899 lo que estamos haciendo es, si 5158 02:19:13,899 --> 02:19:15,899 y esto se que de primeras 5159 02:19:15,899 --> 02:19:17,899 es nomenclatura complicada pero 5160 02:19:17,899 --> 02:19:19,899 estamos diciendo si al poner otro 5161 02:19:19,899 --> 02:19:21,899 other, si ponemos un punto podemos 5162 02:19:21,899 --> 02:19:23,899 decir, si el GameObject 5163 02:19:23,899 --> 02:19:25,899 guardado en other, vale 5164 02:19:25,899 --> 02:19:27,899 tiene este nombre, aquí ya podremos 5165 02:19:27,899 --> 02:19:29,899 decir que busque el nombre 5166 02:19:29,899 --> 02:19:31,899 vale, esto va a funcionar si hay un 5167 02:19:31,899 --> 02:19:33,899 GameObject que se llama bola, si aquí 5168 02:19:33,899 --> 02:19:35,899 pusiera bolas ya no funcionaría 5169 02:19:35,899 --> 02:19:37,899 este if, vale, se tiene que llamar 5170 02:19:37,899 --> 02:19:39,899 exactamente, vale, hay que tener mucho cuidado 5171 02:19:39,899 --> 02:19:41,899 con como nombramos las cosas 5172 02:19:41,899 --> 02:19:43,899 hay formas de discriminar luego con 5173 02:19:43,899 --> 02:19:45,899 etiquetas, esto se ve 5174 02:19:45,899 --> 02:19:47,899 más adelante, vale, o con capas 5175 02:19:47,899 --> 02:19:49,899 esto es más adelante, pero hay como distintas 5176 02:19:49,899 --> 02:19:51,899 formas de discriminar 5177 02:19:51,899 --> 02:19:53,899 que es, que objeto es el que toca 5178 02:19:53,899 --> 02:19:55,899 no solo por el nombre, vale, que a veces 5179 02:19:55,899 --> 02:19:57,899 nos puede interesar que esto se llame bolardo 5180 02:19:57,899 --> 02:19:59,899 y que por cambiar el nombre no deje 5181 02:19:59,899 --> 02:20:01,899 de ejecutar, pues se le puede poner una etiqueta y que 5182 02:20:01,899 --> 02:20:03,899 detecte en vez del nombre, vale, vais a ver 5183 02:20:03,899 --> 02:20:05,899 que también se puede poner etiqueta y no da fallo 5184 02:20:05,899 --> 02:20:07,899 ahora sería que la etiqueta que hay aquí 5185 02:20:07,899 --> 02:20:09,899 fuera de tipo bola, pero bueno 5186 02:20:09,899 --> 02:20:11,899 eso es más avanzado, vale 5187 02:20:11,899 --> 02:20:13,899 y aquí, por explicar 5188 02:20:13,899 --> 02:20:15,899 ya lo último esta 5189 02:20:15,899 --> 02:20:17,899 SteamManager, aquí lo que 5190 02:20:17,899 --> 02:20:19,899 se hace es, se declara una variable que 5191 02:20:19,899 --> 02:20:21,899 se llama ahí, un número, vale 5192 02:20:21,899 --> 02:20:23,899 y hay distintos métodos 5193 02:20:23,899 --> 02:20:25,899 vale, como este que 5194 02:20:25,899 --> 02:20:27,899 ActiveSteam, que pertenece 5195 02:20:27,899 --> 02:20:29,899 a la clase SteamManager 5196 02:20:29,899 --> 02:20:31,899 la SteamManager 5197 02:20:31,899 --> 02:20:33,899 existe cuando la incorporamos a través 5198 02:20:33,899 --> 02:20:35,899 de este, de esta librería, vale 5199 02:20:35,899 --> 02:20:37,899 que hemos puesto, siempre que vayamos a gestionar 5200 02:20:37,899 --> 02:20:39,899 algo relacionado con la gestión de escenas 5201 02:20:39,899 --> 02:20:41,899 ponemos SteamManager 5202 02:20:41,899 --> 02:20:43,899 vale, pues por ejemplo aquí 5203 02:20:43,899 --> 02:20:45,899 SteamManager, que hay alguna 5204 02:20:45,899 --> 02:20:47,899 funcionalidad más que ya vienen por defecto 5205 02:20:47,899 --> 02:20:49,899 vale, pero SteamManager al meter 5206 02:20:49,899 --> 02:20:51,899 con el punto tiene bastantes 5207 02:20:51,899 --> 02:20:53,899 utilidades, bastantes métodos pre-creados 5208 02:20:53,899 --> 02:20:55,899 para cargar una escena concreta 5209 02:20:55,899 --> 02:20:57,899 para conseguir 5210 02:20:57,899 --> 02:20:59,899 la escena en la que estamos 5211 02:20:59,899 --> 02:21:01,899 vale, esto ahora mismo 5212 02:21:01,899 --> 02:21:03,899 lo que, por lo que nos sirve para cualquier 5213 02:21:03,899 --> 02:21:05,899 escena es porque tenemos un método 5214 02:21:05,899 --> 02:21:07,899 que dice, oye, coge 5215 02:21:07,899 --> 02:21:09,899 la escena en la que estamos ahora mismo, vale 5216 02:21:09,899 --> 02:21:11,899 y me guardas el número de índice 5217 02:21:11,899 --> 02:21:13,899 vale 5218 02:21:13,899 --> 02:21:15,899 el número de índice, cuando ya 5219 02:21:15,899 --> 02:21:17,899 los que hayáis empezado la tarea, es 5220 02:21:17,899 --> 02:21:19,899 el número que hay en los BuildSettings, cuando vamos a 5221 02:21:19,899 --> 02:21:21,899 estando aquí los niveles, aquí se van 5222 02:21:21,899 --> 02:21:23,899 apilando números en orden 5223 02:21:23,899 --> 02:21:25,899 que nosotros luego podemos ir cambiando el orden 5224 02:21:25,899 --> 02:21:27,899 de la escena que tienen que referirse 5225 02:21:27,899 --> 02:21:29,899 a cada índice, y por ejemplo 5226 02:21:29,899 --> 02:21:31,899 el nivel 1 es el índice 0 5227 02:21:31,899 --> 02:21:33,899 el nivel 2 es el índice 1, vale 5228 02:21:33,899 --> 02:21:35,899 que el nombre nos confunda, el índice es el 5229 02:21:35,899 --> 02:21:37,899 que importa aquí, entonces 5230 02:21:37,899 --> 02:21:39,899 aquí lo que hacemos es 5231 02:21:39,899 --> 02:21:41,899 guárdame en esta variable i un número que es 5232 02:21:41,899 --> 02:21:43,899 el número de índice de la escena 5233 02:21:43,899 --> 02:21:45,899 en la que nos encontramos ahora mismo 5234 02:21:45,899 --> 02:21:47,899 que al ser el nivel 1 en este caso 5235 02:21:47,899 --> 02:21:49,899 sería 0, vale 5236 02:21:49,899 --> 02:21:51,899 entonces, para que lo entendamos bien 5237 02:21:51,899 --> 02:21:53,899 esta línea que tenemos aquí 5238 02:21:53,899 --> 02:21:55,899 i pasa a valer 0 5239 02:21:55,899 --> 02:21:57,899 si por ejemplo este script se ejecutara 5240 02:21:57,899 --> 02:21:59,899 mientras estamos en el nivel 3 5241 02:21:59,899 --> 02:22:01,899 el índice que se guardaría sería 5242 02:22:01,899 --> 02:22:03,899 2, vale 5243 02:22:03,899 --> 02:22:05,899 porque luego lo que hacemos con 5244 02:22:05,899 --> 02:22:07,899 el cargar escena es cargar 5245 02:22:07,899 --> 02:22:09,899 el número de escena que nos interese 5246 02:22:09,899 --> 02:22:11,899 que en este caso, si las tenemos bien en orden 5247 02:22:11,899 --> 02:22:13,899 consecutivas, vale 5248 02:22:13,899 --> 02:22:15,899 si queremos reiniciar, lo que tenemos que hacer 5249 02:22:15,899 --> 02:22:17,899 es decirle, oye, cárgame la escena 5250 02:22:17,899 --> 02:22:19,899 en la que nos encontramos, y cada vez 5251 02:22:19,899 --> 02:22:21,899 esto se podría poner, por ejemplo, en el precipicio 5252 02:22:21,899 --> 02:22:23,899 cada vez que 5253 02:22:25,899 --> 02:22:27,899 tocamos ese collider 5254 02:22:27,899 --> 02:22:29,899 ese trigger 5255 02:22:29,899 --> 02:22:31,899 aquí estaríamos cargando la misma escena 5256 02:22:31,899 --> 02:22:33,899 estaríamos reiniciando, si estamos en la 1 5257 02:22:33,899 --> 02:22:35,899 cargaría la escena 1 de nuevo 5258 02:22:35,899 --> 02:22:37,899 si estamos en la 2, la 2, pero si 5259 02:22:37,899 --> 02:22:39,899 tenemos bien organizado y queremos pasar de un nivel a otro 5260 02:22:39,899 --> 02:22:41,899 lo que haríamos es, oye 5261 02:22:41,899 --> 02:22:43,899 cuando toque la meta 5262 02:22:43,899 --> 02:22:45,899 lo que quiero es que 5263 02:22:45,899 --> 02:22:47,899 sea donde nos encontramos 5264 02:22:47,899 --> 02:22:49,899 más 1, es decir, si estamos en el nivel 5265 02:22:49,899 --> 02:22:51,899 de índice 0 5266 02:22:51,899 --> 02:22:53,899 pasaría a la 1, sino 5267 02:22:53,899 --> 02:22:55,899 de la 1 a la 2, de la 2 a la 3, vale 5268 02:22:55,899 --> 02:22:57,899 y con este mismo script, siempre 5269 02:22:57,899 --> 02:22:59,899 que tuviéramos un objeto en la escena 5270 02:22:59,899 --> 02:23:01,899 con un trigger 5271 02:23:01,899 --> 02:23:03,899 que detectara que le toca una bola 5272 02:23:03,899 --> 02:23:05,899 lo que haría sería pasar al nivel 5273 02:23:05,899 --> 02:23:07,899 al siguiente nivel 5274 02:23:07,899 --> 02:23:09,899 vale, entonces 5275 02:23:09,899 --> 02:23:11,899 con este script se podría poner 5276 02:23:11,899 --> 02:23:13,899 a todas las metas de un juego de millones de 5277 02:23:13,899 --> 02:23:15,899 pantallas que siempre pasaría al siguiente 5278 02:23:15,899 --> 02:23:17,899 nivel de los que tenemos aquí 5279 02:23:17,899 --> 02:23:19,899 en los build settings 5280 02:23:19,899 --> 02:23:21,899 vale 5281 02:23:21,899 --> 02:23:23,899 con esto más o menos explico el nivel 1 5282 02:23:23,899 --> 02:23:25,899 el próximo día 5283 02:23:25,899 --> 02:23:27,899 en un par de semanas, lo que pasa es que 5284 02:23:27,899 --> 02:23:29,899 viene el día 22 y 23 son festivos 5285 02:23:29,899 --> 02:23:31,899 a nivel lectivo 5286 02:23:31,899 --> 02:23:33,899 dentro de dos semanas no sé si da tiempo 5287 02:23:33,899 --> 02:23:35,899 entonces no sé si la semana que viene organizar 5288 02:23:35,899 --> 02:23:37,899 otra tutoría o ya dentro de tres semanas 5289 02:23:37,899 --> 02:23:39,899 un poco 5290 02:23:39,899 --> 02:23:41,899 según como vayáis avanzando 5291 02:23:41,899 --> 02:23:43,899 porque todo esto es muy interesante que yo lo explique 5292 02:23:43,899 --> 02:23:45,899 cuando ya habéis intentado hacer la tarea 5293 02:23:45,899 --> 02:23:47,899 y habéis leído el tema, porque si no 5294 02:23:47,899 --> 02:23:49,899 os estoy hablando, os estoy hablando, os estoy hablando 5295 02:23:49,899 --> 02:23:51,899 de nada, si más o menos habéis seguido 5296 02:23:51,899 --> 02:23:53,899 el tema y ya lo habéis medio intentado aunque no salga 5297 02:23:53,899 --> 02:23:55,899 nada, ya pues 5298 02:23:55,899 --> 02:23:57,899 me imagino que es bastante más fácil que se os vayan 5299 02:23:57,899 --> 02:23:59,899 quedando los conocimientos 5300 02:23:59,899 --> 02:24:01,899 porque sé que esto es complicado, pero bueno 5301 02:24:01,899 --> 02:24:03,899 aquí hay cosas ya del tema 1, del tema 0 5302 02:24:03,899 --> 02:24:05,899 que se van entremezclando 5303 02:24:07,899 --> 02:24:09,899 este 5304 02:24:09,899 --> 02:24:11,899 a ver, cuando había que entregar esta 5305 02:24:11,899 --> 02:24:13,899 esta, vale, a ver 5306 02:24:13,899 --> 02:24:15,899 un segundín 5307 02:24:15,899 --> 02:24:17,899 espera que lo miro 5308 02:24:17,899 --> 02:24:19,899 no sé si a mediados de mes 5309 02:24:19,899 --> 02:24:21,899 yo creo que le quedaba todavía 5310 02:24:21,899 --> 02:24:23,899 un par de semanas larguitas 5311 02:24:23,899 --> 02:24:25,899 a ver 5312 02:24:25,899 --> 02:24:27,899 el tema 3 5313 02:24:27,899 --> 02:24:29,899 para el domingo, pues no 5314 02:24:29,899 --> 02:24:31,899 lleva razón que es para este 5315 02:24:31,899 --> 02:24:33,899 día 5316 02:24:33,899 --> 02:24:35,899 vale, vamos a hacer una cosa 5317 02:24:35,899 --> 02:24:37,899 intentad entregarlo 5318 02:24:37,899 --> 02:24:39,899 si podéis, para esta fecha 5319 02:24:39,899 --> 02:24:41,899 en cualquier caso 5320 02:24:41,899 --> 02:24:43,899 lo que voy a hacer es abrir, si lo tenéis para esa fecha 5321 02:24:43,899 --> 02:24:45,899 mejor, voy a intentar abrir 5322 02:24:45,899 --> 02:24:47,899 la entrega para que sea hasta el 25 5323 02:24:47,899 --> 02:24:49,899 lo de siempre, a mi me da 5324 02:24:49,899 --> 02:24:51,899 miedo atrasar las entregas 5325 02:24:51,899 --> 02:24:53,899 no por otra cosa que, pues a mi no me importa 5326 02:24:53,899 --> 02:24:55,899 corregirlo en un par de semanas más tarde 5327 02:24:55,899 --> 02:24:57,899 y ya está, sino para forzaros a que ya 5328 02:24:57,899 --> 02:24:59,899 os pongáis con el siguiente tema, vale, para meteros 5329 02:24:59,899 --> 02:25:01,899 un poco de prisa, porque si no llegan 5330 02:25:01,899 --> 02:25:03,899 los dos últimos temas y seguimos con 5331 02:25:03,899 --> 02:25:05,899 las entregas anteriores, vale 5332 02:25:05,899 --> 02:25:07,899 entiendo que hay cosas que aquí estoy 5333 02:25:07,899 --> 02:25:09,899 desgranando más para que 5334 02:25:09,899 --> 02:25:11,899 las entendáis, pero realmente 5335 02:25:11,899 --> 02:25:13,899 está pensado para que la mayoría de cosas 5336 02:25:13,899 --> 02:25:15,899 las podáis hacer viendo los fragmentos de código que 5337 02:25:15,899 --> 02:25:17,899 hay y la explicación que hay en el propio enunciado 5338 02:25:17,899 --> 02:25:19,899 pero entiendo que es complicado, eh, no 5339 02:25:19,899 --> 02:25:21,899 entiendo que juegue 5340 02:25:21,899 --> 02:25:23,899 pero si vais con constancia ya más o menos lo tendríais 5341 02:25:23,899 --> 02:25:25,899 bastante hecho, aunque no entendierais 5342 02:25:25,899 --> 02:25:27,899 muchas de las cosas a lo mejor que estáis entendiendo hoy 5343 02:25:27,899 --> 02:25:29,899 entonces 5344 02:25:29,899 --> 02:25:31,899 una pregunta solamente 5345 02:25:31,899 --> 02:25:33,899 si, si, claro 5346 02:25:33,899 --> 02:25:35,899 mira, una pregunta, solamente 5347 02:25:35,899 --> 02:25:37,899 en el tema de las plataformas 5348 02:25:37,899 --> 02:25:39,899 entiendo que para 5349 02:25:39,899 --> 02:25:41,899 hacer el atorque 5350 02:25:41,899 --> 02:25:43,899 no hay que hacer un 5351 02:25:43,899 --> 02:25:45,899 atfor, sino que tiene que ser 5352 02:25:45,899 --> 02:25:47,899 tanto en el H como en el V 5353 02:25:47,899 --> 02:25:49,899 atorque, entiendo 5354 02:25:49,899 --> 02:25:51,899 en el caso de la bola da un poco 5355 02:25:51,899 --> 02:25:53,899 igual, porque una bola cuando le aplicas una fuerza 5356 02:25:53,899 --> 02:25:55,899 como es redonda, es como un 5357 02:25:55,899 --> 02:25:57,899 torque en realidad, vale, entonces 5358 02:25:57,899 --> 02:25:59,899 en la bola se puede hacer con atforce y con 5359 02:25:59,899 --> 02:26:01,899 atorque, que es lo que hemos visto antes 5360 02:26:01,899 --> 02:26:03,899 sí que es verdad que luego voy al nivel 5361 02:26:03,899 --> 02:26:05,899 2, un segundín 5362 02:26:05,899 --> 02:26:07,899 en el nivel 2 y de hecho así os 5363 02:26:07,899 --> 02:26:09,899 comento un par de cosas, queremos no que 5364 02:26:09,899 --> 02:26:11,899 vaya hacia delante o hacia atrás o rote, queremos 5365 02:26:11,899 --> 02:26:13,899 es decir, perdonad 5366 02:26:13,899 --> 02:26:15,899 que rote sí, lo que queremos es añadir 5367 02:26:15,899 --> 02:26:17,899 un torque, vale 5368 02:26:17,899 --> 02:26:19,899 tenemos aquí, os abro el código 5369 02:26:19,899 --> 02:26:21,899 para que veáis 5370 02:26:21,899 --> 02:26:23,899 que la rotación de esa plataforma 5371 02:26:23,899 --> 02:26:25,899 es de una forma 5372 02:26:25,899 --> 02:26:27,899 muy muy parecida a la que os he enseñado 5373 02:26:27,899 --> 02:26:29,899 antes con la bola, son dos atorques 5374 02:26:29,899 --> 02:26:31,899 uno para cada eje, vale 5375 02:26:31,899 --> 02:26:33,899 el horizontal y el vertical, que además se pueden 5376 02:26:33,899 --> 02:26:35,899 sumar, si estamos tocando estos dos inputs 5377 02:26:35,899 --> 02:26:37,899 a la vez, pues irá en diagonal 5378 02:26:37,899 --> 02:26:39,899 entonces, fijaos que es un poco lo 5379 02:26:39,899 --> 02:26:41,899 mismo, aquí el mayor problema 5380 02:26:41,899 --> 02:26:43,899 que puede suceder, lo explico rápido para 5381 02:26:43,899 --> 02:26:45,899 casi 5382 02:26:45,899 --> 02:26:47,899 decir, el único escollo que quedaría 5383 02:26:47,899 --> 02:26:49,899 vale, aparte de coger soltura 5384 02:26:49,899 --> 02:26:51,899 que es, y esto está 5385 02:26:51,899 --> 02:26:53,899 explicado en uno de los silos del foro, vale 5386 02:26:53,899 --> 02:26:55,899 voy a ir muy rápido, pero que es 5387 02:26:55,899 --> 02:26:57,899 que cuando metáis la geometría de la 5388 02:26:57,899 --> 02:26:59,899 plataforma con su mesh 5389 02:26:59,899 --> 02:27:01,899 collider y su malla 5390 02:27:01,899 --> 02:27:03,899 vale, vais a tener 5391 02:27:03,899 --> 02:27:05,899 lo vais a tener 5392 02:27:05,899 --> 02:27:07,899 que dejar para que coja el agujero sin 5393 02:27:07,899 --> 02:27:09,899 marcar el convex, pero si 5394 02:27:09,899 --> 02:27:11,899 marcáis el convex, os va a dar un fallo 5395 02:27:11,899 --> 02:27:13,899 a la hora de aplicar 5396 02:27:13,899 --> 02:27:15,899 fuerzas 5397 02:27:15,899 --> 02:27:17,899 al rigid body 5398 02:27:17,899 --> 02:27:19,899 vale, porque os va a pedir que sea kinemático 5399 02:27:19,899 --> 02:27:21,899 por supuesto también, cuando 5400 02:27:21,899 --> 02:27:23,899 como aquí vais a añadir 5401 02:27:23,899 --> 02:27:25,899 add torques a la propia plataforma 5402 02:27:25,899 --> 02:27:27,899 recordad que aquí 5403 02:27:27,899 --> 02:27:29,899 los add torques y los add forces se aplican 5404 02:27:29,899 --> 02:27:31,899 al componente rigid body 5405 02:27:31,899 --> 02:27:33,899 y cuando ponemos un rigid body, por defecto tiene 5406 02:27:33,899 --> 02:27:35,899 la gravedad marcada, pero aquí no nos 5407 02:27:35,899 --> 02:27:37,899 interesa que la plataforma tenga gravedad, queremos 5408 02:27:37,899 --> 02:27:39,899 que esté fija en un sitio, vale 5409 02:27:39,899 --> 02:27:41,899 por tanto, desmarcad el usar gravedad 5410 02:27:41,899 --> 02:27:43,899 eso lo primero, pero eso 5411 02:27:43,899 --> 02:27:45,899 como, mientras lo 5412 02:27:45,899 --> 02:27:47,899 vais haciendo, vais a ver que os obliga a ello 5413 02:27:47,899 --> 02:27:49,899 cuando metáis este mesh collider para que detecte 5414 02:27:49,899 --> 02:27:51,899 este agujero, no podéis marcar el convex 5415 02:27:51,899 --> 02:27:53,899 porque si no, os va a dar un fallo a la hora 5416 02:27:53,899 --> 02:27:55,899 de dar una fuerza, vale 5417 02:27:55,899 --> 02:27:57,899 entonces, hay que desgranar por un lado 5418 02:27:57,899 --> 02:27:59,899 el objeto 5419 02:27:59,899 --> 02:28:01,899 que sirve de collider, vale 5420 02:28:01,899 --> 02:28:03,899 que sirve de 5421 02:28:03,899 --> 02:28:05,899 punto de 5422 02:28:05,899 --> 02:28:07,899 de contacto 5423 02:28:07,899 --> 02:28:09,899 para que la bola sepa donde es, y luego 5424 02:28:09,899 --> 02:28:11,899 un elemento padre 5425 02:28:11,899 --> 02:28:13,899 que es el que realmente va a 5426 02:28:13,899 --> 02:28:15,899 mover la plataforma con su rigid body 5427 02:28:15,899 --> 02:28:17,899 vale, y que va a heredar 5428 02:28:17,899 --> 02:28:19,899 la posición a la geometría 5429 02:28:19,899 --> 02:28:21,899 y al collider, esto si lo habéis intentado 5430 02:28:21,899 --> 02:28:23,899 hacer, ya os habrán surgido algunos problemas 5431 02:28:23,899 --> 02:28:25,899 porque si yo intentara 5432 02:28:25,899 --> 02:28:27,899 hacer el movimiento directamente en este 5433 02:28:27,899 --> 02:28:29,899 rigid body, que sería lo lógico, vale 5434 02:28:29,899 --> 02:28:31,899 os va a obligar a poner 5435 02:28:31,899 --> 02:28:33,899 que es convex, vale 5436 02:28:33,899 --> 02:28:35,899 o que este is kinematic 5437 02:28:35,899 --> 02:28:37,899 no puede estar marcado, porque si no sale un error 5438 02:28:37,899 --> 02:28:39,899 de este tipo, a ver 5439 02:28:39,899 --> 02:28:41,899 a ver 5440 02:28:41,899 --> 02:28:43,899 mierda, perdona 5441 02:28:43,899 --> 02:28:45,899 tutu 5442 02:28:45,899 --> 02:28:47,899 si 5443 02:28:47,899 --> 02:28:49,899 bueno 5444 02:28:49,899 --> 02:28:51,899 lo que voy a hacer es quitar esto de aquí 5445 02:28:51,899 --> 02:28:53,899 un segundo, y este 5446 02:28:53,899 --> 02:28:55,899 lo quito, vale 5447 02:28:55,899 --> 02:28:57,899 si por defecto hacéis lo que intentáis hacer 5448 02:28:57,899 --> 02:28:59,899 e intentáis añadir una fuerza a este 5449 02:28:59,899 --> 02:29:01,899 objeto, mirad 5450 02:29:01,899 --> 02:29:03,899 que sale este error, vale 5451 02:29:03,899 --> 02:29:05,899 non convex mesh collider con no kinematic 5452 02:29:05,899 --> 02:29:07,899 vale, para que detecte bien 5453 02:29:07,899 --> 02:29:09,899 esta geometría, vale 5454 02:29:09,899 --> 02:29:11,899 a ver, tenéis que ponerlo 5455 02:29:11,899 --> 02:29:13,899 en no convex, vale 5456 02:29:13,899 --> 02:29:15,899 para que salga completamente 5457 02:29:15,899 --> 02:29:17,899 y luego eso os va a 5458 02:29:17,899 --> 02:29:19,899 impedir que esto 5459 02:29:19,899 --> 02:29:21,899 hay que ponerlo en kinematico, para decir 5460 02:29:21,899 --> 02:29:23,899 tiene que ser kinematico para que funcione y para que detecte bien 5461 02:29:23,899 --> 02:29:25,899 la malla, tendrá que ser de este modo 5462 02:29:25,899 --> 02:29:27,899 vais a ver que aunque probéis distintas combinaciones 5463 02:29:27,899 --> 02:29:29,899 no va a funcionar, y cuando es 5464 02:29:29,899 --> 02:29:31,899 kinematico, no va 5465 02:29:31,899 --> 02:29:33,899 a realizar de manera correcta las fuerzas 5466 02:29:33,899 --> 02:29:35,899 porque cuando un objeto, esto también 5467 02:29:35,899 --> 02:29:37,899 necesita una explicación igual más amplia 5468 02:29:37,899 --> 02:29:39,899 pero un objeto se puede mover 5469 02:29:39,899 --> 02:29:41,899 por físicas, como estamos haciendo ahora 5470 02:29:41,899 --> 02:29:43,899 o como hemos hecho 5471 02:29:43,899 --> 02:29:45,899 en los temas anteriores, en la unidad 2 5472 02:29:45,899 --> 02:29:47,899 por kinematicas, que es usar 5473 02:29:47,899 --> 02:29:49,899 el movimiento 5474 02:29:49,899 --> 02:29:51,899 por coordenadas del transform, vale 5475 02:29:51,899 --> 02:29:53,899 aquí ahora mismo, si decimos que este objeto 5476 02:29:53,899 --> 02:29:55,899 es kinematico, no va 5477 02:29:55,899 --> 02:29:57,899 a recibir bien las fuerzas, no lo va a aplicar bien 5478 02:29:57,899 --> 02:29:59,899 entonces la solución cuando veáis 5479 02:29:59,899 --> 02:30:01,899 que no sabéis como seguir, es porque 5480 02:30:01,899 --> 02:30:03,899 lo que hay que hacer es derivar 5481 02:30:03,899 --> 02:30:05,899 todo lo que es el movimiento mediante 5482 02:30:05,899 --> 02:30:07,899 mediante 5483 02:30:07,899 --> 02:30:09,899 fuerzas, en otro rigidbody 5484 02:30:09,899 --> 02:30:11,899 que si va asociado al script 5485 02:30:11,899 --> 02:30:13,899 y que va a ser el padre que va a hacer 5486 02:30:13,899 --> 02:30:15,899 girar, vale, como heredan los movimientos 5487 02:30:15,899 --> 02:30:17,899 y las rotaciones, esto va a girar 5488 02:30:17,899 --> 02:30:19,899 y aunque no haya nada visible 5489 02:30:19,899 --> 02:30:21,899 va a servir para que gire la plataforma 5490 02:30:21,899 --> 02:30:23,899 es una especie de requiebro 5491 02:30:23,899 --> 02:30:25,899 que a veces hay que hacer 5492 02:30:25,899 --> 02:30:27,899 para que funcionen las cosas 5493 02:30:27,899 --> 02:30:29,899 esto también a nivel de código muchas veces 5494 02:30:29,899 --> 02:30:31,899 no se os permite hacer algo 5495 02:30:31,899 --> 02:30:33,899 porque no lo permite hacer 5496 02:30:33,899 --> 02:30:35,899 y hay que crear una variable que luego se mete de otra forma 5497 02:30:35,899 --> 02:30:37,899 vale, hay que buscar otros tipos de 5498 02:30:37,899 --> 02:30:39,899 métodos, vale, entonces 5499 02:30:39,899 --> 02:30:41,899 ya os digo 5500 02:30:41,899 --> 02:30:43,899 en el hilo está resuelto con capturas 5501 02:30:43,899 --> 02:30:45,899 un poco de como hay que irlo poniendo para que esto se pueda mover 5502 02:30:45,899 --> 02:30:47,899 correctamente, y si, en el terreno 5503 02:30:47,899 --> 02:30:49,899 el padre, vale, habrá que meter 5504 02:30:49,899 --> 02:30:51,899 los dos axis 5505 02:30:51,899 --> 02:30:53,899 vale, que mueven y con addtorques 5506 02:30:53,899 --> 02:30:55,899 haremos, como no hay gravedad 5507 02:30:55,899 --> 02:30:57,899 vale, ojo, no pongáis la gravedad que si no 5508 02:30:57,899 --> 02:30:59,899 se caerá, vale 5509 02:30:59,899 --> 02:31:01,899 hacemos la rotación 5510 02:31:01,899 --> 02:31:03,899 vale, eso, si ponemos gravedad 5511 02:31:03,899 --> 02:31:05,899 vale 5512 02:31:05,899 --> 02:31:07,899 lo que va a pasar 5513 02:31:07,899 --> 02:31:09,899 es que la plataforma 5514 02:31:09,899 --> 02:31:11,899 se está cayendo en todo momento y creo que 5515 02:31:11,899 --> 02:31:13,899 no se está viendo, bueno 5516 02:31:13,899 --> 02:31:15,899 a ver, un segundo 5517 02:31:15,899 --> 02:31:17,899 bueno, lo que pasa es que 5518 02:31:17,899 --> 02:31:19,899 como es kinemático se queda quieto 5519 02:31:19,899 --> 02:31:21,899 vale, no pasa 5520 02:31:21,899 --> 02:31:23,899 nada, porque otro de los efectos derivados 5521 02:31:23,899 --> 02:31:25,899 de que nos está obligando 5522 02:31:25,899 --> 02:31:27,899 a decir que es kinemático es 5523 02:31:27,899 --> 02:31:29,899 que al hacerlo kinemático, es decir, que se mueve por 5524 02:31:29,899 --> 02:31:31,899 las coordenadas, se convierte en un objeto 5525 02:31:31,899 --> 02:31:33,899 estático, no tiene 5526 02:31:33,899 --> 02:31:35,899 ese es el problema, que cuando 5527 02:31:35,899 --> 02:31:37,899 hacemos un objeto kinemático 5528 02:31:37,899 --> 02:31:39,899 un rellipo de kinemático no 5529 02:31:39,899 --> 02:31:41,899 se le aplica la fuerza de la gravedad de manera 5530 02:31:41,899 --> 02:31:43,899 normal, entonces 5531 02:31:43,899 --> 02:31:45,899 la gravedad por ejemplo no funciona, las físicas tampoco 5532 02:31:45,899 --> 02:31:47,899 vale, vale 5533 02:31:47,899 --> 02:31:49,899 y bueno, y luego otra cosa importante 5534 02:31:49,899 --> 02:31:51,899 para que el 5535 02:31:51,899 --> 02:31:53,899 la meta esté 5536 02:31:53,899 --> 02:31:55,899 todo el rato dentro del agujero, hacerlo también hijo 5537 02:31:55,899 --> 02:31:57,899 de lo que rota, y así siempre estará 5538 02:31:57,899 --> 02:31:59,899 dentro del agujero, porque si no 5539 02:31:59,899 --> 02:32:01,899 cuando rotemos, vale, lo que va a pasar 5540 02:32:01,899 --> 02:32:03,899 es lo que vamos a ver aquí, que es 5541 02:32:03,899 --> 02:32:05,899 que la meta se queda en su sitio 5542 02:32:05,899 --> 02:32:07,899 y entonces la bola ya no llega ahí 5543 02:32:07,899 --> 02:32:09,899 vale, emplead los 5544 02:32:09,899 --> 02:32:11,899 emparentamientos, las jerarquías 5545 02:32:11,899 --> 02:32:13,899 bueno, perdonad que he hablado muchísimo 5546 02:32:13,899 --> 02:32:15,899 que tal hasta aquí, dudas 5547 02:32:15,899 --> 02:32:17,899 algo que se os quede hasta este momento, que queráis 5548 02:32:17,899 --> 02:32:19,899 que veamos 5549 02:32:19,899 --> 02:32:21,899 intentaremos hacerlo para el domingo, me queda 5550 02:32:21,899 --> 02:32:23,899 solamente la última, la plataforma 5551 02:32:23,899 --> 02:32:25,899 última y ya está, intentaré hacerlo 5552 02:32:25,899 --> 02:32:27,899 complicado es, madre mía 5553 02:32:27,899 --> 02:32:29,899 esto es tremendo, vale 5554 02:32:29,899 --> 02:32:31,899 por un lado, me alegra mucho que casi lo tengas 5555 02:32:31,899 --> 02:32:33,899 hecho, porque significa que te has pegado mucho con el software 5556 02:32:33,899 --> 02:32:35,899 y has ido aprendiendo cosas, estoy 5557 02:32:35,899 --> 02:32:37,899 convencido de que tú la clase de hoy la has seguido mucho mejor 5558 02:32:37,899 --> 02:32:39,899 que un estudiante que 5559 02:32:39,899 --> 02:32:41,899 se haya leído solo medio tema 3 5560 02:32:41,899 --> 02:32:43,899 y no se haya puesto, estoy convencidísimo 5561 02:32:43,899 --> 02:32:45,899 y eso es lo que me interesa 5562 02:32:45,899 --> 02:32:47,899 eh, ya os digo 5563 02:32:47,899 --> 02:32:49,899 si no llegáis en plazo, bueno 5564 02:32:49,899 --> 02:32:51,899 lo primero es que las actividades 5565 02:32:51,899 --> 02:32:53,899 suben muy poca nota y 5566 02:32:53,899 --> 02:32:55,899 aunque lo entreguéis fuera de plazo 5567 02:32:55,899 --> 02:32:57,899 eh, igual no suma 5568 02:32:57,899 --> 02:32:59,899 para la nota, pero también es 5569 02:32:59,899 --> 02:33:01,899 la podéis entregar, al menos en un plazo 5570 02:33:01,899 --> 02:33:03,899 en un plazo razonable después 5571 02:33:03,899 --> 02:33:05,899 pero, lo importante 5572 02:33:05,899 --> 02:33:07,899 aquí es que os peguéis 5573 02:33:07,899 --> 02:33:09,899 sí que, si vais entendiendo pues lo que hemos visto 5574 02:33:09,899 --> 02:33:11,899 hoy, cómo se declara un método y cómo se 5575 02:33:11,899 --> 02:33:13,899 pueden declarar varias sobrecargas 5576 02:33:13,899 --> 02:33:15,899 de un mismo método y por qué están estos paréntesis 5577 02:33:15,899 --> 02:33:17,899 y para qué sirven 5578 02:33:17,899 --> 02:33:19,899 pues hoy hemos avanzado un montón 5579 02:33:19,899 --> 02:33:21,899 vale, si entendéis lo de hoy 5580 02:33:21,899 --> 02:33:23,899 entonces, bueno, que es un poco el enfoque 5581 02:33:23,899 --> 02:33:25,899 que quiero darle 5582 02:33:25,899 --> 02:33:27,899 bueno, pues nada, muchas gracias 5583 02:33:27,899 --> 02:33:29,899 y hasta la próxima