ikpil / DotRecast

DotRecast - a port of Recast & Detour, Industry-standard navigation mesh toolset for .NET, C#, Unity3D, games, servers
zlib License
441 stars 61 forks source link

Updates to Demo #31

Closed adambennett55 closed 5 months ago

adambennett55 commented 5 months ago

Would it even be possible to update the demo to make it more of a tool, in the sense where we could click to select single polygons in our generated navmesh and delete them, and if even possible an option to add or paint in new polygons?

ikpil commented 5 months ago

Yes, it is possible to enhance the demo into a more useful tool. However, as I am not a full-time open-source developer, my current focus is on porting recastnavigation. While I agree with the suggestions for enhancing the tool, there is currently no specific plan for those requests due to the ongoing prioritization of tasks. Further improvements for additional features may be considered later on.

It seems like a similar functionality could be achieved using convex volumes. Thank you.

image

adambennett55 commented 5 months ago

I have played around with those, but cant really seem to get them to do anything, if i create them it still creates a navmesh through them and pathfinds through them?

ikpil commented 5 months ago

Could you show me how you tested it by any chance?

here's how it turned out for me

https://youtu.be/CPvc19gNUEk

or

https://github.com/ikpil/DotRecast/assets/313821/35625884-bc22-4230-9f4a-535c331821e2

adambennett55 commented 5 months ago

Ok i figured out what i was doing wrong and this works great for removing obstacles and such that got meshed over anyways, BUT, Is there a way to make the navmesh mesh over a convex volume, there are some instances where it will miss a small section that i need it to path through like in the image, and i cant get it to do it. Would love the ability to have an add remove polygon tool, hehe!! I tried off mesh links and they just dont seem to work.

Screenshot 2024-01-07 201535

ikpil commented 5 months ago

Generally, this issue can be addressed through the following steps.

First, when creating the navigation mesh, areas with doors and those without doors should be crafted as separate meshes. Afterward, a "convex volume" should be added to the areas with doors to build the navigation mesh.

During the game execution, you can load and control the navigation mesh, mesh without doors, mesh with doors, and other meshes as needed.

adambennett55 commented 5 months ago

in that particular map i dont have access to open and close the doors, its a prebaked mesh, so i was hoping to somehow make it allow movement between the 2 spots at the door with a off mesh link, but i digress its not a huge problem i can work around it, another question tho, is it somehow possible with convex volumes to make it mesh off the map with using a ground convex volume like in this picture? if so how is it done as its not working here.

adambennett55 commented 5 months ago

Screenshot 2024-01-10 205751

ikpil commented 5 months ago

Convex volumes set area type on the navmesh polygon, so if there is no navmesh polygon, they will not be set.

adambennett55 commented 5 months ago

Ok good to know thx, I will add the connections in blender then first, tyvm for your help