Cómo funciona el algoritmo A* en los videojuegos

Поделиться
HTML-код
  • Опубликовано: 18 дек 2024

Комментарии • 66

  • @javianmuniz
    @javianmuniz 5 лет назад +29

    En el próximo vídeo, os enseñaré paso a paso, cómo programar el algoritmo A* para que podáis jugar con él ;)

    • @CarlosDavidCorreaSantillan
      @CarlosDavidCorreaSantillan 4 года назад +1

      Mi primer contacto con la heuristica fue en el año 1989 de la mano de una enciclopedia de 1983 llamada micomputer, venia con un programa simple en basic que hacia una estadística básica sobre la elección del usuario para el juego piedra, papel y tijera, era un sistema extraordinario, llegaba un punto en que no podías ganarle, luego utilice ese enfoque para un juego de pelea similar al street fighter y otro sobre un laberinto, te dejo la pagina de la enciclopedia para que le eches un ojo, es apasionante archive.org/details/MiComputerVolumen02/page/n125/mode/2up

    • @danielesquivel3155
      @danielesquivel3155 2 года назад

      @@CarlosDavidCorreaSantillan aver

  • @giancarloaceves9768
    @giancarloaceves9768 4 года назад +10

    Tengo una materia de robótica en la universidad y no le entendí muy bien de cómo funcionaba el algoritmo. Pero al ver este video, me ha quedado muy claro de como es que funciona, muchas gracias por tomarte el tiempo para explicar algo de una forma muy clara y con contenido visual. Saludos :).

    • @javianmuniz
      @javianmuniz 4 года назад +2

      ¡Un millón de gracias, Giancarlo! No sabes lo muchísimo que supone para mi leer un comentario como el tuyo: ¡GRACIAS, CRACK!
      Seguiré haciendo contenido y mejorando el canal. Pronto, de hecho, también tendremos un servidor de Discord para poder debatir temas e intercambiar ideas entre los miembros de la comunidad ¡Un abrazo! :)

  • @Zeios
    @Zeios 5 лет назад +13

    Se nota tu enorme pasión por programar y enseñar paso a paso tus conocimientos. Eres el máster, sigue así 👌

    •  5 лет назад +1

      ¡Muchas gracias compañero! La verdad es que intento que así sea y que podáis ver la programación como la veo yo también ¡Un abrazo, Zeios! :)

  • @racaer2
    @racaer2 Год назад +1

    Super bien explicado, muchísimas gracias, algo que parece tan complicado y lo sencillo que lo explicas. Las imágenes del laberinto ayudan mucho. muchas gracias.

  • @judithcallejasmeza6491
    @judithcallejasmeza6491 5 лет назад +3

    2:42 Oh! Mi bella Petra amada, lugar donde dejé mi corazón!.❤️
    Gracias por tu vídeo lo estuve esperando 😃. Saludos.

  • @asri3852
    @asri3852 Год назад +1

    Muchas gracias

  • @elriczeroful
    @elriczeroful 3 года назад +1

    Recien me tope con tu canal, explicas maravillosamente!! voy a pasar a ver los videos y darle like, ojala sigas creciendo mucho!!

  • @MrGuille270
    @MrGuille270 4 года назад +2

    Me pedian en la uni explicar como funciona este algoritmo basandome en un ejemplo y venia fatal explicado, ahora ya lo entiendo, gracias ;)

    •  4 года назад +1

      Qué bueno Guille! Me alegra mucho que te haya servido! Un abrazo

  • @alanmontesdeoca2715
    @alanmontesdeoca2715 Месяц назад

    Increíble video! Muchas gracias!

  • @samuelcanochocce2521
    @samuelcanochocce2521 2 года назад +1

    Wow amigo explicas muy bien, y se nota que has invertido mucho esfuerzo y cariño en este video. Te ganaste otro suscriptor más. Gracias

    •  8 месяцев назад

      ¡Gracias Samuel! :D

  • @ferman5903
    @ferman5903 5 лет назад +5

    Muy interesante, ya esperaba mucho otro video :D

    • @javianmuniz
      @javianmuniz 5 лет назад +3

      ¡Muchas gracias Manuel! Pues la próxima semana el tutorial y después de ese... estoy pensando que podemos empezar a ver periféricos y cómo programar combos y cheatcodes ^_^ ¡Un abrazo y felices fiestas, crack! ;)

  • @vicentgarcia4225
    @vicentgarcia4225 5 лет назад +2

    Bua este canal es el mejor de youtube de verdad
    Tengo 16 años y soy un apasionado de la programacion y sobre todo de videojuegos, y me gustaria dedicarme a esto con mis nuevas creaciones. Creo que llegaremos lejos🔝🔝💪

    • @javianmuniz
      @javianmuniz 5 лет назад +2

      ¡Qué bueno, The Vicens! De verdad que me has alegrado el día, compañero ¡GRACIAS! :D Espero que disfrutes mucho de todo lo que está por venir en el canal... ¡Qué es mucho! ya lo verás ¡Un abrazo y feliz año! :D

    • @vicentgarcia4225
      @vicentgarcia4225 5 лет назад +2

      @@javianmuniz feliz año🙌💪🎄

  • @scryle4676
    @scryle4676 5 лет назад +3

    Gran video, es "increíble" como logras contagiar ese ánimo por programar. El video del automata celular me a gustado mucho y este también. Gracias por devolverme esa pasión por querer experimentar y de querer retomar proyectos de videojuegos olvidados para implementar estas nuevas cosas que nos compartes. Un fuerte abrazo y saludos desde Perú.

    • @javianmuniz
      @javianmuniz 5 лет назад +3

      ¡Muchísimas gracias Scryle! Me das una auténtica alegría. Precisamente mi idea es esa, animaros a disfrutar de la programación creando este pequeños (o grandes) proyectos. ¡Un abrazo muy grande desde España hasta Perú y felices fiestas! :D

  • @sugus8869
    @sugus8869 3 года назад

    Hola Javier, me encantan tus vídeos, estoy aprendiendo muchísimo.
    Tengo una idea con la que puedes hacer un vídeo si quieres (en el caso de que se pueda, porque no se si es posible).
    Cuando en un juego lanzas una habilidad con casteo instantáneo es muy fácil dar en el objetivo, obtienes la (x,y) y disparas a ese punto. Pero cuando la habilidad es un proyectil que tarda un segundo o dos en llegar al objetivo, es necesario hacer una predicción.
    He intentado programarlo por mi cuenta, pero no acierta el 100% de las veces y tampoco sé si está programado de la mejor manera y podría hacerse mejor.
    Lo que hago es tomar la posición (x1, y1) esperar un milisegundo y tomar otra vez la misma posición (x2, y2) para saber hacia donde se está moviendo.
    Para obtener la posición final en la que impactará el proyectil (x3 y3), le añado a (x2 y2) la diferencia entre (x2 y2) y (x1 y1), multiplicado por un número ajustable(m), que variará según lo que tarde en llegar el proyectil.
    Ejemplo: Si el objetivo se mueve hacia la derecha la formula sería: x3 = x2 - (x1 - x2)*m
    Ejemplo2: Si se mueve hacia abajo: y3 = y2 - (y1 - y2)*m
    La cosa es que si el objetivo se mueve en línea recta acierta siempre, pero si el objetivo amaga, o se mueve en zig zag, el proyectil falla.
    Te escribo todo esto porque creo que encaja perfectamente con la temática de tus vídeos y si aparte resuelvo mi duda, pues perfectísimo.

  • @Alejandro20302
    @Alejandro20302 3 года назад +1

    muy buen canal

  • @mandrake1017
    @mandrake1017 4 года назад +1

    Genial, estaba buscando algo asi y no encontraba nada! Tienes un nuevo suscriptor

    •  4 года назад

      ¡Mil gracias! Me alegra que te haya gustado, Mandrake :D Nos vemos por aquí :)

  • @tenshihinanawi3873
    @tenshihinanawi3873 4 года назад +2

    Bellisimo video, este canal es Hermos

    •  4 года назад +1

      ¡Qué bien que te haya gustado, Jax Code! Muchísimas gracias. Espero que te lo pases muy bien con los próximos vídeos que están por venir. Creo que os van a encantar ¡Un saludo grande! :D

  • @AgusCoro73
    @AgusCoro73 5 лет назад +2

    Fantástico como siempre
    Saludos.

    • @javianmuniz
      @javianmuniz 5 лет назад +2

      ¡Muchas gracias, Agus! Me alegra muchísimo que te haya gustado el vídeo sobre pathfinding ¡Un abrazo y felices fiestas! :D

  • @DAVISXXZ009
    @DAVISXXZ009 5 лет назад +2

    ☃️☃️☃️ Hola buenas tardes, gracias por los tutorías, me encanta este nuevo canal, Saludes ☃️☃️☃️

    • @javianmuniz
      @javianmuniz 5 лет назад +3

      ¡Muchísimas gracias Davis! Me alegra un montón que te esté gustando. Esta próxima semana habrá tutorial del algoritmo A* ¡Feliz año! ;)

  • @ProgramasVBnet
    @ProgramasVBnet 5 лет назад +5

    Genial Javier, este si me interesa para mi juego "ComeCome" que además utilizar las 4 direcciones, aunque también estaría interesado en las diagonales para juegos que el personaje se mueve en diagonal o los enemigos. A ver si cuando lo expliques paso a paso lo puedo hacer en VB.NET con tu explicación, pero eso si ya será a partir del 7 de Enero que estoy de vacas y con las peques es imposible. Saludetes y Feliz Año

    •  5 лет назад +1

      ¡Genial! Pues espero que el tutorial de la próxima semana te sirva para tu juego. El tema de las diagonales no lo he probado pero todo se puede ver ;) ¡Un abrazo grande y que pases buen fin de año también! ^_^

  • @overflow012
    @overflow012 4 года назад +2

    Hola! Muy buen video, felicitaciones! Tengo una pregunta... Qué pasa si tenemos dos casillas ganadoras? Es decir, El F es igual para dos casillas y que a su vez, es el mejor resultado.

    •  4 года назад +2

      Hola Overfllw012! Muchas gracias amigo! :) En un caso así con varios ganadores puede ir a cualquiera. En este caso, iríamos al primero, porque es indiferente uno que otro. Un saludo, crack :D

  • @bioloco4748
    @bioloco4748 4 года назад

    Muy buen video sigue haciendolos , no se porque no tiens mas suscriptores si eres super bueno-

    •  4 года назад

      Muchas gracias! Espero volver a subir vídeos pronto. Muchas gracias, de verdad 😊

  • @cristiancasco
    @cristiancasco 4 года назад +4

    los desarrolladores de clash of clans tienen que ver este video para que las tropas se muevan por el camino mas corto

  • @BelisarioDeLaMata
    @BelisarioDeLaMata 3 года назад +2

    Compañero, muchas gracias. Llegué a tu video buscando lo que en su momento hice por intuición hace 11 años cuando programé el juego de la culebrita. Definitivamente la parte heurística no la tenía clara, pero la forma cómo lo implementé fue con una búsqueda por amplitud para llegar al objetivo. Tienes un nuevo sub, mira este resultado que considero es bastante interesante para ese momento de principiante en el que estaba y obviamente está está sujeto a mejoras. ruclips.net/video/rNC_JUfKk8Q/видео.html

  • @lesltergomez5678
    @lesltergomez5678 5 лет назад +2

    El canal está bastante verde todavía(en cuanto contenido), aún así ya es de mis preferidos, antes era fanático a tí, ahora q se q eres programador eres probablemente mi youtuber preferido

    • @javianmuniz
      @javianmuniz 5 лет назад +2

      ¡Hola Leslter! ¡Muchísimas gracias por tu comentario, te lo agradezco mucho! Sí, el canal aún está echando a andar y tengo que encontrar el ritmo para el contenido, pero creo que vamos a hacer cosas muy chulas aquí y, en mi otro canal también. Esta semana grabaré un par de vídeos para mi canal principal ¡Un abrazo y feliz año! ^_^

  • @IMTIvanBlake
    @IMTIvanBlake 4 года назад +1

    Disculpe tendrá el algoritmo campo de Potencial?

    •  4 года назад +1

      ¡Hola Iván! Me temo que no, lo lamento.

    • @IMTIvanBlake
      @IMTIvanBlake 4 года назад

      @ muchas gracias por la explicación de este algoritmo 😊

  • @FabricioGamerOMG2015
    @FabricioGamerOMG2015 4 года назад +2

    No me quedo claro el como calcular G, porque si son la cantidad de pasos desde la "celda" actual hasta el final, ya estaría haciendo el pathfinding puesto que estoy esquivando los obstáculos y de una forma u otra llego al final, o estoy entendiendo mal?

    • @javianmuniz
      @javianmuniz 4 года назад +1

      No, "G" es el coste actual, es decir, cuántos pasos has dado hasta llegar hasta donde estás (desde el inicio hasta tu posición actual, no hasta el final)

    • @FabricioGamerOMG2015
      @FabricioGamerOMG2015 4 года назад

      @@javianmuniz Aaaaah, por ejemplo si ya hice 3 movimientos el coste actual es 3 por lo tanto G seria 3?

    • @FabricioGamerOMG2015
      @FabricioGamerOMG2015 4 года назад

      Teniendo en cuenta que lo que cuesta cada movimiento es 1, si cada movimiento costara 10 seria 30

  • @kiby4682
    @kiby4682 5 дней назад +1

    BUENAS, subelo para ensamblador easy 68k polfavol, grasias

    • @andreu621
      @andreu621 5 дней назад

      Hola bro, estoy buscando lo mismo, no lo encuentro por ningun lado, avisame si lo consigues

  • @CarlosDavidCorreaSantillan
    @CarlosDavidCorreaSantillan 4 года назад +1

    Es como ese hongo que esta expuesto en un zoo de francia que se dice que es capaz de resolver un laberinto aplicando la misma estrategia

    •  4 года назад

      No había oído nada al respecto, Carlos. Me gustaría leer sobre ello. Si conoces la fuente, pásamela, por favor, me parese muy guay lo del hongo ☺

    • @CarlosDavidCorreaSantillan
      @CarlosDavidCorreaSantillan 4 года назад +1

      @ En realidad no es un hongo www.bbc.com/mundo/noticias-50090052
      www.xataka.com/ecologia-y-naturaleza/blob-organismo-cerebro-720-sexos-zoo-paris-interesante-que-parece-ordenador-biologico
      www.xatakaciencia.com/biologia/la-asombrosa-inteligencia-del-moho-del-fango

    • @CarlosDavidCorreaSantillan
      @CarlosDavidCorreaSantillan 4 года назад

      @ Estuve buscando paginas mas serias que te lo muestren mejor, incluso hay quienes construyeron cerebros para robots con este bicho como desencadenante de las acciones, claro que a una velocidad muy lenta...
      www.scientificamerican.com/article/brainless-slime-molds/
      www.nature.com/articles/35035159
      francis.naukas.com/2008/10/06/2008-ig-nobel-ciencias-cognitivas-hasta-una-protozoo-puede-encontrar-el-camino-mas-corto-en-un-laberinto/
      neofronteras.com/?p=3966
      www.hidden-nature.com/el-moho-de-muchas-cabezas-el-unico-organismo-que-no-necesita-una-cabeza-para-resolver-laberintos/
      www.ted.com/talks/heather_barnett_what_humans_can_learn_from_semi_intelligent_slime/transcript?language=es

    • @CarlosDavidCorreaSantillan
      @CarlosDavidCorreaSantillan 4 года назад +1

      @ Considere usar los autómatas de Conway como el cerebro de un robot, usando algunas areas de la matriz como activadores de movimiento y las células limite para la introducción de datos hasta que el blob este me distrajo...

  • @SuperTube98
    @SuperTube98 3 года назад +1

    Para cuando el próximo video? jajaja

    •  3 года назад

      ¡Hola Adrián! Muchas gracias por el interés ^_^ de momento, sin fecha. Me he tomado este año con más calma para dedicarle tiempo a mi hija, pero espero poder sacar más tiempo en breve ¡Un abrazo, crack!

  • @wolgank
    @wolgank 11 месяцев назад +1

    para retroceder se debe aplicar lo siguiente: la mamá de la mamá de la mamá de la mamá de la mamá de la mamá...

  • @ivansotelo7609
    @ivansotelo7609 4 года назад +1

    214

  • @mariogarciajimenez865
    @mariogarciajimenez865 3 года назад +1

  • @CarlosDavidCorreaSantillan
    @CarlosDavidCorreaSantillan 4 года назад +1

    Aqui tengo otro enlace sobre la capacidad de ciertos organismos para encontrar el camino mas optimo
    www.xataka.com/medicina-y-salud/video-que-muestra-sorprendente-capacidad-celulas-microorganismos-para-resolver-complejos-laberintos-mejor-que-muchos-humanos

    •  4 года назад

      Qué bueno, Carlos! Muchas gracias por compartirlo. ☺️

  • @fabianojeda8580
    @fabianojeda8580 4 года назад

    Like por el joda bebe