/// <summary> /// Find a path between the start and end positions in world space /// </summary> /// <param name="start"></param> /// <param name="end"></param> /// <returns></returns> public List <Vector3> FindPath(Vector3 start, Vector3 end) { List <Vector3> pathPositions = new List <Vector3>(); if (TilemapGrid == null) { return(pathPositions); } List <PathfindingGrid.Node> path = pathfindingGrid.FindPath(WorldToGridPosition(start), WorldToGridPosition(end)); foreach (PathfindingGrid.Node n in path) { pathPositions.Add(GridPositiontoWorld(new Vector3Int(n.position.x, n.position.y, 0)) + TilemapGrid.GetComponent <GridLayout>().cellSize * 0.5f); } return(pathPositions); }