¿Cómo saber si está dentro? 😏

Поділитися
Вставка
  • Опубліковано 9 лют 2025
  • En Sonic Frontiers tienes la habilidad de trazar círculos (Cyloop). Si rodeas un objeto interactúas con él. ¿Cómo hace el juego para comprobar si ese objeto quedó dentro del círculo o fuera? Hice Sonic Frontiers en Unity (versión mal) para explicarlo.
    🎮 Mi juego Flatworld en Steam: store.steampow...
    🌏 Mis juegos: www.guinxu.com
    🐦 TWITTER: / guinxu
    📷 INSTAGRAM: / guinxu
    📱 TIKTOK: / guinxudev
    ▶▶ Fuentes ◀◀
    🌐 Fórmula intersección segmentos: www.geeksforge...
    ▶▶ Música usada en el vídeo ◀◀
    Intro: "Shell Warfare" (Hylian Lemon / ocremix.org)
    OST de Sonic Adventure
    Me llamo Guinxu y desarrollo videojuegos indie en Unity para PC (Steam) y Android. En mi canal te ayudo a crear tus propios juegos y manipulo juegos conocidos para aprender cómo funcionan sus trucos y técnicas. Además comparto los avances de mis proyectos y cómo soluciono los bugs que surjan.

КОМЕНТАРІ • 537

  • @Guinxu
    @Guinxu  2 роки тому +86

    📹 Los espejos de los juegos te engañan: ua-cam.com/video/DFW-cc7w738/v-deo.html
    📹 30 días aprendiendo a crear Shaders: ua-cam.com/video/U21gkelGwiA/v-deo.html

    • @sr.cringeman-calvo5198
      @sr.cringeman-calvo5198 2 роки тому +2

      Hola

    • @BGameplays16
      @BGameplays16 2 роки тому +1

      11 minutos y el video fue subido hace 1 minuto

    • @MultiHeiiBust_nt
      @MultiHeiiBust_nt 2 роки тому +1

      @@BGameplays16 porque estaba en privado

    • @sr.cringeman-calvo5198
      @sr.cringeman-calvo5198 2 роки тому +1

      @@BGameplays16 es que estaba en privado y comento cuando estaba en privado y después lo hizo público

    • @BGameplays16
      @BGameplays16 2 роки тому

      @@sr.cringeman-calvo5198 orep e intentado hacer un video privado y no se puedo comentar

  • @sergindsegasonic
    @sergindsegasonic 2 роки тому +40

    El Sonic Truco jajaja

  • @Maicol_WK
    @Maicol_WK 2 роки тому +871

    Habría que preguntarle a un experto, como Alva Majo, él sabe sobre tener cosas dentro

  • @JhonnyGs_OF
    @JhonnyGs_OF 2 роки тому +612

    Este canal tiene los mejores títulos sin duda alguna.

  • @GGGamesFNaF
    @GGGamesFNaF 2 роки тому +145

    Por fin un tutorial útil de verdad
    Edit: Era clickbait gente 😔

    • @FlaxXGD.-
      @FlaxXGD.- 2 роки тому +2

      XD

    • @TomaxY9YT
      @TomaxY9YT 2 роки тому +2

      XDDDD

    • @yumi3280
      @yumi3280 2 роки тому +3

      KAJAJAJAJ

    • @wattosoldier
      @wattosoldier 2 роки тому +1

      Fuera de mi iglesia

    • @alex_tremo255
      @alex_tremo255 2 роки тому +1

      el jeje juegos viendo tutoriales de programacion para su juego de los botones

  • @missenti2581
    @missenti2581 2 роки тому +154

    Yo tengo una curiosidad, en Smash Bros el porcentaje creciente se supone que es nuestra "salud" y cuanto más alta tenemos más probabilidad de salir volando, pero... ¿Qué es realmente ese número? ¿Modifica la gravedad de nuestro personaje frente a un golpe? ¿Cuál es el parámetro real? A mí personalmente me encantaría ver un vídeo hackeando esos parámetros u otros del juego.
    Gran trabajo Guinxu, tus títulos de los vídeos siempre me dan mucho gustito. :P

    • @guillermojoseosoriomoncada7096
      @guillermojoseosoriomoncada7096 2 роки тому +4

    • @AndyP3r3z
      @AndyP3r3z 2 роки тому +28

      Según tengo entendido, el porcentaje es el "daño" que has recibido. Realmente, la gravedad de tu personaje no cambia según este porcentaje, sino sería imposible controlar a tu jugador a porcentajes altos. Lo que cambia es la velocidad a la que sales volando cuando te golpean. Así, a mayor porcentaje, mayor velocidad inicial, y por ende, más lejos llegas

    • @santiagofamo18
      @santiagofamo18 2 роки тому +12

      Tiene nombre, eso, se llama "knockback" en el competitivo, de normal se sigue la norma de mas % = mas knockback, o lo que es lo mismo, mas sales volando por golpe que recibes.
      De hecho los parametros se pueden modificiar en el propio juego sin recurrir a hacks, o almenos en los ultimos.
      La mejor forma de explicarlo es utilizando a Shulk. Shulk tiene dos habilidades de Monado (no se como se llaman, no he jugado XC) que son Smash y Buster. Smash hace que cada golpe que des aumente el knockback, y Buster aumenta el daño pero reduce el knockback. Y si, es modificiando los valores de gravedad SOLO cuando recibes el golpe

    • @manuelabarcacrespo8298
      @manuelabarcacrespo8298 2 роки тому +2

      Realmente no tiene mucha complicacion, la fuerza de empuje sera la potencia del golpe * el porcentaje de vida * la resistencia al knockback del personaje

  • @TanilloGame
    @TanilloGame 2 роки тому +2

    Esa música de Big en Emerald Coast... 💙🦔

  • @Jose497
    @Jose497 2 роки тому +50

    Me recordó a la dinámica de Pokémon Ranger, en la que tienes que dibujar circulos lo más rápido que puedas alrededor de un Pokémon para poder capturarlo

    • @alejandrog641
      @alejandrog641 2 роки тому +4

      Captura en curso!

    • @BuruKyu
      @BuruKyu 2 роки тому +3

      Ya lo dijo la leyenda de los videojuegos, no aporta nada y ya me lo sabía

  • @axelgaona7608
    @axelgaona7608 2 роки тому +32

    Nunca me dejan de asombrar lo ingeniosos que son, que genial que en tu canal aprendemos un poco de este mundo :)

  • @MarkotusYT1
    @MarkotusYT1 2 роки тому +21

    Muy buena explicación, no suelo comentar en los vídeos ni estudio nada relacionado con los videojuegos, pero me parece que hay que admirar lo que haces, la explicación es excelente y los vídeos dan que pensar! Eso es fantástico, buen trabajo =)

    • @Guinxu
      @Guinxu  2 роки тому +5

      Muchas gracias :)

    • @leonel5702
      @leonel5702 2 роки тому

      :)

    • @endyourway8751
      @endyourway8751 2 роки тому

      @@Guinxu muy buen video! tienes alguna fuente respecto de porque funciona la paridad para afuera y la imparidad para adentro?, se que es más teórica la cuestión pero me gustaría revisarla un poco.

  • @comunisman4368
    @comunisman4368 2 роки тому +53

    Eres mi desarrollador de videojuegos favorito, te adoro Alva

    • @Guinxu
      @Guinxu  2 роки тому +54

      Calla y cómprate batidos con mi código.

    • @Vorpal9721
      @Vorpal9721 2 роки тому +1

      xD

    • @chefaku
      @chefaku 2 роки тому

      el Alva matemático .___.

    • @comunisman4368
      @comunisman4368 2 роки тому +1

      @@Guinxu los polvos son para la lavadora

  • @AlexBA411
    @AlexBA411 2 роки тому +31

    Me hizo acordar a Dumah de Soul Reaver. Con su derrota conseguís el poder de poder rotar objetos inamovibles haciendo un círculo frente a ellos un par de veces. Y en el caso del Boss este puede drenarte vida al hacer un círculo alrededor tuyo.

  • @MatesMike
    @MatesMike 2 роки тому +4

    Gran título, Guinxu, no se me habría ocurrido uno mejor jejeje

    • @Guinxu
      @Guinxu  2 роки тому +3

      Espero que hayas quedado satisfecho con las matemáticas usadas jaja.

    • @MatesMike
      @MatesMike 2 роки тому +2

      @@Guinxu Por supuesto jejeje

    • @aegacraftyt
      @aegacraftyt 3 місяці тому +1

      ​@@MatesMike no sabía q veias este canal xd

  • @teemovsall
    @teemovsall 2 роки тому +1

    Ohh elegiste el título que te dije en Twitter, me siento alagado, ya puedo morir tranquilo. Aunque no sé si te lo dijo alguien más. pero no lo comprobaré XD... buen video!

  • @wSircam
    @wSircam 2 роки тому +7

    Guinxu, de hecho te falto un caso xD cuando el rayo pasa por un vertice, por que al ir iterando en la lista de segmentos, el vertice es un "punto en comun" en 2 segmentos. Si imaginas un cuadrado y el rayo pasa por el vertice y la figura esta adentro, te saldria un 2, por lo tanto deberia estar afuera

  • @strawberryphantom4968
    @strawberryphantom4968 2 роки тому +8

    Guinxu estaría genial otro video de "manipulando cámaras"

  • @JavierPrieto
    @JavierPrieto 2 роки тому +32

    ¿Y si lanzas el rayo justo a un vértice del polígono? Supongo que ante la duda mejor tirar dos o tres rayos y comprobar que al menos uno es impar.

  • @toni9305
    @toni9305 2 роки тому +1

    El teorema de la curva de jordan, todo eso que explica es geometria computacional

  • @Zindokar
    @Zindokar 2 роки тому +1

    Muy bien Ginxu, tengo ganas de jugar al Sonic, y tu solución es bastante simple y elegante diría yo.

  • @RobertCubes
    @RobertCubes 2 роки тому +1

    "Si el círculo está virolo..." Y me entró la risa tonta y ya no pude parar 🤣🤣🤣

  • @vorixo
    @vorixo 2 роки тому

    Este método tambien se usa para computar las playable areas de algunos multiplayer shooters. El típico mensajito de return to the battlefield.
    Solo que en ese caso el mapa se dibuja con una spline directamente en editor, y no en runtime.

  • @Zevenont
    @Zevenont 2 роки тому

    Ese método existió desde hace mucho antes de los videojuegos según tengo entendido, porque es un teorema matemático

  • @Pablo_ogg
    @Pablo_ogg 2 роки тому +4

    Hay formas en las que podría detectar un número par aún estando dentro si es que el rayo se topa con una "arista" interna.

    • @CharlyXero
      @CharlyXero 2 роки тому +1

      En el del Among, si la parte de la "cara" la haces de otra forma, hay partes donde saldría par pero estaría dentro. O si haces un círculo doble, saldría par también

  • @Tristepin123
    @Tristepin123 2 роки тому

    Me flipa que me acabo de comer un video enterito de 6 minutos de algo que no me interesa en absoluto y que ni voy a estudiar en la vida porque me dedico a otra cosa y aún así lo he disfrutado como si abriera regalos de Navidad con 10 años, increíble habilidad comunicativa, si todas las personas que se dedican a la enseñanza tuvieran tu habilidad de comunicar algo de forma entretenida el mundo sería un lugar increíble

    • @Guinxu
      @Guinxu  2 роки тому

      Muchas gracias :)

  • @erickakumafuentes
    @erickakumafuentes 2 роки тому +1

    *Un bot de sega procede a perma-banearlo

  • @Lorenzoh93
    @Lorenzoh93 2 роки тому +2

    Eso no se sabe; eso se siente 😏

  • @shadowind30
    @shadowind30 2 роки тому +1

    Vi el video y recien me di cuenta del profundo significado del titulo, grande Guinxu.

  • @MrChomp-ef9oc
    @MrChomp-ef9oc 2 роки тому +15

    Mi Narcisista Favorito, sigue eres mi inspiración a ser desarrollador de videojuegos
    Edit: me di cuenta que fue hace 20s que se lanzó el video así que UwU

  • @ejon3423
    @ejon3423 2 роки тому +1

    Guinxu dejó de ser family friendly hace tiempo.

  • @HimuGamer
    @HimuGamer 2 роки тому +2

    por fin voy a saber si apunté bien o estoy en el ombligo o en otra parte. gracias guinxu jajaja. muy buen video

  • @copromorfo
    @copromorfo 2 роки тому +1

    Yo tararía 3 rayos desde el centro separados a 120° entre si, los rayos tendrían sus ids, rayo 1, rayo 2 y rayo 3 y el personaje debe ir en esa secuencia siempre, independiente del orden, si no se repite el primer rayo en la secuencia, entonces, es una secuencia valida, por lo tanto un circulo

  • @stormapv0000
    @stormapv0000 2 роки тому +2

    Joder el destripando los juegos

  • @daleodorito
    @daleodorito 2 роки тому

    Yo entendia que basicamente usaba raycast para determinar cuando colisionaba el trazado consigo mismo, creando ahi un vertice, y que con todos los vertices dados intentaba crear la forma cerrada lo mas pequeña posible y marcaba toda el area de la forma como "dentro". Para determinar si es una forma cerrada comprobamos si hay algun segmento que se cruce y para cortar los cabos sobrantes borraria todos los vertices desde la ultima colision del trazado y basicamente ese punto de corte serian las coordenadas del primer y del ultimo vertice

  • @PrismaDoker
    @PrismaDoker 2 роки тому

    Mientras cargaba el vídeo me salto un anuncio de Amazon y luego uno de Sonic Frontier

  • @t4nermiller
    @t4nermiller 2 роки тому +1

    Waos
    No sabía que la computadora podía saber si lo puse adentro XD

  • @penkinodenuevo7468
    @penkinodenuevo7468 2 роки тому +1

    4:55 Eso iba directito para Alva, no tengo duda.

  • @RoxasSmart
    @RoxasSmart 2 роки тому +1

    0:50 ''no es la más bonita del mundo'', pues se ve mejor que el primer tráiler del juego😂

  • @ernestoblue8466
    @ernestoblue8466 2 роки тому

    Es muy divertido ver tus videos, cómo fan de los videojuegos y como anhelo de ser programador y crear un videojuego propio. Me motiva y aprendo al ver cada vídeo, gracias

  • @UsagiE102
    @UsagiE102 2 роки тому +2

    Al final guinxu no encontró un buen título xdd

  • @josemrp2
    @josemrp2 2 роки тому

    El Guinxu siempre usando mates para sus juegos, ahora quiero ver a Alva Majo haciendo lo mismo sin mates

  • @pagaun
    @pagaun 2 роки тому +1

    Yo lo pense, tu lo pensaste, todos lo pensamos

  • @RedemtionDev
    @RedemtionDev 2 роки тому +2

    Siendo desarrollador de videojuegos con este video me quede más perdido que Nemo en Bolivia , aun así gran video y vaya titulo

  • @sr.cringeman-calvo5198
    @sr.cringeman-calvo5198 2 роки тому +36

    Como saber si está dentro? Pensé en una p-

    • @unapersonacualquiera1297
      @unapersonacualquiera1297 2 роки тому +8

      Quien tiene hambre, en pan piensa

    • @sr.cringeman-calvo5198
      @sr.cringeman-calvo5198 2 роки тому +3

      @@unapersonacualquiera1297 ?

    • @Sir_Pingu
      @Sir_Pingu 2 роки тому +14

      @@unapersonacualquiera1297 Quien no tiene es por que ya comio

    • @unapersonacualquiera1297
      @unapersonacualquiera1297 2 роки тому +5

      @@Sir_Pingu la verdad es que no te equivocas, estaba comiendo mientras escribía el comentario, dejo a interpretación del resto el qué comía

    • @lifeasdev7480
      @lifeasdev7480 2 роки тому +1

      @@Sir_Pingu cool

  • @sonic-fansdc3033
    @sonic-fansdc3033 Рік тому

    Fue una muy buena explicación, no he podido jugar Sonic Frontiers pero le veo gameplays y la explicación estuvo exelente y entendible (apesar de que no sé programar pude entender la explicación sin problema alguno)💯

  • @kennettewtf8772
    @kennettewtf8772 2 роки тому +2

    Súper buen título jajaja

  • @paprokus
    @paprokus 2 роки тому +14

    Se me ha ocurrido algo, y creo que tendrías que hacer una media con varios intentos de proyectar el rayo (tal y como haces con el tema de la complejidad). Por ejemplo, del Amongus que has puesto, hay zonas que tienen dos intersecciones (casco a encima de la mochila). Es mi idea, pero muy buen vídeo y muy claro todo

    • @davidsalazar4691
      @davidsalazar4691 2 роки тому +5

      tambien existe un error en lo que dice guinxu, si tu haces un espiral cuidadosamente con una cantidad de vueltas pares alrededor del objeto y lo cierras detectara que en algunos puntos hay una cantidad de puntos impares y otra parte donde hay puntos pares y basicamente el juego hara PUUUUUUUUUUM.

    • @PabloDeLafuria
      @PabloDeLafuria 2 роки тому

      @@davidsalazar4691 tambien si el rayo justo se traza tangencialmente al circulo, dira que esta dentro y esta afuera

  • @ender372
    @ender372 2 роки тому

    Que buena coincidencia qué justo me saliera un anuncia de sonic frontiers

  • @joseantoniomunoz164
    @joseantoniomunoz164 2 роки тому

    A ver, que estoy empezando con Unity. Si pones un RayCast en el objeto apuntando al jugador, en el momento que éste está a una distancia X del objeto, se guarda la rotación inicial el RayCast con el jugador. Si mientras el jugador no se aleje más de la distancia X del objeto y haga que el RayCast complete una vuelta entera sobre si mismo (rotación de 2pi o 360º) entonces habrá cerrado el "lazo" llamémosle :P.
    Wala, después de ver el video no tenía en cuenta que con mi planteamiento podría no cerrar el círculo, sólo con darle una vuelta ya valdría :S, por lo que sí que habría que guardar también la posición del jugador. Aún así sin dedicarle un rato lo mismo sigue habiendo más errores.
    Muy curioso este video ;D

  • @licenciadojoseantoniocruzd1631
    @licenciadojoseantoniocruzd1631 2 роки тому +1

    Para saber si esta dentro hay que introducirlo profundamente y sentir que hay una bola adentro y luego dejar que la cosa que haya introducido adentro haga la magia metiendolo y sacandolo

    • @Samsalra
      @Samsalra 2 роки тому

      Sin olvidar que cada vez que se mete hay que alcanzar nuevamente la bolita de adentro 👀

  • @Alan-qs5qk
    @Alan-qs5qk 2 роки тому

    Eso me recordó al teorema de la curva de Jordan, ese Guinxu todo un matemático

  • @elgumi6944
    @elgumi6944 2 роки тому

    cada ves que un juego esta en auge, Guinxu stons

  • @Desiresportal_Oficial
    @Desiresportal_Oficial 2 роки тому

    Buenas.
    Programando mi sistema de coliders 2D para mi motor de juegos se me ocurrió la "genial" idea (nótese el sarcasmo) de utilizar coliders tipo área. Básicamente son puntos unidos por líneas como los de tu ejemplo.
    En mi caso me encontré con el problema de los super improbables casos en los que el rayo imaginario intersecta con el punto donde termina una línea e inicia la siguiente. Contaba como dos colisiones porque justo chocaba con el punto que unía las dos líneas.
    Lo solucioné usando las normales.
    Básicamente, al formar el área punto por punto, iba calculando el ángulo que formaban las líneas entre si y lo iba sumando. Cuando se termina de formar el área, según si el ángulo es mayor o menor que 0, se entiende que la forma geométrica la has hecho en el sentido horario o antihorario. Luego calcula los ángulos de cada segmento respecto a 0 y le añade o le resta 90 grados según el sentido en el que has formado el área para tener la normal de dicho segmento.
    Al final, mi función que detecta las colisiones tipo área, comprueba la intersección del rayo imaginario con todos los segmentos del área y se queda con la intersección mas cercana. Comprobando si el rayo le da por el lado de la normal o por el revés de esta, puedo determinar si el punto esta dentro del área o no.
    Puede ser mas lioso o computacionalmente mas costoso, pero fue mi solución ideal para evitar bucles absurdos en las detecciones. Simplemente cargo el trabajo mas pesado en la creación y edición del colider.
    (No sé si ha quedado lo bastante claro. Cualquier duda me comentas.)

  • @AndyP3r3z
    @AndyP3r3z 2 роки тому

    Muy buen truco
    Sólo veo un caso donde tal vez no funcionaría, y es que si la curva es cerrada, pero tiene una protuberancia hacia dentro, podría ocurrir que el rayo que se lance toque en un punto tangente a la protuberancia y luego corte en otra parte de la curva (es poco probable, pero probable a fin de cuentas). Esto serían 2 intersecciones a la curva.
    Creo que otra idea para arreglar esto sería: luego de asegurarse de que la curva es cerrada y de cortar las colas, hacer una superficie poligonal con los puntos de la curva, luego ver si dicha superficie se intersecta con el objeto y voilá: si intersecta es porque está dentro

  • @rafalongo7
    @rafalongo7 2 роки тому

    muy ingenioso ginxu, estoy aprendiendo a programar y tus videos son interesantisimos

  • @DaviBorja
    @DaviBorja 2 роки тому

    Ah, eso me lo había mencionado un enseñador, y se me había olvidado; pero ahora lo recordaste y me sirve para una cosa ajena donde necesito))))

  • @daksterhp
    @daksterhp 2 роки тому

    2:44 soy feliz, mis plegarias fueron escuchadas

  • @Sammwy
    @Sammwy 2 роки тому +1

    Antes de seguir con el video reflexiono sobre como pensaría el juego para detectar si está dentro o no:
    Lo primero que se me ocurre es detectar cuando pisas tu propia estela. El o los objetos cercanos tendrían que lanzar rayos a sus direcciones para comprobar que el camino de sonic envuelva a dicho objeto. Entonces si todos los rayos en un ángulo de 360° confirman el camino de sonic pues está dentro.
    Edit: Pues lejos no estuve pero me sorprendió mucho el método.

  • @cactoide2097
    @cactoide2097 2 роки тому

    Ahora a ponerlo en práctica esta noche

  • @delokke
    @delokke 2 роки тому

    Eso, o tener 3 collision spheres en forma de triangulo, cuestion de que si los lazos colisionan con este triangulo se ejetuca lo que se quiere.

  • @ferriisawizard5082
    @ferriisawizard5082 2 роки тому

    Literalmente acabas de explicar las bases de colisiones de la carrera de GDDV asignatura "Fonaments Matematics per a Videojocs" xD

  • @LeetDante
    @LeetDante 2 роки тому

    aportaría que en caso de tener varios objetos interactuables, se lanzara desde cada uno dentro de un rango, una linea similar en dirección hacia el centroide de la figura creada para hacer los cálculos.

  • @rueton
    @rueton 2 роки тому

    No he podido evitar leer el título con la voz de Escardi sensuaaaaaaaal

  • @joao.gonzalez
    @joao.gonzalez 2 роки тому

    De este truco se podrían sacar conversaciones matemáticas bastante tochas

  • @ShizaDecaf
    @ShizaDecaf 2 роки тому

    la demostración de Sonic F. que hizo Guinxu se ve igual que el juego en switch

  • @alvaromlvb
    @alvaromlvb 2 роки тому

    Por si a alguien le resulta interesante: el hecho de que exista un "dentro" y un "fuera" de una curva cerrada se llama teorema de Jordan y es jodidamente difícil de demostrar (en la carrera de matemáticas se ve y la demostración puede durar más de una semana de clase)

  • @FactoryTrashcension
    @FactoryTrashcension 2 роки тому

    Me ha gustado el vídeo, pero veo un pequeño fallo con una probabilidad muy pequeña de que pase (estoy seguro que tú también lo has pensado)
    Pongamos el escenario de la estrella de 5 puntas, te pones un lado (un triangulo) de la estrella con el objeto dentro.
    Lanzas un rayo que salga de la estrella y choque con la punta de otro triángulo de la estrella, de tal manera que la cantidad de choques es par, porque se cuenta una vez por salir de la estrella y luego otra por tocar la otra esquina por tanto 2 choques, contaría que está fuera, cuando en realidad está dentro. Quiero decir, si atraviesa la esquina solo en ese segmento solo se cuenta un choque en lugar de 2.
    No es fácil de solucionar, dado que cuando lanzas el rayo puedes comprobar que ningún punto donde choques sea "esquina", pero entonces si estás dentro y lanzas el rayo justo por la esquina, ignorarías ese punto y te contaría como que está fuera, 0 choques. No veo solución clara, al poder dibujar cualquier configuración siempre encuentro contraejemplos en los métodos que se me ocurren.
    Buen trabajo, me ha gustado el vídeo =)

  • @lopoxito
    @lopoxito Рік тому

    Antes de ver el vídeo, yo creo que obligan al objeto encerrado a salir con un pathfinder, y si no hay un hueco disponible para que salga, se entiende que está rodeado

  • @lu_501
    @lu_501 Рік тому

    Antes de ver el video: yo pienso, que el juego comprueba si un cierto tipo de objeto se encuentra dentro de la línea que deja el personaje, si no, no hay interacción, si sí lo hay, hay una interacción, especifica para subcategorías de los que hacen una interacción con el personaje

  • @SrCato__
    @SrCato__ 2 роки тому

    No tengo idea de programar pero con lo que he aprendido de este canal podría proponer una alternativa quizás un poco menos compleja (hablando desde la ignorancia, claro) que la del video, supongo que se podría realizar un trazado con la estela de sonic dejando un punto A en el inicio, luego si en algún momento otra parte de la estela pasa por el punto A se cierra la figura y se realiza una comprobación para averigüar si el objeto indicado está dentro de la figura.

  • @argentinatoday3860
    @argentinatoday3860 2 роки тому

    Esa es una pregunta muy personal.

  • @z0d0rZ
    @z0d0rZ 2 роки тому

    Yo al principio pensé en que la forma que dibujas crease un plano 2d en el juego (obviamente invisible) y si el objeto está en contacto con dicho plano entonces está dentro

  • @pepepepillopepin6989
    @pepepepillopepin6989 2 роки тому

    "Casualmente" justo antes de empezar el vídeo, me ha saltado un anuncio de Sonic Frontiers, y estaba realmente bien, si lo llegan a poner así desde le principio, lo mismo no el cae tanta mierda.

  • @VilasNil
    @VilasNil 2 роки тому

    El único problema que veo es que en caso de que el rayo pase por uno de los puntos y las dos líneas que llegan a ese punto hacen un cambio de dirección muy brusco, sería posible detectar dos intersecciones en una figura cerrada.
    Imaginemos un corazón (figura, no órgano), y el objeto está en uno de los bultos, si trazamos la línea desde el objeto pasando por el pico del corazón (primera interseccion) volverá a pasar por uno de los límites del corazón.
    Un dibujo sería más sencillo para comprenderlo, pero espero haberme explicado bien.
    Otro ejemplo quizá más fácil, una estrella. Si pones el objeto en una de las puntas de la estrella y trazas el rayo por uno de los dos puntos "internos" de esa punta, luego hará un tramo por dentro de la estrella y posteriormente un segundo cruce por alguna otra punta.
    Las probabilidades son bajas, pero se puede dar el caso...

  • @guitarsimonlo
    @guitarsimonlo 2 роки тому +1

    Muy buen video y muy buena explicación, comprobar si estás dentro o fuera del círculo tiene una gran base matemática y para comprobar esto se usa el teorema de la curva de Jordan, pero hay que tener cuidado con los puntos de tangencia al lanzar el rayo! 😉

  • @alejandroalzatesanchez
    @alejandroalzatesanchez 2 роки тому

    No te sorprendas cuando salga otro de _"Guinxu fuera de contexto"_ con ese titulo jajajajaja

  • @adrongames
    @adrongames 2 роки тому +1

    Hay un fallo en tu lógica. Si se apunta a un lateral desde fuera del círculo, tal como lo haría una derivada de una parábola, contaría como que el objeto está dentro del círculo, ya que solo toca una vez, y 1 es un número impar.

  • @jonh3947
    @jonh3947 2 роки тому

    Título alternativo: Cómo cerrar un objeto con una estela

  • @Mariomm_marti
    @Mariomm_marti 2 роки тому +1

    Antes de ver el vídeo, voy a apostar a que usan "flood fill" como el Paint cuando usas el cubo de pintura.
    Edit: tu método me parece bastante más lógico y rápido que hacer un flood fill la verdad, bastante guay el vídeo :)

  • @wingtimeofficial
    @wingtimeofficial 2 роки тому +1

    A mí se me ocurre que cuando se cierra el círculo, el objeto lance un raycast y que el objeto gire y si en todo el recorrido no detecta que está abierto que interatue

  • @fergandara8567
    @fergandara8567 2 роки тому

    A nivel matemático esto de estar dentro o fuera y que sea par o impar se denomina el Teorema de la Curva de Jordan :)

  • @davidreyesalvarado8659
    @davidreyesalvarado8659 2 роки тому

    No es un método, es un teorema matemático!!! ¡ES MATEMÁTICAS!

  • @MarioDeMetal
    @MarioDeMetal 2 роки тому

    Esto me recordó a cuando en super mario 64 que cuando girabas sobre un tronco,te daba monedas

  • @Valdifer90
    @Valdifer90 2 роки тому +4

    4:16 fue lo que pensé al empezar, ni tan mal... He dejado de ser muy masilla para ser solo masilla a secas 😃
    Gracias por mostrarme los caminos de Dios guinxu

  • @Pakillototaki
    @Pakillototaki 2 роки тому

    Leo en los comentarios que varias personas mencionan el problema de este método cuando el rayo pasa exactamente por un vértice. Soy informático especializado en sistemas gráficos, aporto mi humilde experiencia:
    Efectivamente, este método es bastante problemático cuando los polígonos no son convexos (dicho mal y pronto para que me entienda todo el mundo: "tienen picos"). Imaginen el caso en que el rayo pasa por un vértice y este hace un pico en el polígono: nos daría dos intersecciones estando el punto dentro y si encima tenemos la mala suerte de que si lanzando el rayo en la dirección contraria hay otro pico, esté el punto dentro o este fuera siempre nos va a dar un número par de intersecciones.
    Una forma habitual de resolverlo es lanzar N rayos, girando X grados en cada iteración y testeando así varias direcciones lo que reduce las posibilidades de error. En mi opinión, no es la mejor solución ya que no es muy eficiente y además no garantiza que el resultado sea correcto, solo minimiza las posibilidades de error.
    La forma en la que habitualmente resuelvo este problema es haciendo triángulos:
    Imaginen que cogemos un punto cualquiera que sabemos que está fuera del polígono (se puede calcular sin problema cogiendo las coordenadas mínimas o máximas y sumando/restando un valor a este punto), ahora vamos iterando los segmentos del polígono. Para cada segmento hacemos un triángulo de la forma: punto que está fuera + segmento del polígono. Habrá triángulos que estarán totalmente fuera del polígono y otros que estará parte fuera y parte dentro. Lo interesante es: los que están totalmente fuera tendrán una orientación (por ejemplo: sentido horario) y los que están parte dentro y parte fuera tendran la orientación opuesta. Para que el punto esté fuera: o bien no está dentro de ningún triángulo o está en dos triángulos con orientaciones opuestas (uno totalmente fuera + uno con parte dentro del polígono).
    Así que el algoritmo sería:
    1 - Iterar el polígono y comprobar si el punto coincide con un vértice o está contenido en alguno de los segmentos (podemos aprovechar este bucle para sacar las coordenadas mínimas o máximas). Si lo estuviera, en mi caso considero que está dentro. Según para lo que usemos el test puede interesarnos que esto signifique que está fuera. Esto a gusto del consumidor.
    2 - Obtener un punto que sepamos 100% que está fuera del polígono (por ejemplo, con las coordenadas mínimas restando un valor arbitrario, por ejemplo 10 unidades. Si optamos por las máximas, hay que sumar en lugar de restar)
    3 - Iteramos los triángulos formados por el punto anterior + los dos vértices de cada segmento del polígono. Asignamos a cada orientación un signo (por ejemplo, antihorario un + y horario un -). Si el punto está dentro del triángulo, sumamos o restamos 1 según la orientación del mismo. Pero, ¡ojo!: tenemos que comprobar si el punto está contenido en alguno de los segmentos del triángulo (porque de ser así aparecerá en más de dos triángulos y podría fallar el test). Si lo está en lugar de un 1, sumamos o restamos 0.5 de forma que cuando lleguemos al triángulo que comparte el segmento, este aportará el 0.5 restante (bien positivo o bien negativo) y no habrá problemas.
    4 - Finalmente, cuando hemos iterado todo el polígono, si el resultado de estas sumas y restas del paso 3 es != 0 el punto está dentro del polígono.
    Este algoritmo lo he empleado, entre otros, para seleccionar puntos en nubes de puntos (de millones de puntos, decenas e incluso cientos de millones) y ha dado resultados correctos incluso con polígonos con autointersecciones (el ejemplo típico de esto, para que se hagan idea, es la forma de un reloj de arena).
    El método que nos explica Guinxu es muy eficiente y sencillo de implementar y, si hay garantías de que los polígonos son convexos, podríamos usarlo sin problemas. En otro caso, creo que es más fiable el método basado en triángulos que además nos garantiza que tenemos el resultado correcto en una sola iteración mientras que el del rayo nos podría llevar a tener que probar varias direcciones, etc.
    No sé si alguien conoce un método más eficiente que el que comento de los triángulos o alguna manera sencilla de corregir estos casos "extremos" del test del rayo. Me parecería interesante conocer como otros desarrolladores resuelven estos casos especiales.

  • @ElInventor
    @ElInventor 2 роки тому

    Queremos ver cómo Alva Majo lo haría sin matemáticas.

  • @lu15_svarez58
    @lu15_svarez58 2 роки тому

    Que prooooo!!! Guinxu verdaderamente eres todo un crack.

  • @manuelaguilera6657
    @manuelaguilera6657 2 роки тому

    No estoy seguro si estoy entendiendo mal, pero creo que hay un error con el método de intersecciones. Ya que si el angulo de salida del rayo es aleatorio, existen figuras donde vaya a poder darse casos de 1 o 2 intersecciones. Incluso si lanza varios al mismo tiempo. Por ejemplo en la estrella, si el objeto estuviese en el centro entonces al impactar los vértices se encontraría con una sola intersección.

  • @jifenrirfalcon9413
    @jifenrirfalcon9413 2 роки тому +1

    Tiene un error, si creas una espiral de adentro hacia fuera das dos vueltas y cuando comiences la tercera cierras el círculo en todas las direcciones dará dos y lo leerá coco que está fuera cuando está claramente adentro

  • @chucrutdr
    @chucrutdr 2 роки тому

    No sé si funcionaria pero imaginemos que alguna forma regular o irregular debe rodear completamente la figura, yo lo que haría es que posicionandome en el punto del objeto pintaria toda la región algo así como lo que uno hacía en el paint cuando niños, si el coloreo rellena la figura que rodea el objeto, quiere decir que está dentro

  • @victordeblascanela7806
    @victordeblascanela7806 Рік тому

    buen video para introducir las curvas de Jordan (o almenos motivarlas para estudiantes de calculo vagos)

  • @alejandromartingasco5131
    @alejandromartingasco5131 2 роки тому

    Te juro que pensaba que ibas a decir en algún momento la palabra “topología”

    • @Guinxu
      @Guinxu  2 роки тому +1

      Debería haberlo dicho en realidad.

  • @BFigue
    @BFigue 2 роки тому

    "Mejor afuera que adentro"
    dijo el Shrek
    Buen video :D

  • @mairaxmsgstaffseriesmc9091
    @mairaxmsgstaffseriesmc9091 2 роки тому +1

    El título 😃
    Mi mente 🌚

  • @andresbellocq6421
    @andresbellocq6421 2 роки тому +2

    y si justo coinciden magicamente el rayo con una linea del dibujo perfectamente recta no generaria infinitos puntos de inserseccion y sobrecargaria todo??

  • @superstrellaa
    @superstrellaa 2 роки тому

    Y el momento guinxu!

  • @keego8507
    @keego8507 2 роки тому

    Un año y dos meses esperando no more shopping completo

  • @scxjuegosyarte8100
    @scxjuegosyarte8100 2 роки тому

    Yo tengo una idea mas practica para la solución de el problema de la colita:
    Agarras las coordenadas de donde se une la línea y lanzas el rayo al lado opuesto.

  • @DitHail2
    @DitHail2 2 роки тому

    Un sujeto logró hacer un Among Us con esa habilidad xd

  • @annnnnnndy
    @annnnnnndy 2 роки тому

    Alta estrategia, entre solo por el titulo jajajajajajaj

  • @renemartinez1128
    @renemartinez1128 2 роки тому

    Jajaja lograste encontrar el titulo perfecto para el video