Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Collider con A*Pathfinding

Iniciado por fdagnino, Septiembre 02, 2015, 03:02:31 PM

Tema anterior - Siguiente tema
Estimados, buenos dias desde esta parte del globo. Mi consulta es la siguiente, utilizo en mi escena A*pathfinding (AstarPath), funciona barbaro!! el problema se me da cuando, al enemy le agrego un SphereCollider para detectar al player cuando se acerca y asi poder iniciar la ***cucion.  Este SphereCollider lo tengo como trigger, pero a la hora de iniciar, AstarPath me genera un grid vacio alrededor de donde encuentra el Collider, por lo tanto cuando el player se acerca lo suficiente, no se mueve.Como puedo indicarle a AstarPath que el collider no modifique la grafica?? Saludos

Septiembre 02, 2015, 03:16:01 PM #1 Ultima modificación: Enero 01, 1970, 01:00:00 AM por Antonio
Hace tiempo que no uso el A*pathfinding, pero por lo que cuentas, ¿puede ser un problema con el layer?.

Ese addon, necesitaba que crearas un objeto en el escenario y le pusieras un script, con él, al empezar el nivel, el componente creaba una malla de nodos que es lo que usa las IA para moverse. Dicha malla, tenía que poder configurarse para saber qué objetos con colliders eran parte del escenario, y cuales no, (el jugador, los enemigos, estos tienen colliders, pero el A*path no crea (o no debería) crear nodos vacíos a su alrededor. Eso lo hacía por medio de los layers, echa un vistazo al componente a ver si encuentras alguna variable LayerMask (que se llame masks, o layers o algo así). Y en dicha variable, le dices qué layers son los que tiene que detectar y cuales no. Tras lo cual, vuelve a tu sphere collider y mira qué layer tiene puesto. Si no está en uno de los layes a evitar, es bastante probable que el A*path lo esté tratando como un obstáculo.

Al menos, eso es lo 1º que se me ocurre. O.ò

Impecable respuesta, no se me habia ocurrido, voy a revisar.Muchas gracias, saludos.

Funciono perfecto, agregue un layer "enemy", se lo asigne al collider y luego a "Mask" de las propiedades del AstarPath,  

Etiquetas: