Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add benchmarks #16

Open
Elabajaba opened this issue Sep 18, 2023 · 1 comment
Open

Add benchmarks #16

Elabajaba opened this issue Sep 18, 2023 · 1 comment

Comments

@Elabajaba
Copy link
Contributor

It's hard to optimize performance without them.

Maybe add criterion as a dev dependency, and create benchmarks for both creating and updating a navmesh (needs benches for both adding and removing obstacles), as well as a few different pathing benchmarks (near, far, unreachable, same polygon, etc).

It might be interesting to use the same meshes as recast does, but looking at them they looked very small, meaning we can't get eg. a long path benchmark from them.

I also looked at the moving ai pathfinding competition maps (https://movingai.com/benchmarks/voxels.html), but the 3d ones looked too split up to be usable for this library?

@TheGrimsey
Copy link
Owner

Maybe add criterion as a dev dependency
I have create some criterion benchmarks, did not realise it was that simple to use....

and create benchmarks for both creating and updating a navmesh (needs benches for both adding and removing obstacles),
The nav-mesh is recreated from scratch with each update anyway so I don't know if that's worth benchmarking.

I don't know if you can make retaining parts of the nav-mesh work without a lot of memory overhead.

It might be interesting to use the same meshes as recast does, but looking at them they looked very small, meaning we can't get eg. a long path benchmark from them.

That could definitely be interesting. Would give a more real-world example than the arrangement of cubes currently present.

I also looked at the moving ai pathfinding competition maps (https://movingai.com/benchmarks/voxels.html), but the 3d ones looked too split up to be usable for this library?

Hmmm, haven't seen these before. Yeah, they might be a bit too advanced. Don't have a way to jump between separate nav-mesh islands 🤔

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants