Pathfinder3d Change log – Graceful Algorithms

Pathfinder3D Global Change Log

  1. Coroutine-based pathfinding in three-dimensional space algorithm implemented(mod. AStar
  2. Trajectories smoothing and optimizing tools;
  3. Tool for moving across calculated trajectory;
  4. Users API for asset integration implemented;
  5. Finite state machine for Purser class implemented.
  1. Multithreading implemented;
  2. Preliminary scene processing ability implemented;
    Obstacles variability.
  3. Now obstacles can be not only gameobjects with some kind of colliders, but the any other objects you want;
  4. All algorithms were rewritten and optimized. AStar pathfinding was accelerated per 30 percents.
  5. The event system, based on SendMessage mechanism, was implemented.
    Ability to update the trajectory to the moving target implemented (trajectory refining).
  1. Custom inspector for “SpaceManager” and “Pursuer” classes implemented;
  2. In editor mode now possible to highlight occupied cells;
  3. Accelerating AStar algorithm, about per 5 percents;
  4. Jerking bug at trajectory refining process fixed. (Now there is no jerking during recalculating
    trajectory to the moving target);
  5. Wave-trace algorithm implemented. (More effective then AStar for levels with maze-typ
  6. Minor bugs fixed.
  1. Multi-leveled spatial graph implemented;
  2. Improving of optimization and smoothing algorithm, based on multi-level cells traversing Now,
    after optimization and smoothing, the trajectory will contain fewer kinks, loops and excesses;
  3. Possibility to search for a path on any spatial graph level implemented;
  4. Spatial graph pre-game calculating ability implemented;
  5. Serialization/deserialization of the spatial graph implemented (The tool derives from clause 4);
  1. Non-blocking dictionary implemented (using for occupied cells storaging);
  2. Obstacle handling distribution to async tasks was improved;
  3. Configuring the use of multithreading placed in the SpaceManager script inspector;
  4. Fixed a bug due to which the increment of the counter of processed triangles did not occur
  5. Added XML comments to the following classes: SpaceGraph, SpaceManager, SpaceHandler,
  1. Fixed a bug in the multithreading, which caused handeling to hang when the number of threads is more than 12.
  1. Asset was transferred to 2018 version of unity. (2018.3.0);
  2. Now the spatial graph storage is based on C#-built in ConcurrentDictionary, that much faster, than
    version, that we used before;
  3. Asset work, in general, has become faster and smoother. This was made possible thanks to some
    improvements in the use of multithreading;
  4. Fixed a bug in the work of the obstacles handler, which led to incorrect results in some situations.
  1. Asset was transferred to 2018.3.4 version of unity.
  2. A serious bug in multithreaded code has been fixed, leading to deadlocks and errors on machines
    with a large number of cores.
  3. Fixed a bug in the graph deserialization code, which led to incorrect extraction of the cell size from
    a binary file.

Change log list for versions 0.1 – 0.4.1

Our Asset “PathFinder 3D” is designed to find the actual path (trajectory) in the space between two points. The found path will be the closest to the minimum possible and in most cases will not cross obstacles. Pathfinding is performed using one of the following algorithms: 

1. Modification of the algorithm A * with weighted heuristics; 

2. Wave algorithm (the Lee algorithm).