Changes between Initial Version and Version 1 of Ticket #3644, comment 2


Ignore:
Timestamp:
Jul 6, 2017, 4:02:12 AM (7 years ago)
Author:
causative

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #3644, comment 2

    initial v1  
    33I believe this is probably the issue here, with the dock's obstruction square taking the place of the second unit.
    44
    5 Why does the short pathfinder act like that?  I haven't thoroughly investigated, but it may have to do with the fact that for unit motion, unit obstruction squares are shrunk slightly which lets them overlap.  The short pathfinder would treat these overlapping squares as colliding.  The short pathfinder allows colliding units to move out of collision, so it would allow the first unit to move "out of collision" all the way through the second unit.  There's also something going on with EDGE_EXPAND_DELTA in CCmpPathfinder_Vertex.cpp which alters the obstructions that the short pathfinder sees, and may contribute to the problem.
     5Why does the short pathfinder act like that?  I haven't thoroughly investigated, but it may have to do with the fact that for unit motion, unit obstruction squares are shrunk slightly which lets the un-shrunk squares overlap.  The short pathfinder would treat these overlapping squares as colliding.  The short pathfinder allows colliding units to move out of collision, so it would allow the first unit to move "out of collision" all the way through the second unit.  There's also something going on with EDGE_EXPAND_DELTA in CCmpPathfinder_Vertex.cpp which alters the obstructions that the short pathfinder sees, and may contribute to the problem.
    66
    77To fix this problem, the short pathfinder would need to be more conservative than unit motion - never returning a path that unit motion can't follow.