🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Implementation of pathfinding in 3D space. Made in C++.

Started by
2 comments, last by MaximSnd 1 year ago

I have completed work on the implementation of dynamic 3D pathfinding in a complex 3D space. This code is an evolution of a concept I developed for 2D space.

As I wrote in the comment to the video, this is a pure 3d navigation solution, no projections or 2d layers.

In navigation problems in 3D space, one of the obstacles is the space itself, namely the set of empty areas (cells in the case of a map). One of the applied options for solving this problem is to cover obstacles with a navigation mesh, and calculate routes in such meshes. My wayfinding solution can work both in this mode and grind navigation head-on.

Enjoy the video and I will be glad to questions and comments.

None

Advertisement

@MaximSnd I am impressed! One thing I noticed at ~6:57 is that the spheres all seem to take an optimal path and go through the tunnel to reach the cube (cool feat BTW). It might be cool if a certain percentage of the time, a sphere will take a non-optimal path, especially if other spheres are blocking the optimal path. It looks like the spheres could have reached the cube if they went around the room. I think I remember this type of behavour from Left 4 Dead.. Where I think I'm going to mow down the zombies when they try to pass through a choke-point, like the front door of a house, but a couple went around back and got me from behind.

Wow thanks for the comment. Hello Scott @scott8 .

It looks like it's my fault. These are the borders of the map, I needed to show it. Agents have no other way, only through the tunnel.

What about non-optimal routes. The solution allows certain use of non-optimal routes. This is especially noticeable on 2D maps of 10,000 agents. Look here please.

What else, if you take completely ineffective routes, then you need to add time to navigation as another factor in the calculation. I imagine how this can be done, there are several ways, and it will probably be beautiful.

Thanks again for your comment, I'll be happy to answer any more questions!

None

This topic is closed to new replies.

Advertisement