Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Calling NavMeshAgent.SetDestination in Update() stops stoppingDistance working?

Discussion in 'Scripting' started by yezzer, Apr 28, 2012.

  1. yezzer

    yezzer

    Joined:
    Oct 30, 2009
    Posts:
    143
    Simple example:
    Works correctly:
    - User clicks, agent.SetDestination(somePosition) is called.
    - Agent navigates to destination, and stoppingDistance is used.

    Does not work correctly:
    - on Update(), agent.SetDestination(somePosition) is called.
    - Agent navigates to destination, stoppingDistance is disregarded.

    Is this in fact the correct behaviour, or should I file a bug report? If it's the correct behaviour, I think it should be noted in the docs.

    It's sort of mentioned here, and AngryAnt responds with:

    FWIW, I'll do some variation of this. I was aware what I was doing was inefficient, but intended to deal with that later.