# 2D Pathfinding

This topic is 1756 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

Hello, as allways doing some feature to my "game engine", and now I need info about path finding. Maybe anybody could give some advice what to read

What I want I painted, so would be easier to explain. There is pictures https://www.dropbox.com/sh/3apm1hupb12xdu4/jGuutop3aB

I need that my object go from one point to another.  As in first picture, if there is no blocks in path, so go simple straight line. Only begin and end points. As in second, if there would be block in path, find fastest way to walk around it. Now would be three point: begin, block corner and end points. If there would be more blocks - so more points would be too.

My game is will be tile based. Now all object is 32x32 (tiles, enemies and so on), but what I thinking, is to make tiles 4x4, and all object would be same proportion as it (4x4, 8x8, 16x16, 32x32 ...) so one object could be on more then one tile. But it's just thinking for now

And sorry for english, really hard to remember to write good

Edited by Plutonium

##### Share on other sites

You want to look at the A* algorithm for tile based (or node based) pathfinding http://en.wikipedia.org/wiki/A*_search_algorithm

which is usually more efficient than Djikstra's algorithm which is basically just a flood fill.

EDIT: I can see your picture now, can't see any tiles though ;)

##### Share on other sites

You want to look at the A* algorithm for tile based (or node based) pathfinding http://en.wikipedia.org/wiki/A*_search_algorithm

which is usually more efficient than Djikstra's algorithm which is basically just a flood fill.

EDIT: I can see your picture now, can't see any tiles though ;)

think that all rectangles are tiles (could be more then one in same place) and all other is alot of white rectangles :D that was just fast drawing :)

But maybe not tiled based game would be better? Talking about pathfinding

##### Share on other sites

Well check out A* anyway... or try doing it with Dijkstra's algorithm first which is easier to understand.

A* and Dijkstra's algorithm depend on nodes (which would be tile midpoints in a tile based game) existing on the map. (If you don't have tiles you need to subdivide your space into regions and place a node in each one, like a waypoint system).

http://en.wikipedia.org/wiki/Dijkstra%27s_algorithm

##### Share on other sites

But maybe not tiled based game would be better?

Your game map doesn't have to be tiled. If you can make a graph that represents your map, then you can use A* or Dijkstra's.

##### Share on other sites

If you use grids to store you world, you can use my A* implementation (it is implemented on C), you can find it (and how to use it) on my blog (link is on my signature).

http://www.policyalmanac.org/games/aStarTutorial.htm

Edited by KnolanCross