Unity Spain

Post Antiguos => General (Antiguo) => Mensaje iniciado por: Ness en Mayo 25, 2015, 04:45:43 AM

Título: alternativa a NavMeshAgent.destination .
Publicado por: Ness en Mayo 25, 2015, 04:45:43 AM
Hola llevo un tiempo trabajando con este elemento NavMeshAgent pero me he dado cuenta que me genera mucho conflicto para con el box collider pues hacer que lo detectores y demaces se vuelvan muy ineficientes les agradecería que me dieran una alternativa para hacer que mi enemigo siga a mi jugador, sin hacer que el enemigo rote, les agradecería una alternativa este componente, muchísimas gracias. 
Título: alternativa a NavMeshAgent.destination .
Publicado por: kaito en Mayo 25, 2015, 09:00:22 AM
Quizás no sea problema del NavMeshAgent.
 
Y primero busca en internet. Por ejemplo en mi sitio web encontraras cosas relacionada con pathfinding, pero eso lo hice cuando la edición free no podía incorporar el navmeshagent.
 
Lo mejor sería que subieras el proyecto, para verlo con más detalle.
Título: alternativa a NavMeshAgent.destination .
Publicado por: francoe1 en Mayo 25, 2015, 04:39:39 PM
A* esa seria la única alternativa viable, aun que ahora, Unity 5 tiene absolutamente todo gratis, entonces dependiendo del juego que estés armando, si es un FPS con la navegación por malla te quedaría perfecto.
Título: alternativa a NavMeshAgent.destination .
Publicado por: Ness en Mayo 26, 2015, 01:42:16 AM
bueno ya resolvi el problema  pero gracias por la ayuda gente ,pero a hora tengo otro que es salta un enemigo y bueno y los demás saltan pero solo hacia arriba

 no se mueven hacia los lados.
 
este codigo donde estoy probando el salto 

 

else if (salto == true)

{

agent.Stop (true);

 

AtaqueLibiano.enabled = false;

movimientoLibiano.enabled = false;

//agent.enabled = false;

rigidbody.velocity = new Vector3 (0, -rigidbody.velocity.y, 0);

int contadorSalto = 0;

//if (contadorSalto == 0) {

//agent.updatePosition = true;

//agent.updateRotation = true;

 

     

  //  rigidbody.AddForce (transform.up * 200);

        rigidbody.velocity = new Vector3(2,2,0);

//  contadorSalto = 1;

//}

 

//rigidbody.velocity = new Vector3(10,10,0);

//rigidbody.AddForce(transform.up*700);

 

   }

else if (salto == false && suelo == true) 

{

agent.Stop (true);

//rigidbody.AddForce (transform.up * -100);

rigidbody.velocity = new Vector3(2,-2,0);

 

}
[/quote]
 

 

como haré para actualizar al enemigo es un <a data-ipb="nomediaparse" data-cke-saved-href="http://es.wikipedia.org/wiki/Beat_" href="http://es.wikipedia.org/wiki/Beat_" em_up"="">Beat 'em up .
Título: alternativa a NavMeshAgent.destination .
Publicado por: Ness en Mayo 26, 2015, 06:50:39 AM
solucion a al problema de movimiento

if(transform.localScale.x < 0)
      {
         rigidbody.velocity = new Vector3(0,2,0);
         rigidbody.AddForce (transform.right * 200);
      }
      else if(transform.localScale.x > 0)
      {
         rigidbody.velocity = new Vector3(0,2,0);
         rigidbody.AddForce (-transform.right * 200);
      }