Jump to content

Recommended Posts

Posted

Does anyone know how to use Detour to handle dynamic obstacles? I've been looking online in Mikko's blog however I did not get any information about it. I saw a video in this forum that was using spheres as dynamic objects and showing Detour performing path adjustments when the path is being blocked. The video I am referring to is here:

. Any and all help will, as always, be greatly appreciated.

Intel 2nd Generation i5 Quad Core Running at 3.30GHz. 8GB RAM, GeForce GTX 460 1024MB DDR5.

Posted

I'm trying to figure this out myself. His library is completely undocumented...there's just a demo with SDL, a GUI, and who knows what else built into it, so it's impossible to tell what the actual commands to use it are.

My job is to make tools you love, with the features you want, and performance you can't live without.

Posted

So where's the documentation?

That's what I was going to ask. I did see additional source code and header files that are not in the depreciated zip files available for download. I just don't know how to use them with detour and recast.

Intel 2nd Generation i5 Quad Core Running at 3.30GHz. 8GB RAM, GeForce GTX 460 1024MB DDR5.

Posted

Your programmer must be smarter than me, because I just see pages and pages of gibberish.

My job is to make tools you love, with the features you want, and performance you can't live without.

Posted

Don't get me wrong, it did take us 1 month to get it running (admittedly, it was very part-time hobbyism). I had read that blog post, and so did the Recast/Detour team, I think. The flexibility in the Recast parameters allows you to create high quality navigation meshes, once it's set up.

 

And computation time of navmeshes might make 10 times slower irrelevant, in the event that one hasn't played enough with the parameters to make a decent navmesh.

Posted

Recast uses a fixed radius, doesn't it? I mean, it can't dynamically handle characters with different radii, can it?

My job is to make tools you love, with the features you want, and performance you can't live without.

Posted

I think this is what we want the classes to be:

#include "../le3.h"

namespace le3
{
class NavMesh
{
public:
	float radius;
	float height;
	float climbheight;
	float maxslope;
	float cellsize;

	void AddVertex(const float& x, const float& y, const float&z);
	void AddPolygon(const int& count, const short* indices);
	bool Build();
	bool BuildTile(const int& tilex, const int& tilez);
	Path* FindPath(const Vec3& p0, const Vec3& p1)
};

class Path
{
public:
	std::vector<Vec3> points;
};
}

My job is to make tools you love, with the features you want, and performance you can't live without.

Posted

Detour (the pathfinding algorithms) can't handle any dynamic changes. Recast can only rebuild part of the navmesh for Detour to be updated. So radii or not, it's just not dynamic.

Posted

..my library deal with such problem (dynamic obstacle avoiding) on such way that each generated navigation grid cell extracted as a path node, updating itself with bounding space and soon as it is triggered looking for alternate route..quite simple and fast..

 

Posted

Yes, but those are all node or grid based, are they not?

 

Recast handles dynamic changes by splitting the mesh into tiles and recalculating only tiles that have changed. That might not work well if you have thousands of objects rolling around, but most games don't tend to do that anyways.

My job is to make tools you love, with the features you want, and performance you can't live without.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...