Search Issue Tracker

Fixed

Fixed in 6000.0.46f1, 6000.1.0b14, 6000.2.0a8

Votes

0

Found in

2021.3.11f1

2022.2.0b12

2022.3.55f1

2023.1.0a15

6000.0.32f1

6000.1.0a9

6000.2.0a1

Issue ID

UUM-58165

Regression

No

Agent accelerates if blocked by a stationary, non-carved obstacle

-

Steps to reproduce:

  1. Open attached project "AreaTestingAINavigation.zip" and scene "2DScene"
  2. Enter Play Mode
  3. In Game View, select an Agent by left-clicking the top-most red circle
  4. In Game View, right-click to a spot above the long wall obstacle
  5. Observe the Agent's movement

Expected results: The agent is blocked by the non-carved obstacle, does not find a path, and moves at regular speed
Actual results: The agent is blocked by the non-carved obstacle, does not find a path, and moves at an increased speed along the side of the obstacle

Reproducible with: (1.1.0-pre.1) 2020.3.41f1, 2021.3.11f1, 2022.1.20f1, 2022.2.0b12, 2023.1.0a15

Reproduced on: Windows 10
 

  1. Resolution Note (fix version 6000.2.0a8):

    Fixed agent and obstacle collision behavior. What was happening was that as soon as the agent came into contact with the obstacle, the collision solver would operate on the agent position to prevent overlap between the agent and the obstacle. The solver did this by pushing or offsetting the agent a certain distance from the midpoint of the obstacle itself or the midpoint of the nearest segment / slab of the obstacle. As the agent is pushed further and further away from this point, the magnitude of that vector increases, which causes the agent to appear to be accelerating "around" the obstacle.

    Now, the agent is no longer pushed from midpoint of obstacle segment/slab and instead push away from closest contact point with the obstacle (eg vector between agent pos and closest obstacle point is perpendicular to the segment) and pushes the agent "out" until it is no longer overlapping.

Add comment

Log in to post comment