0:00:00.000,0:00:02.510 ¡Hola! Y bienvenidos a nuestro reto[br]de programación de hoy. 0:00:02.510,0:00:07.470 Hoy voy a hacer una lluvia púrpura[br]en Processing, en honor a Prince. 0:00:07.471,0:00:11.321 Lo único que he hecho para preparar esto[br]hasta ahora es elegir dos colores, 0:00:11.321,0:00:13.651 que fueron sugeridos por usuarios[br]de internet, muchas gracias por ello. 0:00:13.651,0:00:17.031 Un púrpura para la lluvia[br]y otro color para el fondo. 0:00:17.038,0:00:19.658 Estoy usando el entorno[br]de programación Processing 0:00:19.658,0:00:24.648 Puedes averiguar lo que es Processing si revisas[br]la descripción del video para descargarlo. 0:00:24.648,0:00:28.108 El programa será escrito[br]en el lenguaje de programación Java 0:00:28.108,0:00:31.898 También voy a hacer una versión de[br]JavaScript usando algo llamado "p5.js" 0:00:31.898,0:00:34.888 Así que si quieres reproducir este ejemplo[br]en el navegador o en la web, puedes 0:00:34.888,0:00:37.668 encontrar la versión del código[br]en la descripción de este video también. 0:00:37.669,0:00:41.249 Ok, empecemos;[br]Lo primero que tengo que hacer es 0:00:41.249,0:00:44.559 simplemente escribir una función "setup", [br]y escribir una función "dibujar". 0:00:44.559,0:00:46.999 Y después voy a añadir la función "tamaño". 0:00:46.999,0:00:49.649 Se me están cayendo los lentes en la cara. 0:00:49.649,0:00:57.789 Voy a tomar este maravilloso color[br]sugerido y lo voy a usar como mi fondo. 0:00:57.789,0:01:01.699 Tengo un par de paréntesis extra aquí[br]y necesito un punto y coma. 0:01:01.699,0:01:04.519 Voy a reproducir esto; [br]Y mira eso, ahí vamos! 0:01:04.519,0:01:08.519 Así que, esto es el comienzo; esta es la[br]escena; aquí es donde quiero mi lluvia púrpura. 0:01:08.519,0:01:14.549 Para hacer lluvia, creo que una buena[br]forma de hacerlo sería crear un solo objeto 0:01:14.549,0:01:21.259 que es una gota de lluvia; y después desde[br]ese objeto, hacer un arreglo con muchos de ellos. 0:01:21.259,0:01:26.929 Ahora crearé una nueva pestaña;[br]Y la llamaré "gota" 0:01:26.929,0:01:30.929 Después voy a escribir "class" drop;[br]Clase siendo una plantilla para crear objetos 0:01:30.929,0:01:34.599 En el lenguaje de programación de Java[br]En la versión JavaScript esto luciría 0:01:34.599,0:01:36.849 Como una función constructora;[br]Ya veras eso; 0:01:36.849,0:01:40.849 Esta gota tendrá una "x";[br]Esta gota también tendrá una "y"; 0:01:40.849,0:01:46.509 Necesito una función para que la gota de lluvia caiga 0:01:46.509,0:01:53.469 Y una función para que la gota de lluvia se reproduzca en pantalla 0:01:53.469,0:01:56.639 ¿Cómo quiero que mi gota se vea? 0:01:56.639,0:02:00.559 Vamos a hacer que la gota sea una línea;[br]Que tal vez luzca como lluvia 0:02:00.559,0:02:03.369 Una línea; en "x" e "y" 0:02:03.369,0:02:05.089 A "x" y ¿qué? 0:02:05.089,0:02:07.399 Qué tal "y" más algo, ¿correcto? 0:02:07.399,0:02:09.029 Algo como, como "y" mas 10 0:02:09.029,0:02:11.899 Y luego quiero que esa linea sea, ¿qué?[br]¡Purpura! 0:02:11.899,0:02:14.539 Voy a obtener el color purpura[br]justo aquí 0:02:16.955,0:02:18.455 Regresa, regresa 0:02:19.960,0:02:27.960 Luego en "caer", voy a decir que "y" es igual a "y" más "yvelocidad" 0:02:27.960,0:02:33.440 Ok "yvelocidad" no existe, entonces voy a crear eso como una variable 0:02:35.766,0:02:39.566 Ahora que he creado este objeto, esta es la idea base del objeto "gota" 0:02:39.566,0:02:41.896 Tiene una "x" y una "y" y una "yvelocidad" para caer 0:02:41.896,0:02:44.376 "y" iguala a "y" más -"yvelocidad" para que ésta caiga 0:02:44.376,0:02:45.276 Y luego una linea para dibujarla 0:02:45.276,0:02:47.986 Ahora la gota necesita un valor inicial para estas variables 0:02:47.986,0:02:51.466 Voy a tener, por defecto ahora mismo una gota que comience en medio 0:02:51.466,0:02:54.596 Y a tener una gota que comience arriba de la pantalla 0:02:54.596,0:02:56.076 Mientras que tengo la velocidad igual a 1 0:02:56.076,0:02:57.436 Sólo para asegurarnos que las cosas están funcionando 0:02:57.436,0:03:02.616 Aquí voy a crear la variable "gota" "g" igual a[br]la nueva "gota" 0:03:02.616,0:03:05.366 Entonces en "digujar" voy a decir[br]"g" punto "caer" 0:03:05.366,0:03:07.666 Y entonces "d" punto "mostrar" 0:03:07.666,0:03:11.406 Creo que eso es suficiente código para[br]escribir, debería probar ahora 0:03:11.406,0:03:14.886 0:03:14.886,0:03:16.316 0:03:16.316,0:03:18.396 0:03:18.396,0:03:21.816 0:03:21.816,0:03:25.816 0:03:25.816,0:03:28.296 0:03:28.296,0:03:34.586 0:03:34.586,0:03:39.836 0:03:39.836,0:03:42.716 0:03:42.716,0:03:48.786 0:03:48.786,0:03:53.556 0:03:53.556,0:03:55.466 0:03:55.466,0:03:59.966 0:03:59.966,0:04:02.786 0:04:02.786,0:04:06.996 0:04:06.996,0:04:10.736 0:04:10.736,0:04:14.736 0:04:14.736,0:04:18.736 0:04:18.736,0:04:23.686 0:04:23.686,0:04:26.736 0:04:26.736,0:04:29.526 0:04:29.526,0:04:30.606 0:04:30.606,0:04:33.776 0:04:33.776,0:04:37.566 0:04:37.566,0:04:40.497 0:04:40.527,0:04:43.747 0:04:43.769,0:04:45.919 0:04:45.934,0:04:49.314 0:04:49.347,0:04:53.347 0:04:53.347,0:04:55.377 0:04:55.457,0:04:57.787 0:04:57.787,0:05:00.027 0:05:00.075,0:05:04.595 0:05:05.306,0:05:09.956