Reza and I working on our new project which is called”Project God”

This game uses Autonomous agents ultimately, We want to use the agent technology of this project in future productivity applications.

A basic capability of every agent in video game world is path finding .

A* is one of most famous algorithms for path finding. I read a helpful explantion on path finding in stackoverflow, so I thought it might be useful for my dear readers:

Actually A* does not use dimensions.

A* works with nodes and each nodes have paths to other nodes. 

In the case of a 2D grid every cell is a node and every boundary is an implicit path (left, right, up, down, and/or diagonals), the key here is that it is implicit.

This is a trick to reduce the memory footprint, but A* itself does not require a 2D or 3D grid. You can use A* with explicit paths/connections between the nodes such as a country road map.

In the case of a 3D grid, you apply the same method as a 2D grid but now you can move in the 3rd dimension as well.

But this is not how most 3D games use A* because the memory needed for a usable 3D grid becomes too large very quickly. Instead they use navmeshes.

Search the web for “navmesh”

Blue part is the navmesh:


A* works on those: each triangle is a node, each edge is a path. 

There isn’t an up-down-left-right, there are neighboring triangles through edges A-B-C